前提,目前java处理pdf 转换图片,能达到高清的很少。所有的java pdf工具我都试过了
,或多或少都有一些问题,达不到理想的效果。
我试过pdfbox、PDFRenderer、xpdf、jpedal等等pdf工具,不是中文乱码、字体不识别、
格式混乱、就是分辨率过低,毕竟都是开源的工具。其中有一个收费的纯java的pdf工具转换效
果非常理想,就是太贵了。这里附上这个收费的地址,有兴趣的可以去看看,反正很贵就是了,
最后就在网上漫无目的搜索,就发现了一个解决方案,是C#解决pdf转换图片的案例。很
里面全是C#的pdf转换图片的案例。通过这位仁兄的调用adobe官方的dll接口得到启发,我就用jacob
(java调用dll的一个工具包),通过调用adobe官方提供的Acrobat.dll接口进行pdf转图片,效果不错
很清晰,pdf支持的字体均可以转换出来。
这个方法同时也有问题,就是不支持多线程同时调用。一旦出现并发的情况,会报错windows剪切板
不可用。目前我想到的方法是用多线程排队的机制进行转换,一定程度上效率不高。如果各位同学有
更好的解决方法,欢迎来讨论。
需要的包:
jacob-1.17-M2
adobe arcobat pro X
这种方法只适用于windows下,linux的同学就没办法了。
具体代码如下:
jacob调用dll转换的具体处理代码
public static void savaPageAsJpgByAcrobat(St