• Java 将PDF转为HTML时保存到流 E


    本文介绍如何通过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—

  • 相关阅读:
    24、面向对象(内置方法)
    23、面向对象(包装)
    22、面向对象(反射)
    21、面向对象(封装)
    20、面向对象(多态)
    19、面向对象(继承)
    18、面向对象(静态属性、类方法、静态方法)
    LeetCode 3. Longest Substring Without Repeating Characters
    LeetCode 2.Add Two Numbers
    LeetCode 1. Two Sum
  • 原文地址:https://www.cnblogs.com/Yesi/p/15842266.html
Copyright © 2020-2023  润新知