整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

Java 将PDF转换为PNG图片、HTML、SVG

Java 将PDF转换为PNG图片、HTML、SVG、XPS及Word文件格式

文将介绍如何使用Java程序来将PDF文档转换为PNG图片、HTML、Word、SVG及XPS格式。

使用工具及环境创建

  • 工具:Free Spire.PDF for Java(免费版)
  • 环境创建:

方法1:首先,通过E-iceblue中文官网下载获取Free Spire.PDF for Java;其次,解压后找到lib文件夹下的Spire.pdf.jar;最后,将jar文件导入Java IEDA中。

方法2:通过maven仓库安装产品及添加相关依赖包。

代码演示

示例1 将PDF 转换为PNG图片格式

import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import com.spire.pdf.PdfDocument;
import javax.imageio.ImageIO;

public class ToImage {
    public static void main(String[] args) throws IOException {
        //加载示例PDF文件
        PdfDocument doc=new PdfDocument();
        doc.loadFromFile("C:\\Users\\Test1\\Desktop\\Sample.pdf");

        //保存PDF的每一页到图片
        BufferedImage image;
        for (int i=0; i < doc.getPages().getCount(); i++) {
            image=doc.saveAsImage(i);
            File file=new File( String.format("output/ToImage-img-%d.png", i));
            ImageIO.write(image, "PNG", file);
        }

        doc.close();
    }
}

转换效果:

示例2 将 PDF 转换为 HTML、SVG、XPS、Word 格式

import com.spire.pdf.FileFormat;
import com.spire.pdf.PdfDocument;

public class ToWord {
    public static void main(String[] args) {
				//加载示例PDF文件
        PdfDocument pdf=new PdfDocument();
        pdf.loadFromFile("C:\\Users\\Test1\\Desktop\\Sample.pdf");
				
      	//保存为HTML格式
        pdf.saveToFile("output/ToHTML.html", FileFormat.HTML);
        //保存为Word格式
        pdf.saveToFile("output/ToWord.docx", FileFormat.DOCX);
        //保存为SVG格式
        pdf.saveToFile("output/ToSVG.svg", FileFormat.SVG);
        //保存为XPS格式
        pdf.saveToFile("output/ToXPS.xps", FileFormat.XPS);
    }
}

转换效果:

(本文完)

pire.Doc for Java 10.7.10 已发布。此版本增强了 Word 和 HTML 到 PDF 、HTML到图片、Word 到 HTML 的转换。同时此版本还修复了一些已知问题,如:加载和保存有密码保护的文档时密码丢失及设置 docPicture.setWidthScale 和 docPicture.setHeightScale 属性不生效等问题。详情请阅读以下内容。

问题修复:

  • 修复了转换Word到PDF,程序挂起的问题。
  • 修复了转换HTML到PDF,程序抛异常 "IndexOutOfBoundException"。
  • 修复了加载保存密码保护的文档,密码丢失的问题。
  • 修复了转换Word到HTML,项目编号不正确的问题。
  • 修复了转换Word到PDF,分页不正确的问题。
  • 修复了转换Word到PDF,文本换行不正确的问题。
  • 修复了转换Word到PDF,内容重叠的问题。
  • 修复了转换Word到PDF,横线位置不正确的问题。
  • 修复了转换Word到PDF,数字位置不正确的问题。
  • 修复了转换Word到PDF,内容格式不正确的问题。
  • 修复了转换Word到PDF,表格文本未居中的问题。
  • 修复了设置docPicture.setWidthScale和 docPicture.setHeightScale属性不生效的问题。
  • 修复了转换HTML到PDF,内容显示不全且表格效果不好的问题。
  • 修复了转换HTML到图片,表格格式不正确的问题。
  • 修复了转换Word到PDF,小数点被遮盖的问题。
  • 修复了转换Word到PDF,内容空白的问题。
  • 修复了转换Word到PDF,日期重复的问题。
  • 修复了转换Word到PDF,表格边框丢失的问题。
  • 修复了添加LatexMathCode,结果空白的问题。
  • 修复了添加LatexMathCode,结果不正确的问题。
  • 修复了转换Word到PDF,单元格文本顺序不正确的问题。
  • 修复了转换Word到PDF,单元格文本换行不正确的问题。
  • 修复了转换Word到PDF,表格内容混乱的问题。
  • 修复了删除表格单元格,程序抛异常 "IndexOutOfBoundException"。
  • 修复了转换Word到PDF,文本换行不正确的问题。
  • 修复了插入HTML到Word,程序抛 "Unknow char: \" 的问题。
  • 修复了新引擎转换Word到PDF,文本乱码的问题。
  • 修复了加载文档,程序抛异常Unknown char: '。
  • 修复了转换Word到PDF,域数据不正确的问题。
  • 修复了转换Word到PDF,小数点丢失的问题。

获取Spire.Doc for Java 10.7.10请点击:

Spire.Doc for JAVA | 下载

ava实现在线预览功能是一个大家在工作中也许会遇到的需求,如果公司有钱,直接使用付费的第三方软件或者云在线预览服务就可以了,例如永中office、office web 365(http://www.officeweb365.com/)他们都有云在线预览服务,就是要钱0.0

如果想要免费的,可以用openoffice,还需要借助其他的工具(例如swfTools、FlexPaper等)才行,可参考这篇文章http://blog.csdn.net/z69183787/article/details/17468039,写的挺细的,实现原理就是:

1.通过第三方工具openoffice,将word、excel、ppt、txt等文件转换为pdf文件;

2.通过swfTools将pdf文件转换成swf格式的文件;

3.通过FlexPaper文档组件在页面上进行展示。

当然如果装了Adobe Reader XI,那把pdf直接拖到浏览器页面就可以直接打开预览,这样就不需要步骤2、3了,前提就是客户装了Adobe Reader XI这个pdf阅读器。

我这里介绍通过poi实现word、excel、ppt转html,这样就可以放在页面上了。

###word转html

###excel转html

###ppt转html

其实只是ppt转图片,有了图片后放到页面上去,点击下一页就一张张显示就可以了。这里只介绍ppt转图片的过程。