您的位置 首页 > 娱乐休闲

如何用c语言做个阅读器?

libHaru是一个用来生成PDF文件的c语言、跨平台开发开源包,能再Windows、Linux、FreeBSD等等下使用。它支持线条、文本、图片、轮廓、文本注释、链接注释、文档压缩、图片嵌入、TrueType字体、加密PDF、支持多种字符集。libHaru目前的稳定版本是V2.3版。

编译libHaru这个开源库,需要其它的开源作为依赖,下面我们在Windows下编译libHaru。

1,下载zlib库,这个在官方网站上有最新的windows版本bin,不需要编译。

2,下载libpng,这个没有windows版本的二进制库文件,需要编译,最好下载1.2.51版本,因为我们要编译的libharu不是最新版本。

3,编译libpng,从projects目录中用vs2008,选择visualc71,打开工程。从工程中去掉依赖项(zlib,我们这里直接使用编译好的zlib,不需要编译),在设置从属性中的c++设置好头文件路径,和属性的连接设置好zlib的路径和库名字,编译动态库。

4,下载libharu库,注意要下载lib这个版本,其他总是出错。拷贝zlib和libpng的头文件和库(lib,dll)到libharu工程下,修改script目录下的Make,这里我们也是编译为动态库,以便以后使用。将Make中的zlib和libpng指向目录和库名修改正确,在命令行下执行:

nmake -f script\Make即可编译成功。

5,使用编译好的lib和lib。拷贝好库和头文件到使用的工程,包含头文件时如下:

#define HPDF_DLL

#include ";

#pragma comment (lib, "lib")

这里必须定义HPDF_DLL(原因看的头文件),否则找不到那些lib输出的函数,提示入:

: error LNK2001: unresolved external symbol _HPDF_SaveToFile

: error LNK2001: unresolved external symbol _HPDF_Page_ShowText

: error LNK2001: unresolved external symbol _HPDF_Page_MoveTextPos

之类的错误。

如果没有在工程中设置包含lib(属性设置或者使用#pragma comment (lib, "lib")),则会出现如下错误:

: error LNK2001: unresolved external symbol __imp__HPDF_SaveToFile@8

: error LNK2001: unresolved external symbol __imp__HPDF_Page_ShowText@8

: error LNK2001: unresolved external symbol __imp__HPDF_Page_MoveTextPos@12

之类的错误。

注意着两点之后编译成功。

libHaru的使用在sample目录下有文本、图片等常见的使用实例,感兴趣可以去参考一下。

如果对编程感兴趣,想了解更多的编程知识,解决编程问题,以及入门指导,帮你解决编程中遇到的困惑,我们这里有java高手,C++/C高手,windows/Linux高手,android/ios高手,关注微信公众号:程序员互动联盟或者coder_online,关注后输入关键字 zx 获取编程入门手册

本文属原创,禁止转载,谢谢!

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“易语言如何调用zlib.dll,易语言如何调用摄像头,易语言如何调用dll,易语言如何调用dll文件”边界阅读