postalcode什么意思英语(postalcode什么意思中文)

环球网 60 0

postalcode什么意思英语(postalcode什么意思中文)-第1张图片

Zint介绍Zint是一个强大的二维码编码生成开源工具,基于C语言开发,允许在任何广泛的公共领域条形码标准中轻松编码数据,并允许将此功能集成到你自己的程序。

Zint 能够对以下格式的数据进行编码:

Code 11, Standard Code 2 of 5, IATA Code 2 of 5, Industrial Code 2 of 5,Interleaved Code 2 of 5, Code 2 of 5 Data Logic, ITF-14, Deutche PostLeitcode, Deutche Post Identcode, UPC-A, UPC-E, EAN-2, EAN-5, EAN-8,EAN-13, UK Plessey, MSI Plessey, Telepen Alpha, Telepen Numeric, Code 39,Extended Code 39, Code 93, PZN, Code 23, LOGMARS, Codabar, Pharmacode, Code128, EAN-128, NVE-18, Code 16k, PDF417, MicroPDF417, Two-Track Pharmacode,PostNet, PLANET, Australia Post 4-State Symbols, RM4SCC, USPS OneCode, GS1DataBar, DataBar-14, DataBar Limited, DataBar Extended, DataBar Stacked,Composite Symbology, Data Matrix, QR Code, Maxicode, Aztec Code, EAN-13,Micro QR, Korea Post Barcode, HIBC Code 128, HIBC Code 39, HIBC Data Matrix,HIBC PDF417, HIBC MicroPDF417, HIBC QR Code, HIBC Aztec Code, Japanese PostalCode, Code 49, Channel Code, Code One, Grid Matrix, FIM and Flattermarken.编译方法1、下载需要的库

Zint 本身其实不依赖其他库,但是如果需要使用到 PNG 保存的话,那么需要 libpng 和 zlib。

首先,下载这三个库,然后解压放置在同一个文件夹中。本文中,使用 zlib-1.2.11、libpng1.6.37 和 zint-2.3.0(你也可以使用其他版本,但是可能也会遇到其他问题)。下载链接如下:

zlib /下载好以后,解压到同一文件夹,如下图所示:

postalcode什么意思英语(postalcode什么意思中文)-第2张图片

2、编译 libpng

libpng 依赖 zlib,在 libpng 的工程项目中,已经包含了 zlib,因此,我们只要编译 libpng 的项目,就可以得到 libpng 和 zlib 的链接库。而编译 libpng 首先需要编译 zlib。步骤如下:

(1)打开 lpng - projects - vstudio - vstudio.sln

postalcode什么意思英语(postalcode什么意思中文)-第3张图片

我这里使用的是 vs2017,打开 vstudio.sln 时,会提示升级之类的,点确定即可。

(2)解决「error C2220: 警告被视为错误」

如果直接生成解决方案,会出现 「error C2220: 警告被视为错误」 这样的错误,解决方法为:右键项目 - 属性 - C/C++ - 常规 - 将错误视为警告改为 「否」。

postalcode什么意思英语(postalcode什么意思中文)-第4张图片

(3)生成 zlib.lib

右键项目 - 生成 即可。

postalcode什么意思英语(postalcode什么意思中文)-第5张图片

(4)生成 libpng.lib

右键项目 - 生成 即可。

postalcode什么意思英语(postalcode什么意思中文)-第6张图片

上述步骤生成的为 Debug 版本的库,通常情况我们也需要 Release 版本的库。生成步骤同 1~4,只是将 Debug 环境改为 Release 环境。

生成的库如下图所示:

postalcode什么意思英语(postalcode什么意思中文)-第7张图片

3、编译 zint

zint 的依赖库 libpng 和 zlib 已经编译完毕,现在可以开始编译 zint 了,步骤如下:

(1)设置「附加包含目录」和 「附加库目录」

设置「附加包含目录」:libzint 右键属性 - C/C++ - 附加包含目录 - 添加 lpng 目录和 zlib 目录。

设置「附加库目录」:libzint 右键属性 - 链接器 - 常规 - 附加库目录 - 添加 Step 2 中 zlib.lib 和 libpng.lib 存放的位置。

postalcode什么意思英语(postalcode什么意思中文)-第8张图片

postalcode什么意思英语(postalcode什么意思中文)-第9张图片

(2)去除 NO_PNG 预处理器定义

如果 NO_PNG 宏被定义,libzint 不会使用到 libpng 和 zlib,但是也无法保存为 .png 格式了。我们这里将 NO_PNG 宏去掉即可。右键 - 属性 - C/C++ - 预处理器 - 预处理器定义 - 找到 NO_PNG,删掉即可。

postalcode什么意思英语(postalcode什么意思中文)-第10张图片

(3)Debug 版本需要添加 「附件依赖项」

libzint 右键属性 - 链接器 - 输入 - 附加依赖项 - 添加 libpng16.lib 和 zlib.lib。

postalcode什么意思英语(postalcode什么意思中文)-第11张图片

(4)编译错误解决

右键项目 - 生成后,出现如下错误:

postalcode什么意思英语(postalcode什么意思中文)-第12张图片

这是缺少一个压缩比的宏定义,可能是我们用的3个库的版本不对应,没关系,这个宏定义网上都有介绍,我们手动添加一个:

#define Z_BEST_COMPRESSION 9 //压缩比优先postalcode什么意思英语(postalcode什么意思中文)-第13张图片

重新生成即可。

postalcode什么意思英语(postalcode什么意思中文)-第14张图片

生成的库如下图所示:

postalcode什么意思英语(postalcode什么意思中文)-第15张图片

至此,Zint库编译成功,关注我,下一篇说说Zint库怎么使用。

postalcode什么意思英语(postalcode什么意思中文)-第16张图片

抱歉,评论功能暂时关闭!