java pdf转svg_Java 将PDF 转为Word、图片、SVG、XPS、Html、PDF/A

本文将介绍通过Java编程来实现PDF文档转换的方法。包括:

1. PDF转为Word

2. PDF转为图片

3. PDF转为Html

4. PDF转为SVG

4.1 将PDF每一页转为单个的SVG

4.2 将一个包含多页的PDF文档转为一个SVG

5. PDF转为XPS

6. PDF转为PDF/A

使用工具:Free Spire.PDF for Java(免费版)

Jar文件获取及导入:

方法1:通过官网

方法2:可通过maven仓库安装导入。参考

Java代码示例

【示例1】PDF转Word

PdfDocument pdf = new PdfDocument("test.pdf");

pdf.saveToFile("ToWord.docx",FileFormat.DOCX);

【示例2】PDF转图片

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

import com.spire.pdf.*;importjavax.imageio.ImageIO;importjava.awt.image.BufferedImage;importjava.io.File;importjava.io.IOException;public classPDFtoimage {public static void main(String[] args) throwsIOException {

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("ToImage-img-%d.png", i));

ImageIO.write(image,"PNG", file);

}

pdf.close();

}

}

【示例3】PDF转Html

PdfDocument pdf = new PdfDocument("test.pdf");

pdf.saveToFile("ToHTML.html", FileFormat.HTML);

【示例4】PDF转SVG

1.转为单个svg

PdfDocument pdf = new PdfDocument("test.pdf");

pdf.saveToFile("ToSVG.svg", FileFormat.SVG);

2.多页pdf转为一个svg

PdfDocument pdf = new PdfDocument("sampe.pdf");

pdf.getConvertOptions().setOutputToOneSvg(true);

pdf.saveToFile("ToOneSvg.svg",FileFormat.SVG);

【示例5】PDF转XPS

PdfDocument pdf = new PdfDocument("test.pdf");

pdf.saveToFile("ToXPS.xps", FileFormat.XPS);

【示例6】PDF转PDF/A

import com.spire.pdf.*;importcom.spire.pdf.graphics.PdfMargins;importjava.awt.geom.Dimension2D;public classPDFtoPDFA {public static voidmain(String[]args){//加载测试文档

PdfDocument pdf = newPdfDocument();

pdf.loadFromFile("test.pdf");//转换为Pdf_A_1_B格式

PdfNewDocument newDoc = newPdfNewDocument();

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();

}

}

(本文完)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值