日期:2014-05-18  浏览次数:20979 次

C#技术分享【PDF转换成图片——11种方案】
最近公司安排了个任务:要求交付一个DLL,实现【PDF转换成图片】,最好的效果是能够掌握所有源码,实在不行才交付第三方DLL。研究了6个工作日+1双休+每晚9点下班,逛遍了国内外各种论坛,还是没能成功整出源码,但发现了很多有用的工具和其他工具,在此分享给大家。

1.【iTextSharp.dll】,C# 开源PDF处理工具,可以任意操作PDF,并可以提取PDF中的文字和图片,但不能直接将PDF转换成图片。
DLL和源码 下载地址:http://download.csdn.net/detail/shi0090/4065982
中文帮助文档 下载地址:http://download.csdn.net/detail/shi0090/4065986
提取文字测试工程 下载地址:http://download.csdn.net/detail/shi0090/4068429
提取图片测试工程 下载地址:http://download.csdn.net/detail/shi0090/4068428
官方网站:http://itextpdf.com/

2.【PdfSharp.dll】,C# 开源PDF处理工具,可以任意操作PDF,也可以实现从PDF提取图片,但不能直接将PDF转换成图片。
DLL和源码 下载地址:http://download.csdn.net/detail/shi0090/4066060 
提取图片测试工程 下载地址:http://download.csdn.net/detail/shi0090/4068448 
以上两个开源C#工具都可以很好处理PDF文档,但不满足我的要求直接把PDF转成IMAGE。

3.【ImageMagick】,C 语言开源PDF处理工具,可以将实现PDF转换图片,因为是C#工程,所以C语言的我就没有过多测试。
DLL和源码 下载地址:http://download.csdn.net/detail/shi0090/4066040

4.【Acrobat.dll】,Adobe官方提供的接口,可以实现PDF转图片。
这个方法需要安装Adobe Acrobat X Pro,从安装文件copy出Acrobat.dll就可以,因为文件太大要500M多,就不提供下载了。
测试工程 下载地址: http://download.csdn.net/detail/shi0090/4068502
参考地址:http://www.codeproject.com/Articles/5887/Generate-Thumbnail-Images-from-PDF-Documents
这个方案也是我最后采用的方案,毕竟是Adobe官方提供的接口,其转换效率要比其他的DLL要快多了,而且应该更可靠一些。

5.免费工具:【Ghostscript】,可以实现PDF转图片,貌似网上很多人都会采用这个方法,但我觉得不太好用。
DLL 下载地址:http://download.csdn.net/detail/shi0090/4066005
测试工程 下载地址:http://download.csdn.net/detail/shi0090/4068486
参考地址:http://www.codeproject.com/Articles/317700/Convert-a-PDF-into-a-series-of-images-using-Csharp.aspx
参考地址:http://www.codeproject.com/Articles/32274/How-To-Convert-PDF-to-Image-Using-Ghostscript-API

6.【PDFLibNet.dll】,第三方DLL,可以实现PDF转图片。
DLL 下载地址:http://download.csdn.net/detail/shi0090/4066096
测试工程 下载地址:http://download.csdn.net/detail/shi0090/4068522

7【O2S.Components.PDFRender4NET.dll】,.第三方DLL,可以实现PDF转图片,原版的dll左上角也会有一排红色水印,但这个是破解版的已经没有水印。
DLL 下载地址:http://download.csdn.net/detail/shi0090/4066107
测试工程 下载地址:http://download.csdn.net/detail/shi0090/4068558

8.【SautinSoft.PdfFocus.dll】,第三方DLL,可以实现PDF转图片,但转出来的图片左上角有一排红色水印。
DLL 下载地址:http://download.csdn.net/detail/shi0090/4066111
测试工程 下载地址:http://download.csdn.net/detail/shi0090/4068561

9.【TallComponents.PDF.Rasterizer.dll】,第三方DLL,可以实现PDF转图片,但转出来的图片有个较大的水印。
DLL 下载地址:http://download.csdn.net/detail/shi0090/4066112
测试工程 下载地址:http://download.csdn.net/detail/shi0090/4068563

10.【XpdfRasterizer.dll】,第三方DLL,可以实现PDF转图片。
DLL 下载地址:http://download.csdn.net/detail/shi0090/4066115
测试工程 下载地址:这个弄不见了,如果使用要使用这个的话,一定要注意Regsvr32注册,要不然转换会失败的。

11.【abcpdf.dll】,第三方DLL,可以实现PDF转图片,但是需要安装abcpdf,所以使用起来不算太放方便。
DLL 下载地址:http://download.csdn.net/detail/shi0090/4066144
测试工程 下载地址:http://download.csdn.net/detail/shi0090/4068564

最后贴所有代码的和dll的地址,以免童鞋们一个一个下的麻烦,但相应的分会高一点,毕竟我下载这些东西用了我100多分啊,让我深知分的重要性了。
dll 下载地址:http://download.csdn.net/detail/shi0090/4068649
code 下载地址:http://download.csdn.net/detail/shi0090/4068651

最后我觉得【Acrobat.dll】还是最好用的,因为最效率、最稳定,同时进行5个PDF的转换也能成功,但是用第三方的DLL就会出现崩溃的现象。
其次推荐【O2S.Components.PDFRender4NET.dll】,因为使用这个代码最简洁、使用起来最方便,而且效率算是不错的,也没有水印,但是是破解的,这个大家自己斟酌了。

以上则是我的研究成果啦,如果大家有什么好的意见欢迎给我留言,也可以加我QQ:605494869 或 微博:http://weibo.com/605494869 一起交流。

------解决方案--------------------
感谢分享。
------解决方案--------------------
感谢分享,好东西。
------解决方案--------------------
感谢分享。
------解决方案--------------------
大神啊。。支持