-- 作者:luckass
-- 发布时间:2008/9/1 17:37:48
-- PB打印标签DLL,支持128码
很多人在找这个DLL,我上传一个 调用很简单 re = MakeBarcodeBmpFile(".\12345.bmp", 1, 3, string, 1, 2, 60, 0, 4, err) dw_1.object.p_2.filename = ".\12345.bmp" string 是需要生成标签的数据内容。生成出一张图片,然后把图片放到数据窗口中即可。 注意,数据窗口的图片不能修改大小,让它自动大小,否则标签不正确。 可以设置标签字符类型,可以调整标签大小比例。 BCEncode.dll 3.00 版 可生成条形码的WINDOWS标准BITMAP句柄或BMP文件,具体用法请参考相应的示例文件! =========================================================================================== 这是一个条码生成函数库,可生成如下13种一维条码以及PDF417二维条码。 CODE39 标准三九码 EAN13 EAN 13码 CODE128 CODE 128码 CODE25 CODE 25码 ITF25 ITF 25码 UPCA UPC A 码 EAN8 EAN 8码 UPCE UPC E码 MATRIX25 Matrix 25码 EAN128 EAN 128码 CODEBAR CodeBar码 CODE93 Code 93码,可表示全部128个ASCII字符 FULLASCII39 全 ASCII 39码,可表示全部127个ASCII字符 函数库提供如下几个函数: MakeBarCode 生成一维条码的函数 MakeBarcodeBmpFile 生成一维条码BMP文件的函数 MakePDF417 生成PDF417条码的函数 具体用法请参考例子。 例子包括VB6和VC6的应用示例,包含了显示和打印条码的方法。 VB6示例: TESTVB.VBP VC6示例: TEST.DSW 注意:函数为32位版本,包括了一个标准的DLL文件和可在VC6中使用的静态连接库; 函数中显示字体使用了OCR-B-10 BT字体,在INCLUDE目录中有该字体文件,安装即可。 如果您在使用过程中有问题,请与我们联系: 地址:北京市海淀区中关村大街22号中科大厦A座707室、100080 电话:010-62543819、13910899265 传真:010-62628199 ============================================================================================ 函数调用接口: 接口用C语言进行描述,在VB或其它系统中使用,请对函数参数类型进行相应转换! -------------------------------------------------------------------------------------------- 一维条码生成函数 MakeBarCode 本函数可根据相应的参数生成条码位图 原型: BCENCODE_API HBITMAP WINAPI MakeBarCode(int nBType, LPSTR lpszText, int nNarrow =2 , int nWide = 5 , int nHeight = 100, int nRotate = ROTATE_0, int nReadable = READABLE_NULL, DWORD * err = NULL); 参数: nBType:条码码制,可是下列值这一: CODE39 标准三九码 EAN13 EAN 13码 CODE128 CODE 128码 CODE25 CODE 25码 ITF25 ITF 25码 UPCA UPC A 码 EAN8 EAN 8码 UPCE UPC E码 MATRIX25 Matrix 25码 EAN128 EAN 128码 CODEBAR CodeBar码 CODE93 Code 93码,可表示全部128个ASCII字符 FULLASCII39 全 ASCII 39码,,可表示全部127个ASCII字符 lpszText:条码字符串 一些码制会对该字符串进行修改: 标准39码和STANDARD93码,所有小写字符会被转换成大写。 EAN13、EAN8、UPCA、UPCE最后一位将被正确的校验字符代替,且UPCE第一位被设为“0”。 nNarrow:窄单元宽度,必须大于1。 nWide:宽单元宽度,对于标准三九码、CODE 25码、ITF 25码、Matrix 25码、CodeBar码, nWide必须是nNarrow的2至3位,其它码制,此参数未用。 nHeight:条码高度,必须大于1。 nRotate:旋转角度,可是下列值之一: ROTATE_0 不旋转 ROTATE_90 逆时针旋转90度 ROTATE_180 逆时针旋转180度 ROTATE_270 逆时针旋转270度 nReadable:可读性文字,可取下列值之一: READABLE_NULL 没有可读性文字 READABLE_LEFT 居左 READABLE_RIGHT 居右 READABLE_CENTER 居中 READABLE_FULL 撑满 READABLE_ABOVE 可读性文字在条码上方 对于EAN13、UPCA、EAN8和UPCE条码,此参数不可控制文字对齐方式及文字位置; 默认文字在条码下方,可以加上READABLE_ABOVE将文字设定在条码上方; 文字默认字体为OCR-B-10 BT,目前还不能改变字体名称和大小; 如条码高度太低,不足以放置可读性文字,则自动不产生可读性文字。 err:指向DWORD的指针,用于设置错误提示,返回错误信息。 如为NULL,则不显示错误提示,并且不返回错误码 否则指向的值可取下列值之一: DISABLE_DISPLAY_MESSAGE 不显示错误提示信息 ENABLE_DISPLAY_ERROR_MESSAGE 只显示错误信息 ENABLE_DISPLAY_WARNING_MESSAGE 只显示警告信息 ENABLE_DISPLAY_ALL_MESSAGE 显示错误和警告信息 返回值如下: ERR_SUCCESS 正常完成 ERR_INVALID_BTYPE 无效的码制 ERR_INVALID_NARROW 无效的nNarrow值 ERR_INVALID_HEIGHT 无效的码高 ERR_INVALID_CHAR 含有无效的字符 ERR_INVALID_WIDE 无效的nWide值 ERR_INVALID_LEN 无效的码长,如果是EAN13码,则码长必须是13位,UPCA为12位, UPCE和EAN8为8位,其它条码不能零长度,也不能超过最大允许长度。 ERR_INVALID_ROTATE 无效的旋转角度 ERR_MEMORY 内存不足 ERR_UNKNOWN 其它未知错误 返回值: 函数调用成功,返回生成位图的句柄,失败返回NULL,可通过设置err参数,取得错误码。 其它:函数中使用了OCR-B-10 BT字体,系统中安装该字体可保证条码字体显示正确。 -------------------------------------------------------------------------------------------- 一维条码图像生成函数 MakeBarcodeBmpFile 本函数可根据相应的参数生成条码位图文件 原型: BCENCODE_API DWORD WINAPI MakeBarcodeBmpFile(LPCTSTR lpszFileName, DWORD lDpi, int nBType, LPSTR lpszText, int nNarrow, int nWide, int nHeight, int nRotate, int nReadable, DWORD * err) 参数: lpszFileName:位图文件名 lDpi:位图的精度,点每英寸 其它参数与MakeBarCode相同 返回值: 调用成功,函数返回所生成文件的长度,失败返回0。 -------------------------------------------------------------------------------------------- PDF417条码生成函数 MakePDF417 本函数可根据相应的参数生成条码位图 原型: BCENCODE_API HBITMAP WINAPI MakePDF417(LPVOID lpData , DWORD dwBytes , unsigned int nRows, unsigned int nCols, unsigned int nEccLevel, unsigned int nRotate, unsigned int xScale, unsigned int yScale, DWORD * err ) 参数: lpData:指向要生成PDF417条码的数据; dwBytes:lpData所指向的数据区的长度; nRows、nCols:PDF417符号的行数和列数,如设为0,则自动计算行、列数; nEccLevel:PDF417符号的错误校正级别; nRotate:符号旋转角度,同MakeBarCode; xScale、yScale:PDF417符号X、Y方向的放大倍数; err:错误代码,同MakeBarCode; 下列错误代码为PDF417专用: ERR_INVALID_ECCLEVEL 无效的错误校正级别 ERR_INVALID_ROWCOL 无效的行、列数
点击下载该文件
|