PDF文件的读写(使用SDK).(二).编译生成免费的PoDoFo
2011-12-08 15:52
495 查看
PoDoFo是一个免费的开源的PDF开发库。PoDoFo这个名字很有趣,根据它附带的README.HTM文件说明,它源于:Portable Document
Format。三个大写字母就是“PDF”,而用“o”来隔开。
PoDoFo下载地址:http://podofo.sourceforge.net/index.html
我写本文时,它刚发布0.9.1版没多久。
PoDoFo开发库需要依赖的GUN公共库比较多 ,但在WIN32下最少的依赖库需求只有三个,而其中需要编译的只有两个。
这三个至少需要的库,分别是:zlib, libjpeg和freetype。其中需要编译的则是:libjpeg和freetype。
编译libjpeg和freetype并不麻烦,它们的编译过程在PoDoFo自带的README.HTM中均有说明。只是我感觉README.HTM这个文件貌似比较老,不是针对最新的0.9.x版本编写的,因此实际的编译过程和上面所写的东西略有出入。
从网上下载的libjpeg压缩包中,自带有nmake的makefile文件,你仔细找找就可以发现,某些文件有vc之类的字样。不过这里需要注意的是,jconfig.h这个文件,是需要你自己指定的。一般来说,如果使用VC编译,可以直接copy jconfig.vc jconfig.h。这样就直接使用了它自带的jconfig.vc这个文件来编译。
至于freetype的编译就更简单了。因为它本身就带有vc 2005和vc2008的工程文件。你用vc2005或者vc2008打开它们,直接生成就是。
另外的zlib是不需要编译的,直接从网上下载下来就可以使用了。但需要注意的是,你下载下来的东西,必须要包含zlib1.dll,zlib1.lib和相关的.h文件。zlib1.dll是PoDoFo程序运行时需要的,而zlib1.lib和相关的.h文件,是编译PoDoFo需要的。
除了上面说的三个依赖模块外,在WIN32下,还可能会使用到libtiff这个库,这是关于tiff图像处理的,不是特别常用。另外,还可能会有libpng库,用来处理png图片。
由上,你若是使用PoDoFo来操纵PDF文件,则除了你自己本身写的程序外,则至少还包含zlib1.dll和PoDoFo.dll这两个动态链接库,你的程序才可以运行。不过还好,这些动态库都是绿色的。
根据PoDoFo中README.HTM的建议,在WIN32下编译PoDoFo模块,除了上面的准备外,最好先使用CMake这个工具生成VC的sln文件,然后再VC中打开sln文件,再进行编译。README.HTM中要求的CMake版本是2.6.x,而测试成功的是VC2008的sln文件生成。事实上CMake只要2.6.x以上版本都可以。我用的就是2.8.4版本,而VC我用的版本则是VC2005,同样也成功生成了sln文件,只不过,其中有个别测试工程的细微之处需要略为修正。README.HTM中提供的生成脚本如下(DOS控制台下的批处理文件):
Format。三个大写字母就是“PDF”,而用“o”来隔开。
PoDoFo下载地址:http://podofo.sourceforge.net/index.html
我写本文时,它刚发布0.9.1版没多久。
PoDoFo开发库需要依赖的GUN公共库比较多 ,但在WIN32下最少的依赖库需求只有三个,而其中需要编译的只有两个。
这三个至少需要的库,分别是:zlib, libjpeg和freetype。其中需要编译的则是:libjpeg和freetype。
编译libjpeg和freetype并不麻烦,它们的编译过程在PoDoFo自带的README.HTM中均有说明。只是我感觉README.HTM这个文件貌似比较老,不是针对最新的0.9.x版本编写的,因此实际的编译过程和上面所写的东西略有出入。
从网上下载的libjpeg压缩包中,自带有nmake的makefile文件,你仔细找找就可以发现,某些文件有vc之类的字样。不过这里需要注意的是,jconfig.h这个文件,是需要你自己指定的。一般来说,如果使用VC编译,可以直接copy jconfig.vc jconfig.h。这样就直接使用了它自带的jconfig.vc这个文件来编译。
至于freetype的编译就更简单了。因为它本身就带有vc 2005和vc2008的工程文件。你用vc2005或者vc2008打开它们,直接生成就是。
另外的zlib是不需要编译的,直接从网上下载下来就可以使用了。但需要注意的是,你下载下来的东西,必须要包含zlib1.dll,zlib1.lib和相关的.h文件。zlib1.dll是PoDoFo程序运行时需要的,而zlib1.lib和相关的.h文件,是编译PoDoFo需要的。
除了上面说的三个依赖模块外,在WIN32下,还可能会使用到libtiff这个库,这是关于tiff图像处理的,不是特别常用。另外,还可能会有libpng库,用来处理png图片。
由上,你若是使用PoDoFo来操纵PDF文件,则除了你自己本身写的程序外,则至少还包含zlib1.dll和PoDoFo.dll这两个动态链接库,你的程序才可以运行。不过还好,这些动态库都是绿色的。
根据PoDoFo中README.HTM的建议,在WIN32下编译PoDoFo模块,除了上面的准备外,最好先使用CMake这个工具生成VC的sln文件,然后再VC中打开sln文件,再进行编译。README.HTM中要求的CMake版本是2.6.x,而测试成功的是VC2008的sln文件生成。事实上CMake只要2.6.x以上版本都可以。我用的就是2.8.4版本,而VC我用的版本则是VC2005,同样也成功生成了sln文件,只不过,其中有个别测试工程的细微之处需要略为修正。README.HTM中提供的生成脚本如下(DOS控制台下的批处理文件):
del cmakecache.txt set FTDIR=C:/developer/freetype-2.3.5 set FTLIBDIR=C:/developer/freetype-2.3.5/objs/win32/vc2008 set JPEGDIR=C:/Developer/jpeg set ZLIBDIR=C:/developer/zlib123-dll cmake -G "Visual Studio 9 2008" ../podofo-src -DCMAKE_INCLUDE_PATH="%FTDIR%/include;%JPEGDIR%/include;%JPEGDIR%;%ZLIBDIR%/include" -DCMAKE_LIBRARY_PATH="%FTLIBDIR%;%FTDIR%/lib;%JPEGDIR%/lib;%JPEGDIR%;%ZLIBDIR%/lib" -DPODOFO_BUILD_SHARED:BOOL=FALSE -DFREETYPE_LIBRARY_NAMES_DEBUG=freetype239MT_D -DFREETYPE_LIBRARY_NAMES_RELEASE=freetype239MT
相关文章推荐
- PDF文件的读写(使用SDK).(二).编译生成免费的PoDoFo
- PDF文件的读写(使用SDK).(三).PoDoFo的简单应用
- PDF文件的读写(使用SDK).(三).PoDoFo的简单应用
- android 源代码修改了之后编译生成本地的sdk,以方便在eclipse里面直接使用,调用所改动的API接口函数
- Linux下面编译生成win32能够使用的sdk
- 使用javah生成jni 头文件和使用ndk编译so库
- 在Linux下如何使用GCC编译程序、简单生成静态库及动态库
- 使用Cmake生成CEF的项目源文件,并在VS2015中编译通过
- 编译源码生成的SDK,创建android project 没有proguard.cfg问题
- C++使用 Git 生成编译版本号
- 如何使用Shell脚本编译生成Archive文件并导出签名IPA文件。
- 免费提供动态生成,读写并在线预览Office文档解决方案
- windows编译生成protobuf库(使用minGW编译)
- 关于DirectX高级动画书中使用的9.0bsdk的升级说明 cXParser类(dx9.0c sdk vs2003编译运行通过)
- Android高版本SDK生成的Project换用低版本SDK编译出错的问题(不生成R.java)
- ubuntu 下 使用android 源码编译生成apk实现静默安装
- android4.4 编译SDK与使用
- IOS 编译ffmpeg For SDK6.1,模拟器、armv7、armv7s均可使用
- 不使用Cygwin,在eclipse中快速开发JNI,一键生成C头文件.h,以及一键使用NDK交叉编译
- 不使用Cygwin,在eclipse中快速开发JNI,一键生成C头文件.h,以及一键使用NDK交叉编译