mupdf将pdf文件中的某页导出成图片
2015-11-05 00:00
2959 查看
摘要: mupdf是一个开源的读取pdf文件的工具,我也一直用这个即简洁又灵巧的东西阅读PDF文档,电脑上没有安装Adobe Reader及Acrobat系列,也没有安装Foxit系列的PDF阅读器,因为mupdf总是可以满足我的需求了,而我的需求也确实并不高,而且mupdf有类似于vi的按键操作,'j','k','l','h',',','.', g 用来转到指定页面,147g则转到第147页。灰常好用。
下面是编译一下mupdf的例子,由于他使用的是win系统,所以以下是在win上的vs2008的编译步骤。
下载地址:www.mupdf.com
我下载的版本是:mupdf-1.3-source.tar.gz
目录构成:
解压缩以后发现有个platform目录,下面有win32目录,打开里面的mupdf.sln
1. 编译出来mupdf工程,会有生成的三个库文件:
libmupdf.lib
libmupdf-js-none.lib
libthirdparty.lib
2. 新建一个win32控制台空工程,叫做test
3. 将example.c拷贝到工程目录下,
并加到test工程中
4. 修改test工程的属性,在C/C++选项卡中将
Additional Include Directories中加上
mupdf的include的目录,比如,我的是:
.;..\..\..\include;
5. 在Linker的Input选项卡中将
Ignore Specific Library(忽略的库)
加上libcmtd.lib,(release是:libcmt.lib)
6. 在example.c的开头加上库的链接,比如我加的是:
#ifdef _DEBUG
#pragma comment(lib, "..\\debug\\libmupdf.lib")
#pragma comment(lib, "..\\debug\\libmupdf-js-none.lib")
#pragma comment(lib, "..\\debug\\libthirdparty.lib")
#else
#pragma comment(lib, "..\\release\\libmupdf.lib")
#pragma comment(lib, "..\\release\\libmupdf-js-none.lib")
#pragma comment(lib, "..\\release\\libthirdparty.lib")
#endif
7. 由于example.c 是个c文件,变量的定义必须都放在开头。
将以下四的声明放在render函数的开头
fz_rect bounds;
fz_irect bbox;
fz_pixmap *pix = NULL;
fz_device *dev = NULL;
8. 编译test工程,生成test.exe文件
在命令行中执行:
test d:\\temp\\unix2.pdf 147
9. 在test.exe所在的目录会生成out.png
还可以生成大图,只要将命令行写成
test d:\\temp\\unix2.pdf 147 200
就是缩放比例为200%的图了。
清晰了许多。
下面是编译一下mupdf的例子,由于他使用的是win系统,所以以下是在win上的vs2008的编译步骤。
下载地址:www.mupdf.com
我下载的版本是:mupdf-1.3-source.tar.gz
目录构成:
解压缩以后发现有个platform目录,下面有win32目录,打开里面的mupdf.sln
1. 编译出来mupdf工程,会有生成的三个库文件:
libmupdf.lib
libmupdf-js-none.lib
libthirdparty.lib
2. 新建一个win32控制台空工程,叫做test
3. 将example.c拷贝到工程目录下,
并加到test工程中
4. 修改test工程的属性,在C/C++选项卡中将
Additional Include Directories中加上
mupdf的include的目录,比如,我的是:
.;..\..\..\include;
5. 在Linker的Input选项卡中将
Ignore Specific Library(忽略的库)
加上libcmtd.lib,(release是:libcmt.lib)
6. 在example.c的开头加上库的链接,比如我加的是:
#ifdef _DEBUG
#pragma comment(lib, "..\\debug\\libmupdf.lib")
#pragma comment(lib, "..\\debug\\libmupdf-js-none.lib")
#pragma comment(lib, "..\\debug\\libthirdparty.lib")
#else
#pragma comment(lib, "..\\release\\libmupdf.lib")
#pragma comment(lib, "..\\release\\libmupdf-js-none.lib")
#pragma comment(lib, "..\\release\\libthirdparty.lib")
#endif
7. 由于example.c 是个c文件,变量的定义必须都放在开头。
将以下四的声明放在render函数的开头
fz_rect bounds;
fz_irect bbox;
fz_pixmap *pix = NULL;
fz_device *dev = NULL;
8. 编译test工程,生成test.exe文件
在命令行中执行:
test d:\\temp\\unix2.pdf 147
9. 在test.exe所在的目录会生成out.png
还可以生成大图,只要将命令行写成
test d:\\temp\\unix2.pdf 147 200
就是缩放比例为200%的图了。
清晰了许多。
相关文章推荐
- 网站排名有了中国标准 转
- PDF里的文字显示模糊的解决方法
- PDF编辑工具 Foxit PDF Editor 1.5 Build 2911 下载
- 没有文件大小限制并免费的PDF到HTML转换工具
- MicroAdobe PDF Editor 6.2 英文正式版附破解补丁 下载
- C#使用iTextSharp设置PDF所有页面背景图功能实例
- PDF的VBS小程序代码
- C语言实现BMP转换JPG的方法
- C#实现TIF图像转PDF文件的方法
- c#实现将pdf转文本的示例分享
- C#代码实现PDF文档操作类
- C#使用iTextSharp封装的PDF文件操作类实例
- C#编程读取文档Doc、Docx及Pdf内容的方法
- Java开源工具iText生成PDF简单实例
- C#使用itextsharp生成PDF文件的实现代码
- jpg 木马如何执行 如何防止.JPG类型木马?
- php 将bmp图片转为jpg等其他任意格式的图片
- 使用java为pdf添加书签的方法(pdf书签制作)
- java中输出pdf文件代码分享
- Python实现将DOC文档转换为PDF的方法