SVG格式转PDF(java实现)
来源:互联网 发布:vm虚拟机破解版 mac 编辑:程序博客网 时间:2024/06/05 05:30
作为矢量图之一的SVG格式,在画图过程中尤为重要,通过修改xml格式内容就可以改变图的内容,尤其在工业画图的这些要求比较严格的使用环境,由于svg的容易易改性,决定它不适合用户流转查看,而且svg需要依赖一定的浏览器环境,而PDF格式的文件刚好满足至查看不修改内容的特点,所以就有了这篇svg转pdf格式。 这个例子是由java代码写的。
先给出项目的整体代码分布结构图:
其中Svg2Pdf.java代码如下:
package com.burns.svgconvertpdf;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import org.apache.batik.transcoder.Transcoder;import org.apache.batik.transcoder.TranscoderException;import org.apache.batik.transcoder.TranscoderInput;import org.apache.batik.transcoder.TranscoderOutput;import org.apache.fop.svg.PDFTranscoder;public class Svg2Pdf { public static void main(String[] args) { try { Transcoder transcoder = new PDFTranscoder(); TranscoderInput transcoderInput = new TranscoderInput( new FileInputStream(new File("test.svg"))); TranscoderOutput transcoderOutput = new TranscoderOutput( new FileOutputStream(new File("test.pdf"))); transcoder.transcode(transcoderInput, transcoderOutput); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (TranscoderException e) { // TODO Auto-generated catch block e.printStackTrace(); } }}
主要使用到的包是batik.jar和fop.jar,剩下的是这两个jar包的依赖包
,svg中的文件内容如下:
这里你会注意到svg格式文件在浏览器中100%查看的时候,是需要上下滚动才能看到完整的内容,这个我觉得或许也是svg的一个弊端:当前窗口显示不完整。
下面是pdf的转换图:
这个以打开就能完全看到内容,不需要滚动,pdf会自动调节67.5%。这个数字在浏览器中设置为67左右就能看到完整的了,浏览器不支持小数点的!!!
好了,以上就是一个svg转pdf的小例子,
如果想获取代码,可以戳这里:http://pan.baidu.com/s/1dFDe1qh
或这儿:http://download.csdn.net/detail/zp357252539/9546088
0 0
- SVG格式转PDF(java实现)
- 利用Apache Batik实现 SVG转PDF/PNG/JPG
- java word 转pdf格式
- 文档转pdf格式,实现在线预览
- IDEA-->JAVA 一般文件格式转PDF格式
- java实现pdf转图片pdf
- SVG格式
- word转pdf(java实现)
- Java实现Html转PDF
- Java实现Html转PDF
- Java实现Html转PDF
- Java实现Html转PDF
- java实现word转pdf
- java 实现word转pdf
- PDF转图片Java实现
- Java实现Html转PDF
- XPdf实现pdf转txt格式方法实现
- word格式转pdf格式
- okhttp
- Tomcat探秘(4):tomcat启动过程详述
- VB.net学习笔记(二十七)线程同步上
- sevice层和dao层的简单理解
- java入门、java学习、java教程:Java程序员需要注意的五大Docker误区
- SVG格式转PDF(java实现)
- Android OKHttp
- 关于c++中的const
- 最近发现一个学五十音图的公众号,给大家推荐一下
- python的GUI编程--wxpython学习(三)两个布局
- UVA1218 Perfect Service
- Swift - 使用NSUserDefaults来进行本地数据存储
- 底包和基带是什么?刷机前有必要先刷它们吗?
- java学习笔记之char与byte的区别