• Java 将Html转为PDF(二)


    前面介绍了如何通过插件的方式将Html文件转为PDF,该方法需要使用Spire.PDF for Java 3.6.6或者之后的新版本,可根据自己的系统选择不同插件来实现转换。本文提供另外一种转换方法,需要使用Spire.Doc for Java 3.9.4或者之后的新版本。

     

    关于Jar包下载及导入

    方法1下载jar包。解压,找到lib文件夹的Spire.Doc.jar文件,并在Java程序中导入jar文件

    方法2:在Maven程序中配置Pom.xml文件,如下(需要指定Maven仓库路径以及Spire.Doc的依赖):

    <repositories>
            <repository>
                <id>com.e-iceblue</id>
                <url>http://repo.e-iceblue.cn/repository/maven-public/</url>
            </repository>
    </repositories>
    <dependencies>
        <dependency>
            <groupId> e-iceblue </groupId>
            <artifactId>spire.doc</artifactId>
            <version>3.9.4</version>
        </dependency>
    </dependencies>

    完成配置后,导入jar。详细步骤可参考官方教程文档。

    HtmlPDF方法

    转换时可以将Html String或者Html file转为PDF,参见以下代码方法:

    1. 将Html String转为PDF

    创建Word文档,将Html String添加到Word段落,通过saveToFile()保存为PDF文档。

    import com.spire.doc.*;
    
    import java.io.BufferedReader;
    import java.io.FileReader;
    import java.io.IOException;
    
    public class HtmlToPDF1 {
        public static void main(String[] args) throws IOException{
            String inputHtml = "InputHtml.txt";
            //新建Document对象
            Document doc = new Document();
            //添加section
            Section sec = doc.addSection();
    
            String htmlText = readTextFromFile(inputHtml);
            //添加段落并写入HTML文本
            sec.addParagraph().appendHTML(htmlText);
    
            //将文档另存为PDF
            doc.saveToFile("HTMLstringToPDF.pdf", FileFormat.PDF);
            doc.dispose();
        }
        public static String readTextFromFile(String fileName) throws IOException {
            StringBuffer sb = new StringBuffer();
            BufferedReader br = new BufferedReader(new FileReader(fileName));
            String content;
            while ((content = br.readLine()) != null) {
                sb.append(content);
            }
            return sb.toString();
        }
    }

    2. 将Html file转为PDF

    加载Html文件,通过saveToFile()方法直接保存为PDF。

    import com.spire.doc.*;
    import com.spire.doc.documents.XHTMLValidationType;
    
    public class HtmlToPDF2 {
        public static void main(String[] args) {
            //加载HTML文档
            Document doc = new Document();
            doc.loadFromFile("sample.html", FileFormat.Html, XHTMLValidationType.None);
    
            //文档另存为PDF
            doc.saveToFile("HTMLToPDF.pdf",FileFormat.PDF);
            doc.dispose();
        }
    }
  • 相关阅读:
    most-wanted-letter
    non-unique-elements
    python组建之paramiko的简介和简单使用
    Android平台使用termux,随时随地写代码
    发现生活中数学的美,然后记录下来
    别再用Microsoft Office,改为WPS或者Latex
    office2016 vol 中文版本
    Office 2016 英文版(VOL版)下载
    选择好用的生产力工具
    使用windows(win7和win10),最好用chocolatey
  • 原文地址:https://www.cnblogs.com/Yesi/p/13792245.html
Copyright © 2020-2023  润新知