将文档从一种格式转换为另一种格式是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 PDF

PdfDocument doc = new PdfDocument();

doc.loadFromFile("Sample.pdf");

//save every PDF to .png image

BufferedImage 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 instance

PdfDocument pdf = new PdfDocument();

//Add a page

PdfPageBase page = pdf.getPages().add();

//Load the image

PdfImage 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 document

pdf.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 file

PdfDocument document = new PdfDocument();

document.loadFromFile("Sales Report.pdf");

//Convert to Pdf_A_1_B

PdfNewDocument 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 file

newDoc.save("Output.pdf");

newDoc.close();

}

}

将PDF转换Word

import com.spire.pdf.*;

public class PdfToDoc {

public static void main(String[] args) {

//create a PdfDocument object

PdfDocument doc = new PdfDocument();

//load a sample PDF file

doc.loadFromFile("C:\\Users\\Administrator\\Desktop\\Introduction of Spire.PDF for Java.pdf");

//save as .doc file

doc.saveToFile("output/ToDoc.doc",FileFormat.DOC);

//save as. docx file

doc.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 file

PdfDocument pdf = new PdfDocument();

pdf.loadFromFile("New Zealand.pdf");

//Save to HTML format

pdf.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 path

String pluginPath = "D:/Qt/plugins_32";

HtmlConverter.setPluginPath(pluginPath);

//convert HTML to PDF and set the size of the result PDF page

HtmlConverter.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 file

PdfDocument pdf = new PdfDocument();

pdf.loadFromFile("Input.pdf");

//Save to SVG image

pdf.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 file

PdfDocument 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 PDF

pdf.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 object

PdfDocument pdf = new PdfDocument();

//Load a sample PDF file

pdf.loadFromFile("C:\\Users\\Test1\\Desktop\\Sample.pdf");

//Save to Excel

pdf.saveToFile("output/ToXLS.xlsx", FileFormat.XLSX);

}

}

java pdf版本转换_无需依赖第三方软件,在Java中进行PDF格式转换全新攻略相关推荐

  1. Java编程语言学习:Java语言编程的基础知识之Java的变量与数据类型、符号、运算符、数组Array总结之详细攻略

    Java编程语言学习:Java语言编程的基础知识之Java的变量与数据类型.符号.运算符.数组Array总结之详细攻略 目录 Java语言编程的基础知识之Java的变量与数据类型.符号.运算符.数组总 ...

  2. java 面试 概率论_编程培训-115个Java面试题和答案B.pdf

    编程培训-115个Java面试题和答案B.pdf "玩转"Java系列 1 题目115个Java面试题和答案终极(下) 第一篇讨论了面向对象编程和它的特点,关于Java和它的功能的 ...

  3. java实现浏览器ui中的收藏夹_谷歌改进Google Chrome浏览器中的PDF浏览器 带来全新UI...

    最近,谷歌一直在不断地改进在Chrome浏览器的PDF浏览器.例如,它开发了一个选项,以查看PDF的两页视图,并让你保存PDF表格.但这并不足够,由于目前的用户界面信息贫乏容易引发误解和困扰,谷歌正在 ...

  4. java怎么运行_不要再问我Java程序是怎么执行的了!

    什么是Java虚拟机? 要弄明白Java程序的执行过程首先要了解一下Java虚拟机. 虚拟机是一种抽象化的计算机,通过在实际的计算机上仿真模拟各种计算机功能来实现的.Java虚拟机有自己完善的硬体架构 ...

  5. flex+java项目创建_创建Flex 4和Java Web应用程序

    当前的Web技术对它们的需求不断增长. 他们必须能够管理用户帐户,上载内容和流视频. 这种需求要求RIA开发人员寻求简化开发工作流程的技术,同时提供常见的功能. 开发人员面临的挑战是选择正确的技术来提 ...

  6. java lock 效率_工作常用4种Java线程锁的特点,性能比较、使用场景

    多线程的缘由 在出现了进程之后,操作系统的性能得到了大大的提升.虽然进程的出现解决了操作系统的并发问题,但是人们仍然不满足,人们逐渐对实时性有了要求. 使用多线程的理由之一是和进程相比,它是一种非常花 ...

  7. java是纯_让你真正了解Java(纯干货)

    "你学习一门技术的最佳时机是三年前,其次是现在."这句话对于哪一种行业都很适用,如果你已经学习过Java,那么恭喜你你很有先见之明,如果你并不了解Java,这篇文章带你快速掌握Ja ...

  8. java arraylist排序_一文读懂Java集合框架

    欢迎关注微信公众号:深入浅出Java源码 概念 Java集合框架为程序员提供了预先包装的数据结构和算法来操纵他们.集合框架被设计成要满足以下几个目标. 该框架必须是高性能的.基本集合(动态数组,链表, ...

  9. java fields是_一个快速生成R2.java中fields的插件

    一个快速生成R2.java中fields的插件 项目地址:github.com/JeasonWong/- 介绍 在子 module 中使用 ButterKnife 时,如果想使用 ButterKnif ...

  10. java derby数据库_使用Apache Derby进行Java数据库开发,第1部分

    java derby数据库 JDBC简介 以前,本系列文章通过使用ij工具连接Apache Derby数据库并与之交互来演示了许多数据库概念. 尽管当时可能还不太明显,但是您使用的Java应用程序使用 ...

最新文章

  1. bootstrap 新闻列表_kuapingUI 2.2 版本发布,跨屏 UI-bootstrap 大组件 UI 框架
  2. 东方数智发布新品AIDOL™,打造人工智能偶像全息平台
  3. jquery中的each各种神奇遍历用法
  4. 第五章:条件、循环以及其他语句(上)
  5. php 错误关闭_五种方法教你如何关闭php错误回显信息
  6. 一文讲透 “进程、线程、协程”
  7. 计划策略-20-订货型生产
  8. ZOJ4100 浙江省赛16th Problem A
  9. ConcurrentDictionary的ToDictionary
  10. 游戏ai 行为树_游戏AI –行为树简介
  11. curl抓取页面是乱码 php_php解决curl编码问题-curl乱码-curl在post表单时乱码
  12. Ubuntu 12.04下jdk的安装与配置
  13. java跳跳球代码,README.md
  14. linux的基本的命令行操作
  15. [洛谷P3613]睡觉困难综合征
  16. win10修改dns服务器命令,win10怎么修改DNS服务器?win10修改DNS服务器的方法
  17. ele表单验证的数字的坑
  18. 利用Python画出《人民日报》各国疫情图——南丁格尔玫瑰图
  19. No version of NDK matched the requested version xxx 问题解决
  20. Java - Certificate has been revoked

热门文章

  1. 渠道生意宝android版,生意宝app安卓版
  2. hackerrank测试题·
  3. CentOS故障排除详解(2): 进程相关
  4. 使用PG处理地图数据偏移问题
  5. vue+element pagination分页的二次封装,带首页末页功能
  6. 微信小程序demo汇总
  7. MySql触发器以及实例
  8. 服务器数据收发测试软件,sokit TCP/UDP 数据包收发测试(调试)工具(Win32)
  9. 最全的PHP后台管理系统源码
  10. 计算机网络第七版课后习题答案(第二章)(20210628)