将文档从一种格式转换为另一种格式是Spire.PDF的主要功能之一。这种转换只不过是加载和保存操作的组合。因此,使用Spire.PDF可以将文档从任何受支持的加载格式转换为任何受支持的保存格式。

本文整理了包括在Java中以下文件格式的转换指南,希望对您有所帮助:

  • PDF转换为图像以及图像转换为PDF
  • 将PDF转换为PDF / A
  • 将PDF转换Word
  • 将PDF转换为HTML以及HTML转换为PDF
  • 将PDF转换为SVG
  • 将PDF转换为XPS并将XPS转换为PDF
  • 将PDF转换为Excel

>>你可以下载Spire.PDF for Java测试体验。

(篇幅较长,建议收藏阅读)

PDF转换为图像以及图像转换为PDF

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 {//load the sample PDFPdfDocument doc = new PdfDocument();doc.loadFromFile("Sample.pdf");//save every PDF to .png imageBufferedImage image;for (int i = 0; i < doc.getPages().getCount(); i++) { image = doc.saveAsImage(i); File file = new File( String.format("ToImage-img-%d.png", i)); ImageIO.write(image, "PNG", file); } doc.close(); } }
import com.spire.pdf.PdfDocument;
import com.spire.pdf.PdfPageBase;
import com.spire.pdf.graphics.PdfImage;public class ImageToPDF {public static void main(String[] args){//Create a PdfDocument instancePdfDocument pdf = new PdfDocument();//Add a pagePdfPageBase page = pdf.getPages().add();//Load the imagePdfImage image = PdfImage.fromFile("Hydrangeas.jpg");//Draw the image to the specific rectangular area of the page double widthFitRate = image.getPhysicalDimension().getWidth() / page.getCanvas().getClientSize().getWidth();double heightFitRate = image.getPhysicalDimension().getHeight() / page.getCanvas().getClientSize().getHeight();double fitRate = Math.max(widthFitRate, heightFitRate);double fitWidth = image.getPhysicalDimension().getWidth() / fitRate;double fitHeight = image.getPhysicalDimension().getHeight() / fitRate;page.getCanvas().drawImage(image, new Rectangle2D.Double(0, 0, fitWidth, fitHeight));//Save the resultant documentpdf.saveToFile("ConvertImageToPDF.pdf");}
}

将PDF转换为PDF / A

import com.spire.pdf.PdfConformanceLevel;
import com.spire.pdf.PdfDocument;
import com.spire.pdf.PdfNewDocument;
import com.spire.pdf.PdfPageBase;
import com.spire.pdf.graphics.PdfMargins;import java.awt.geom.Dimension2D;public class PDFToPDFA {public static void main(String[] args){//Load pdf filePdfDocument document = new PdfDocument();document.loadFromFile("Sales Report.pdf");//Convert to Pdf_A_1_BPdfNewDocument newDoc = new PdfNewDocument();newDoc.setConformance(PdfConformanceLevel.Pdf_A_1_B);for (PdfPageBase page : (Iterable) document.getPages()) {Dimension2D size = page.getSize();PdfPageBase p = newDoc.getPages().add(size, new PdfMargins(0));page.createTemplate().draw(p, 0, 0);}//Save the filenewDoc.save("Output.pdf");newDoc.close();}
}

将PDF转换Word

import com.spire.pdf.*;public class PdfToDoc {public static void main(String[] args) {//create a PdfDocument objectPdfDocument doc = new PdfDocument();//load a sample PDF filedoc.loadFromFile("C:\\Users\\Administrator\\Desktop\\Introduction of Spire.PDF for Java.pdf");//save as .doc filedoc.saveToFile("output/ToDoc.doc",FileFormat.DOC);//save as. docx filedoc.saveToFile("output/ToDocx.docx",FileFormat.DOCX);doc.close();}
}

将PDF转换为HTML以及HTML转换为PDF

import com.spire.pdf.*;public class PDFConversion {public static void main(String[] args) {//Load the PDF filePdfDocument pdf = new PdfDocument();pdf.loadFromFile("New Zealand.pdf");//Save to HTML formatpdf.saveToFile("ToHTML.html", FileFormat.HTML);}
}
import com.spire.pdf.graphics.PdfMargins;
import com.spire.pdf.htmlconverter.qt.HtmlConverter;
import com.spire.pdf.htmlconverter.qt.Size;public class HtmltoPDF {public static void main(String[] args) {//define the HTML link and result PDF String url = "https://www.e-iceblue.com/";String fileName = "Result.pdf";//Set the plugin pathString pluginPath = "D:/Qt/plugins_32";HtmlConverter.setPluginPath(pluginPath);//convert HTML to PDF and set the size of the result PDF pageHtmlConverter.convert(url, fileName, true, 1000000, new Size(600f, 900f), new PdfMargins(0));}
}

将PDF转换为HTML以及HTML转换为PDF

import com.spire.pdf.*;public class PDFConversion {public static void main(String[] args) {//Load the PDF filePdfDocument pdf = new PdfDocument();pdf.loadFromFile("Input.pdf");//Save to SVG imagepdf.saveToFile("ToSVG.svg", FileFormat.SVG);pdf.close();}
}

将PDF转换为XPS并将XPS转换为PDF

import com.spire.pdf.*;public class PDFtoXPS {public static void main(String[] args) {//Load the PDF filePdfDocument pdf = new PdfDocument();pdf.loadFromFile("Sample.pdf");//Save to XPS pdf.saveToFile("ToXPS.xps", FileFormat.XPS);}
}
import com.spire.pdf.*;public class PDFtoXPS {public static void main(String[] args) {//Load XPS PdfDocument pdf = new PdfDocument();pdf.loadFromXPS("ToXPS.xps");//Save to PDFpdf.saveToFile("toPDF.pdf", FileFormat.PDF);}
}

将PDF转换为Excel

import com.spire.pdf.FileFormat;
import com.spire.pdf.PdfDocument;public class ToXLS {public static void main(String[] args) {//Create a PdfDocument objectPdfDocument pdf = new PdfDocument();//Load a sample PDF filepdf.loadFromFile("C:\\Users\\Test1\\Desktop\\Sample.pdf");//Save to Excelpdf.saveToFile("output/ToXLS.xlsx", FileFormat.XLSX);}
}

无需依赖Adobe Acrobat,在Java中进行PDF格式转换全新攻略相关推荐

  1. java中sql 语句格式转换_Java字符串转Sql语句In格式工具方法

    /** * 工具-字符串-转换Sql查询IN中使用的格式 * 效果:a,b==>'a','b' * @param str * @return */ public String strToDbin ...

  2. java中的日期格式转换

    import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; imp ...

  3. java 合并pdf,如何在Java中合并PDF

    如何在Java中合并PDF 为小型企业和大型企业,保持 您的 重要 文件, 组织将提高您的工作流程,并成倍增长你的组织的工作效率. PDF文档由于其接受的输入格式的类型的安全性和灵活性,通常是共享大量 ...

  4. Java中的dozer对象转换

    Java中的dozer对象转换 1.dozer介绍 Dozer是Java Bean到Java Bean映射器,它以递归方式将数据从一个对象复制到另一个对象. dozer是用来对两个对象之间属性转换的工 ...

  5. java 实体属性个数_?Java中比较实用实体转换工具介绍

    ​Java中比较实用实体转换工具介绍 文中源码地址 大家一般编码过程中,经常会遇到DO对象转化为DTO对象,对象和对象之间转换一般需要用到转换工具,毕竟使用getter/setter太过麻烦 DO:D ...

  6. java中各种时间格式的转化

    http://www.chinaitpower.com/A/2005-01-14/104881.html 使用java.util.Calendar返回间隔天数         static int g ...

  7. java里的进制转换函数_基于Java中进制的转换函数详解

    十进制转成十六进制: Integer.toHexString(int i) 十进制转成八进制 Integer.toOctalString(int i) 十进制转成二进制 Integer.toBinar ...

  8. 在java中如何把字符串转换成时间格式?

    在java中如何把字符串转换成时间格式? 检举 | 2007-11-28 17:26 提问者:baixiao429 | 悬赏分:20 | 浏览次数:6645次 有这样一个字符串:"20070 ...

  9. java中生成pdf,插入图片,页眉、页脚、表格

    全栈工程师开发手册 (作者:栾鹏) java教程全解 java中生成pdf,插入图片,页眉.页脚.表格 import com.lowagie.text.*; import com.lowagie.te ...

  10. 使用Adobe Acrobat DC完成图像转PDF,PDF拆分,合并,调整尺寸,调整大小

    Use Adobe Acrobat DC to transform Image files to PDF, and split, combine, reshape PDF page, compress ...

最新文章

  1. SQL Server 2008 下载地址(微软官方网站)
  2. 一个例子来使用sklearn中的TfidfVectorizer
  3. jbpm 6 vs activities 5评估(持续更新、亲测实际项目评估)
  4. Diango REST framework 视图继承图
  5. Android Studio系列教程三:快捷键
  6. 变压器符号_3D动画解析油浸式和干式变压器,看完让你秒懂
  7. android的热点分配ip_Android 得到连接热点的ip的方法
  8. hdfs中与file数组类似的数组_如何在 JavaScript 中克隆数组
  9. 基于jQuery焦点图片新闻代码(JS+CSS)
  10. android 应用创建桌面快捷方式
  11. 双11背后的黑科技:大数据实时计算如何为你量身定制?
  12. uniapp app中导出手机号码到通讯录
  13. 计算机电脑怎么开热点,电脑怎么设置wifi热点共享
  14. halcon二维码识别
  15. Xcel Energy与D.E.Shaw签署100MW光伏电站购电协议
  16. ESP-iSYS数据库(实时数据库),API使用
  17. vue 重写element input限制字数
  18. vue部门结构图_基于 Vue 实现动态组织结构图
  19. IT桔子分布式项目2
  20. IntelliJ IDEA 常见文件类型的图标介绍

热门文章

  1. 第二十九节 MT-iBeacon基站关于LightBlue软件的使用
  2. php 中文转拼音(包括部分生僻字)
  3. 路由器手机测试网速的软件,4个实用的无线路由器WiFi检测工具,让你网速又快又稳定...
  4. java ioutils_关于Java:无法解析符号“ IOUtils”
  5. 【强化学习】 Nature DQN算法与莫烦代码重现(tensorflow)
  6. android mmkv使用_[Android]高性能MMKV数据交互分析-MMKV初始化
  7. java iterator遍历map_使用Iterator输出map,遍历map集合
  8. 用海康威视摄像头做图像处理问题
  9. Vue 仿网易云音乐 WebApp
  10. 一键获取阿里巴巴主图视频细节图评论图的步骤