Java 將PDF轉為HTML時儲存到流

iceblue發表於2022-01-25

本文介紹如何通過Java後端程式程式碼將PDF檔案轉為HTML,並將轉換後的HTML檔案儲存到流。在實現轉換時,可設定相關轉換屬性,如:是否嵌入SVG、是否嵌入圖片等。下面是實現轉換的方法和步驟:

1. 匯入jar

本次轉換的方法通過匯入Free Spire.PDF for Java中的Spire.Pdf.jar免費jar來實現。可按照如下兩種方法中的任意一種匯入jar:

  方法1:從Maven倉庫中匯入。在pom.xml中配置如下內容:

<repositories>
        <repository>
            <id>com.e-iceblue</id>
            <url>https://repo.e-iceblue.cn/repository/maven-public/</url>
        </repository>
    </repositories>
<dependencies>
    <dependency>
        <groupId>e-iceblue</groupId>
        <artifactId>spire.pdf.free</artifactId>
        <version>4.4.1</version>
    </dependency>
</dependencies>

方法2:下載 jar 包到本地,解壓,找到lib資料夾下的Spire.Pdf.jar檔案。然後執行如下圖步驟完成匯入:

 

 

 

 

 

 

2. Java程式碼

將PDF轉換為HTML時,主要通過以下步驟中的類及方法實現:

  • 例項化PdfDocument類的物件,並通過PdfDocument.loadFromFile(String filename)方法載入PDF文件
  • PdfDocument. getConvertOptions().setPdfToHtmlOptions(boolean useEmbeddeSvg, boolean useEmbeddeImg)方法設定轉換為HTML格式時的相關轉換屬性。
  • PdfDocument.saveToStream(OutputStream stream, FileFormate format)方法轉換成HTML時儲存到流。

Java

import com.spire.pdf.*;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.OutputStream;

public class SaveToStream {
    public static void main(String[] args) throws FileNotFoundException {
        //載入PDF文件
        PdfDocument pdf = new PdfDocument();
        pdf.loadFromFile("咖啡豆.pdf");

        //設定useEmbeddedSvg和 useEmbeddedImg布林值為true
        pdf.getConvertOptions().setPdfToHtmlOptions(true,true);

        //儲存到流
        File outFile = new File("toHTML.html");
        OutputStream outputStream = new FileOutputStream(outFile);
        pdf.saveToStream(outputStream, FileFormat.HTML);
        pdf.close();
    }
}

3. 執行程式碼後,生成html檔案。

 

 

—End—

相關文章