zoukankan      html  css  js  c++  java
  • C# 第三方DLL,可以实现PDF转图片,支持32位系统、64位系统

    itextsharp.dll,是一个开源的在C#中用来生成PDF文档的库文件,不少C#爱好者用它制作出了PDF文档生成器。使用时只需在你的C#项目中添加引入此组件即可,使用方法网上有很多,自己查阅一下。如果系统提示“没有找到itextsharp.dll”文件,或者“缺少itextsharp.dll”等错误信息,您可下载本文件后,将其注册为组件或复制到相关目录,即可解决出错提示!

    DLL 下载地址:http://download.csdn.net/download/wumin940590725/6470151

    1、【O2S.Components.PDFRender4NET.dll】,第三方DLL,可以实现PDF转图片,支持32位系统、64位系统
    官方试用版的dll左上角会有一排红色水印,下面这个是破解版的没有水印,主使用了一年多基本没有出过问题,推荐使用。
    DLL 下载地址:http://download.csdn.net/detail/shi0090/4066107
    测试工程 下载地址:http://download.csdn.net/detail/shi0090/4068558

    2、【Acrobat.dll】,Adobe官方提供的接口,可以实现PDF转图片。这个方法需要安装Adobe Acrobat X Pro,从安装文件找到Acrobat.dll引用到项目中。毕竟是Adobe官方提供的接口,其转换效率要比其他的DLL要快多了,而且更可靠一些,但是在IIS下运行会比较麻烦(主要是不支持多线程,所以在iis下调用失败,群里有童鞋用wcf去转换,然后从web层调用wcf)
    如果对转换速度、图片质量要求很高的童鞋,可以参考此方案,但是实现过程太麻烦,大家自己权衡,撸主对此方法并没有深入研究了。
    测试工程 下载地址: http://download.csdn.net/detail/shi0090/4068502
    参考地址:http://www.codeproject.com/Articles/5887/Generate-Thumbnail-Images-from-PDF-Documents

    3、【PDFLibNet.dll】,第三方DLL,只支持32位系统,可以实现PDF转图片,下面这个版本没有水印。
    DLL 下载地址:http://download.csdn.net/detail/shi0090/4066096
    测试工程 下载地址:http://download.csdn.net/detail/shi0090/4068522

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

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

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

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

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

    9、【Ghostscript】,第三方DLL,可以实现PDF转图片,只支持32位系统,貌似网上很多人都会采用这个方法(据说功能强大),个人觉得代码太麻烦没有采用,没有深入研究。
    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

    10、【ImageMagick】,C语言开源PDF处理工具,可以将实现PDF转换图片,因为撸主使用的C#,所以C语言的工具就没有深入研究了。
    DLL和源码 下载地址:http://download.csdn.net/detail/shi0090/4066040

    11、【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/

    12、【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。

     

    13、QQ群里有人推荐【PDFToX.dll】速度和质量都不错,就是不太稳定,有兴趣的朋友可以自行研究一下~
    官方网站:http://www.ycanpdf.cn/
    官方下载:http://www.ycanpdf.cn/software/PDFtoX.rar

    在C#中使用O2S.Components.PDFRender4NET.dll把PDF转换成图片的具体代码

    方法/步骤 

    1

    把 O2S.Components.PDFRender4NET.dll添加到引用中(下载地址:https://www.so.com/s?q=O2S.Components.PDFRender4NET.dll&src=se_zoned)

    2

    using System;

    using System.Collections.Generic;

    using System.Linq;

    using System.Windows.Forms;

    using O2S.Components.PDFRender4NET;

    using System.Drawing;

    using System.Drawing.Imaging;

    using System.IO;

    namespace O2S.Components.PDFRender4NET.pdf2image

    {

        public static class Program

        {

            public enum Definition

            {

                One = 1, Two = 2, Three = 3,

                Four = 4, Five = 5, Six = 6,

                Seven = 7, Eight = 8,

                Nine = 9, Ten = 10

            }

            /// <summary>

            /// 将PDF文档转换为图片的方法

            /// </summary>

            /// <param name="pdfInputPath">PDF文件路径</param>

            /// <param name="imageOutputPath">图片输出路径</param>

            /// <param name="imageName">生成图片的名字</param>

            /// <param name="startPageNum">从PDF文档的第几页开始转换</param>

            /// <param name="endPageNum">从PDF文档的第几页开始停止转换</param>

            /// <param name="imageFormat">设置所需图片格式</param>

            /// <param name="definition">设置图片的清晰度,数字越大越清晰</param>

            public static void ConvertPDF2Image(string pdfInputPath, string imageOutputPath,

                string imageName, int startPageNum, int endPageNum, ImageFormat imageFormat, Definition definition)

            {

                PDFFile pdfFile = PDFFile.Open(pdfInputPath);

                if (!Directory.Exists(imageOutputPath))

                {

                    Directory.CreateDirectory(imageOutputPath);

                }

                // validate pageNum

                if (startPageNum <= 0)

                {

                    startPageNum = 1;

                }

                if (endPageNum > pdfFile.PageCount)

                {

                    endPageNum = pdfFile.PageCount;

                }

                if (startPageNum > endPageNum)

                {

                    int tempPageNum = startPageNum;

                    startPageNum = endPageNum;

                    endPageNum = startPageNum;

                }

                // start to convert each page

                for (int i = startPageNum; i <= endPageNum; i++)

                {

                    Bitmap pageImage = pdfFile.GetPageImage(i - 1, 56 * (int)definition);

                    pageImage.Save(imageOutputPath + imageName + i.ToString() + "." + imageFormat.ToString(), imageFormat);

                    pageImage.Dispose();

                }

                pdfFile.Dispose();

            }

            public static void Main(string[] args)

            {

                ConvertPDF2Image("F:\Events.pdf", "F:\", "A", 1, 5, ImageFormat.Jpeg, Definition.One);

            }

        }

    }

  • 相关阅读:
    对MVC HtmlHepler控件扩展(转载)
    通过源代码研究ASP.NET MVC中的Controller和View(一)(转载)
    rasmol使用方法
    经典笑话
    直线回归的概念
    众数
    Python ImportError: No module named Tkinter
    小干扰RNA
    complementary DNA, cDNA
    反义RNA
  • 原文地址:https://www.cnblogs.com/1175429393wljblog/p/5589975.html
Copyright © 2011-2022 走看看