libhura的建立

libharu 是一个开源的导出pdf的库,在编译libharu需要用到zlib库和libpng库(libpng 依赖于zlib库)。
如果项目中不需要导出带有图片的pdf,可以将涉及到"png.h"的文件自行删除。

转 lemianli (这个方法是比较简单的,同时编译libpng和zlib库)
编译libpng 和libz库:
1. 先下载 libpng(http://sourceforge.net/projects/libpng/files/)和libz(http://zlib.net/zlib-1.2.7.tar.gz),将libpng解压,如C:\workspace\libpng\。
2. 将libz解压,改名zlib放到libpng同级目录,如C:\workspace\zlib。
3. 进入libpng\projects\visualc71\,用visual studio打开工程文件,方案中会有三个子工程:libpng, pngtest, zlib。直接编译,不出意外会在Win32_DLL_Debug目录下和Win32_DLL_Debug\ZLib目录下生成zlib1d.dll, libpng15d.dll, libpng.lib和zlib.lib等库文件。
4.若报错,拷贝scripts/pnglibconf.h.prebuilt到源码目录,改名为pnglibconf.h

转 http://www.cnblogs.com/sanghg/p/5487509.html(该方法编译较复杂)
#编译方法一#
- 解压源码文件到指定目录,例如 x:\zlib
- 打开VS2015的Developer Command Prompt for VS2015工具
- 切换到x:\zlib\contrib\masmx86目录,如果想编译x64的,可以进入masmx64目录,我这里只使用32位
- 执行bld_ml32.bat文件,静待片刻会在文件目录中产生4个文件
- 将生成文件中的inffas32.obj和match686.obj文件复制到根目录 x:\zlib下
- 将Developer Command Prompt for VS2015工具目录切换到根目录 x:\zlib
- 执行nmake命令
```
nmake -f win32/Makefile.msc LOC="-DASMV -DASMINF" OBJA="inffas32.obj match686.obj"  
```
- 编译成功以后,就会在根目录产生一系列文件,其中zdll.lib和zlib1.dll就是我们需要的文件
#编译方法二#
- 解压源码文件到指定目录,例如 x:\zlib
- 打开VS2015的Developer Command Prompt for VS2015工具
- 切换到x:\zlib\contrib\masmx86目录,如果想编译x64的,可以进入masmx64目录,我这里只使用32位
- 执行bld_ml32.bat文件,静待片刻会在文件目录中产生4个文件
- 将生成文件中的inffas32.obj和match686.obj文件复制到根目录 x:\zlib下
- 复制x:\zlib\contrib\vstudio\v11到x:\zlib\contrib\vstudio\v14
- 用Visual Studio 2015 IDE打开x:\zlib\contrib\vstudio\v14\zlibvc.sln并编译
编译过程中可能会出现以下几个问题
1.error LNK2026: module unsafe for SAFESEH image
修改属性/linker/Advenced/Image has safe Exception Handles 为No
2.fatal error LNK1118: syntax error in ‘VERSION’ statement
打开zlibvc.def文件VERSION 修改为1.28即可
 

工程的创立

  •  在 libpng 和 zlib 的目录下分别创立 include文件夹  和 lib问价夹
  • include 是存放同级目录下的 .h 和 .c 文件的
  • lib 是用来存放进静态库的(.lib)

对于要用到这两个库的工程,主要需要做三件事:
1. C/C++常规->附加包含目录中把包含png.h等头文件的目录加进来
2. 链接器->输入->附加依赖项中加zlib.lib;libpng.lib。
3.通用属性->VC++ 目录->库目录中把放着zlib.lib和libpng.lib的目录加进来。

#总结#
1、新建项目 选择输出dll,空项目
2、将libharu解压 将src和include文件加入到项目中
3、加入libpng和zlib库文件
1>C/C++常规->附加包含目录中把包含png.h等头文件的目录加进来
2> 链接器->输入->附加依赖项中加zlib.lib;libpng.lib。
3>.通用属性->VC++ 目录->库目录中把放着zlib.lib和libpng.lib的目录加进来。
4、编译后在 ~~~~\Visual Studio 2008\Projects\{project_name}\Debug\ 查找生成dll和lib文件
5、demo中有实现各种效果的源码,可自行测试

posted @ 2019-06-09 08:46  大黄蜂_001  阅读(328)  评论(0编辑  收藏  举报