虽然PDF文件适合用于打印和发布,但不适合所有类型的文档。例如,包含复杂图表和图形的文档可能无法在PDF中呈现得很好。但是HTML文件可以在任何可运行浏览器的计算机上进行阅读并显示。并且HTML还具有占用服务器资源较小,便于搜索引擎收录的特点。那么今天这篇文章就将展示如何通过Java应用程序将PDF文档转为HTML格式。下面是我整理的具体步骤及方法,并附上Java代码供大家参考。
代码编译环境:
IntelliJ IDEA 2019(jdk 1.8.0)
PDF Jar包:Free Spire.PDF for Java 5.1.0
引入jar包
导入方法1:
手动引入。将Free Spire.PDF for Java下载到本地,解压,找到lib文件夹下的Spire.PDF.jar文件。在IDEA中打开如下界面,将本地路径中的jar文件引入Java程序:
导入方法2:如果您想通过 Maven安装,则可以在 pom.xml 文件中添加以下代码导入 JAR 文件。
<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>5.1.0</version> </dependency> </dependencies>
我们可以使用 PdfDocument.saveToFile(String filename, FileFormat.HTML) 方法,可以直接将PDF文档转换为HTML文件。具体步骤如下。
Java
import com.spire.pdf.*; public class convertPDFToHTML { public static void main(String[] args) { //创建PdfDocument的对象 PdfDocument pdf = new PdfDocument(); //加载PDF文件 pdf.loadFromFile("郁金香.pdf"); //将PDF文件保存为HTML文件 pdf.saveToFile("PDFToHTML.html",FileFormat.HTML); pdf.close(); } }
将PDF文档转换为嵌入SVG的HTML文件
PdfDocument.getConvertOptions().setPdfToHtmlOptions(true) 方法,可以在转换时嵌入SVG。将PDF文件转换为嵌入SVG的HTML文件的详细步骤如下。
Java
import com.spire.pdf.*; public class convertPDFToHTMLEmbeddingSVG { public static void main(String[] args) { //创建PdfDocument的对象 PdfDocument doc = new PdfDocument(); //加载PDF文件 doc.loadFromFile("郁金香.pdf"); //设置嵌入SVG doc.getConvertOptions().setPdfToHtmlOptions(true); //将PDF文件另存为HTML文件 doc.saveToFile("PDFToHTMLEmbeddingSVG.html", FileFormat.HTML); doc.close(); } }
Spire.PDF for Java还支持将PDF文档转换为HTML流。具体步骤如下。
Java
import com.spire.pdf.*; import java.io.*; public class convertPDFToHTMLStream { public static void main(String[] args) throws FileNotFoundException { //创建PdfDocument的对象 PdfDocument pdf = new PdfDocument(); //加载PDF文件 pdf.loadFromFile("郁金香.pdf"); //将PDF文件另存为HTML流 File outFile = new File("PDFToHTMLStream.html"); OutputStream outputStream = new FileOutputStream(outFile); pdf.saveToStream(outputStream, FileFormat.HTML); pdf.close(); } }
—本文完—