C# 第三方DLL,可以实现PDF转图片,支持32位系统、64位系统

时间:2022-05-20 23:16:21

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

}

}

}

C# 第三方DLL,可以实现PDF转图片,支持32位系统、64位系统的更多相关文章

  1. 32位和64位dll判断

    如何判断一个dll文件是32位还是64位? 1. 开发中经常会使用到VC的一个工具 Dependency Walker用depends.exe打开dll,文件名前有64标示的即为64位. 但是这个方式 ...

  2. JAVA判断32位还是64位,调用不同的DLL(转)

    源:JAVA判断32位还是64位,调用不同的DLL 通过获取sun.arch.data.model可判断是32还是64的JAVA 将32或者64位的DLL放不同的目录,实现自适应调用DLL Prope ...

  3. VB&period;NET实现32位、64位远线程运行ASM,注入非托管、托管DLL

    这是一个老话题,远线程函数给我们提供了机会在其他进程中启动一个新线程,所以我们可以做很多事情.但事情远远没有结束,如果我们要做的事情非常复杂,那么将面临编写大量的ASM代码,虽然我们可以用VC之类的工 ...

  4. Windows系统32位、64位DLL文件的存放位置

    查资料时无意中发现,Windows系统存放DLL的文件路径似乎有点蹊跷: 32位的DLL存放在C:\Windows\SysWOW64,而64位的DLL存放在C:\Windows\System32.即使 ...

  5. Cocos2d-x第三方类库不支持arm64的问题解决&lpar;64位架构&rpar;

    32位能够兼容64位操作系统. ipad mini2 64位编译有问题. 各种第三方库不支持64位操作系统. 设置build setting 直接上图:

  6. VS2010编写32位和64位dll环境配置,以及判断dll是多少位

    前言 最近在编写dll注入程序的时候,因为想注入到系统进程,结果发现总是注入失败.自闭了好长一会发现我忘记了我的系统是64位的,系统进程也是64位的,而我编写的待注入的DLL是32位了,所以才导致失败 ...

  7. api图片传输,转成64位字符串进行传输

    byte[] getImageByte = HttpHelper.getImageByte(HttpContext.Current.Server.MapPath(("~/UploadFile ...

  8. 查看 dll 是32位还是64位 的 bat

    ******* @echo offset work_path=./cd %work_path% for /R %%s in (*.dll) do ( echo %%~nxs call dumpbin ...

  9. 查看dll 的是32位还是64位

    1. dumpbin 命令 ** dumpbin 路径写入环境变量 ***  使用 dumpbin /headers 文件名去查看 [X86 表示32位  x64表示64位] 2. 使用 DEPEND ...

  10. 【转】如何知道DLL是32位还是64位

    源地址:http://blog.csdn.net/skysword2/article/details/52588624

随机推荐

  1. how2heap分析系列&colon;2&lowbar;fastbin&lowbar;dup

    源码 #include <stdio.h> #include <stdlib.h> int main() { printf("This file demonstrat ...

  2. Python&plus;excel实现的简单接口自动化 V0&period;1

    好久没写博客了..最近忙着工作以及新工作的事.. 看了下以前写的简单接口自动化,拿出来总结下,也算记录下学习成果 先来贴一下最后的结果,结果是写在原来的excel中 执行完毕后,会将结果写入到“状态” ...

  3. Java5、Java6、Java7的新特性

    Java5 Java 5添加了8个语言特性:泛型,类型安全枚举,注解,自动装箱和拆箱,增强的循环,静态导入,可变参数,协变返回类型. 1.泛型 Generics: 引用泛型之后,允许指定集合里元素的类 ...

  4. 关于atoi的实现

    一.关于atoi atol的实现 __BEGIN_NAMESPACE_STD __extern_inline double __NTH (atof (__const char *__nptr)) { ...

  5. 04737&lowbar;C&plus;&plus;程序设计&lowbar;第5章&lowbar;特殊函数和成员

    例5.1 分析下面程序中析构函数与构造函数的调用顺序. #include<iostream> using namespace std; class object { private: in ...

  6. python 爬取腾讯微博并生成词云

    本文以延参法师的腾讯微博为例进行爬取并分析 ,话不多说 直接附上源代码.其中有比较详细的注释. 需要用到的包有 BeautifulSoup WordCloud jieba # coding:utf-8 ...

  7. 编写OC高质量的代码的有效方法

    1. 写这个只是为了自己记忆,有相关pdf文件,如需要留下邮箱.. 2. 在类的头文件中尽量少引入其他头文件 除非确有必要,否则不要引入头文件.一般来说,应在某个类的头文件中使用向前声明来提及别的类( ...

  8. linux&lowbar;Nginx日志

    错误信息日志配置: 日志文件默认:/application/nginx/logs/erroe.log error_log logs/error.log error; # 不写默认就有,默认error, ...

  9. cadence原理图设计

  10. Linux定时检测内存,若使用率超过指标,重启Tomcat并清空内存

    cd /usr/local vim cleanCacheTime.sh 把以下代码粘贴进去 #!/bin/bash echo "start SyncCleanCache.sh...&quot ...