
libHaru是一个C语言,跨平台开发的用于生成PDF文件的开源包,可以在Windows,Linux,FreeBSD等下使用。它支持线条、文本、图片、轮廓、文本注释、链接注释、文档压缩、图片嵌入、TrueType字体、加密PDF,并支持多种字符集。libHaru目前的稳定版本是V2.3
编译开源库libHaru需要其他开源作为依赖。让我们在Windows下编译libHaru。
1.下载zlib库。这个在官网有最新的windows版本bin,不需要编译。
2.下载libpng,没有windows版本的二进制库文件,需要编译。最好下载1.2.51版本,因为我们要编译的libharu不是最新版本。

3,编译libpng,从项目目录中使用vs2008,选择visualc71,打开项目。从项目中移除依赖项(zlib,我们这里直接使用编译后的zlib,无需编译),在设置slave属性中设置C中的头文件路径,并设置zlib的路径和库名用于与属性的连接,编译动态库。
4.下载libharu库。注意下载libharu_2_0_8_win32.zip,别人总是出错。将zlib和libpng的头文件和库(lib,dll)复制到libharu项目,修改脚本目录下的Makefile.msvc_dll。在这里,我们也将其编译成动态库,以备后用。将Makefile.msvc_dll中的zlib和libpng正确修改为目录和库名,在命令行执行:
nmake-fscript \ makefile . msvc _ dll可以成功编译。

5,使用编译后的libhpdf.lib和libhpdf.lib将库和头文件复制到使用的项目中,包括如下的头文件:
#定义HPDF动态链接库
#包含“hpdf.h”
#pragma注释(lib,' libhpdf.lib ')
这里必须定义HPDF_DLL(原因见hpdf.h头文件),否则找不到libhpdf.lib提示符输出的那些函数:
font_demo.obj :错误LNK2001:未解析的外部符号_ HPDF _保存文件
font_demo.obj :错误LNK2001:未解析的外部符号_ HPDF _页面_显示文本
font_demo.obj :错误LNK2001:未解析的外部符号_HPDF_Page_MoveTextPos
像这样的错误。

如果项目中未设置include libhpdf.lib(属性设置或使用# pragma comment (lib,' libhpdf.lib ')),将出现以下错误:
font_demo.obj :错误LNK2001:无法解析的外部符号__imp__HPDF_SaveToFile@8
font_demo.obj :错误LNK2001:无法解析的外部符号__imp__HPDF_Page_ShowText@8
font_demo.obj :错误LNK2001:无法解析的外部符号_ _ imp _ _ HPDF _ Page _ MoveTextPos @ 12
像这样的错误。
注意两点以后编译成功。
libHaru的使用有一些常见的例子比如样本目录中的文字和图片。有兴趣可以参考一下。
如果你对编程感兴趣,想了解更多编程知识,解决编程问题,入门指导,帮你解决编程中遇到的困惑,我们这里有java高手,C /C高手,windows/Linux高手,android/ios高手,关注微信微信官方账号:程序员互动联盟或者coder_online,输入关键字zx即可获得编程入门手册。
本文为原创,禁止转载。谢谢大家!
评论(0)