首页 > 编程语言 >pdf转换工具-java开发

pdf转换工具-java开发

时间:2023-11-29 10:48:53浏览次数:34  
标签:PDF java 示例 PdfDocument new pdf close 转换

  • 一:导入包 Spire.Pdf.jar  百度自己找对应的jar包,完后引入项目 

 二:实际应用

【示例1】PDF 转Word

PdfDocument pdf = new PdfDocument("D:\\资料\\001资料\\DolphinScheduler2.x学习\\笔记\\尚硅谷大数据技术之.pdf");
pdf.saveToFile("D:\\资料\\001资料\\DolphinScheduler2.x学习\\笔记\\尚硅谷大数据技术之.docx", FileFormat.DOCX);
pdf.close();

【示例2】PDF转图片  支持的图片格式包括Jpeg, Jpg, Png, Bmp, Tiff, Gif, EMF等。这里以保存为Png格式为例

PdfDocument pdf = new PdfDocument("test.pdf");
        BufferedImage image;
        for(int i = 0; i< pdf.getPages().getCount();i++){
            image = pdf.saveAsImage(i);
            File file = new File( String.format("D:\\资料\\001资料\\DolphinScheduler2.x学习\\笔记\\尚硅谷大数据技术之.png", i));
            ImageIO.write(image, "PNG", file);
        }
        pdf.close();

【示例3】PDF转Html

PdfDocument pdf = new PdfDocument("test.pdf");
pdf.saveToFile("ToHTML.html", FileFormat.HTML);
pdf.close();

【示例4】PDF转SVG

PdfDocument pdf = new PdfDocument("test.pdf");
pdf.saveToFile("ToSVG.svg", FileFormat.SVG);
pdf.close();

【示例5】PDF 转XPS

 PdfDocument pdf = new PdfDocument("test.pdf");
 pdf.saveToFile("ToXPS.xps", FileFormat.XPS);
pdf.close();

//PDF转PDF/A
PdfDocument pdf = new PdfDocument();
pdf.loadFromFile("test.pdf");
pdf.close();

转换为Pdf_A_1_B格式

 PdfNewDocument newDoc = new PdfNewDocument();
        newDoc.setConformance(PdfConformanceLevel.Pdf_A_1_B);
        PdfPageBase page;
        for ( int i=0;i< pdf.getPages().getCount();i++) {
            page = pdf.getPages().get(i);
            Dimension2D size = page.getSize();
            PdfPageBase p = newDoc.getPages().add(size, new PdfMargins(0));
            page.createTemplate().draw(p, 0, 0);
        }

        //保存结果文件
        newDoc.save("ToPDFA.pdf");
        newDoc.close();*/
参考其他大佬:https://www.yisu.com/zixun/274061.html

三:最终效果

 



标签:PDF,java,示例,PdfDocument,new,pdf,close,转换
From: https://www.cnblogs.com/ConfidentLiu/p/17863940.html

相关文章

  • java 打包后jmeter使用Invalid signature file digest for Manifest main attributes
    ideal编写代码后,打包了一个jar是连关联的第三方jar一起打的用到jmeter后置处理器中报错:InvalidsignaturefiledigestforManifestmainattributes解决方案1:(手动删除文件) 通过压缩软件查看程序生成的jar包,可以看到META文件下有.SF,.DSA结尾的文件,手动删除后,再查看该......
  • Java lettuce 连接Redis哨兵波动问题的排查
    环境信息说明:本文内容基于公司内部出现的问题,已经对机器环境信息做了脱敏处理。hostnameIPaddressroleA10.0.0.190哨兵节点B10.0.0.191哨兵节点C10.0.0.192master节点D10.0.0.193slave节点E10.0.0.194slave节点F10.0.0.197哨兵节点......
  • JAVA判断图片真实格式的方法
    判断图片真实格式的方法,文件格式不是看后缀名,而是看文件头的定义publicclassImgUtil{publicstaticStringimgType(InputStreaminputStream)throwsIOException{//读取文件前几位byte[]fileHeader=newbyte[4];intread=inputStr......
  • JavaScript 的基本规范
    在平常项目开发中,我们遵守一些这样的基本规范,比如说:(1)一个函数作用域中所有的变量声明应该尽量提到函数首部,用一个var声明,不允许出现两个连续的var声明,声明时  如果变量没有值,应该给该变量赋值对应类型的初始值,便于他人阅读代码时,能够一目了然的知道变量对应的类型值。(2)......
  • java-生成二维码/条形码
    前言:  需求:生成二维码/条形码//使用ZXing库<dependencies><dependency><groupId>com.google.zxing</groupId><artifactId>core</artifactId><version>3.4.1</version></dependency>&l......
  • 【专题】2023社群电商爆品营销白皮书报告PDF合集分享(附原数据表)
    原文链接:https://tecdat.cn/?p=34389原文出处:拓端数据部落公众号2023年是全球电商市场复苏的一年,也是充满机遇和激烈竞争的一年。对于出海电商品牌来说,在避免"内卷"的同时,寻找创新和可持续的经营策略和营销方法将变得至关重要。在新的出海环境下,由于其品效兼备的价值,"爆品"将展......
  • java 线上问题跟踪用到的工具
    java线上问题跟踪用到的工具pref可以跟踪jvm进程的方法调用频度分析一些问题gperftools这东西还需要编译安装比较麻烦,需要运维提前安装好arthans阿里的一个在线工具挺不错的jvm内置工具jstat-gcpidjmap-heappidlinux提供的pmap-xpidtop-Hppid查看这个p......
  • C:\Users\17482\Desktop\ERP——test1\SpringBoot-ERP-master\src\main\java
    这个错误表明在你的Java类文件UserImp.java中,找不到MyBatis的注解包org.apache.ibatis.annotations。这个包中包含了MyBatis的注解,比如@Select、@Insert等。首先,请确保你的项目正确引入了MyBatis的依赖。在你的pom.xml文件中应该包含类似以下的依赖配置:<dependency......
  • idea报错,java: 程序包org.apache.ibatis.annotations不存在
    这个错误表明在你的项目中,IDEA找不到MyBatis的注解包org.apache.ibatis.annotations。这个包通常包含了一些MyBatis的注解,比如@Select、@Insert等,用于在接口中定义SQL查询或操作。解决这个问题的方法有几个:1.检查MyBatis依赖:确保在你的Maven或Gradle项目中正确......
  • class lombok.javac.apt.LombokProcessor
    classlombok.javac.apt.LombokProcessor(inunnamedmodule@0x4587f0f9)cannotaccessclasscom.sun.tools.javac.processing.JavacProcessingEnvironment(inmodulejdk.compiler)becausemodulejdk.compilerdoesnotexportcom.sun.tools.javac.processingtounn......