简要:
杭州中岛实业有限公司提提供LEDEN标签机WINDOWS DLL动态数据库,在一些特殊的应用行业和系统集成商上,方便技术工程师系统集成。目前已应用在高速公路收费,景区门票收费,场景式售票,各类车票售票,玻璃软件应用,物流供应链及仓库系统,医疗腕带打印等等。
正文:
1. 动态连结函式库(DLL)使用…………………………………………………1
1-1. DLL函式库表………………………………………………………………1
1-2. DLL函式库使用说明………………………………………………………1
1-3. 使用范例……………………………………………………………………4
1. 动态连结函式库(DLL)的使用
我们提供了使用于WindowsNT/2000/XP等操作系统的DLL给使用者,档名为lg888.dll。使用该DLL之前必须先安装由Scientific Software Tools, Inc.所撰写的DLPortIO,
档名为port95nt.exe。若未先安装DLPortIO时,使用lg888.dll则会出现 ”.dll not found” 的错误讯息。
1-1. DLL 函式库表
函数
使用说明
1. openport
指定标签机的输出接口
2. setup
设定标签机的相关资料
3. sendcommand
送出LG836,838,888 内部指令
4. intloadimage
载入图形档到标签机内部存储体(PCX or BMP)
5. extloadimage
载入图形档到标签机外加存储体(PCX or BMP)
6. closeport
关闭所开启的输出接口.
7. isready
检查标签机是否处于可打印的状态.
8. ecTextOut
指定True Type字型做为输出文字的字型.
9. ecTextOutR
指定True Type字型作为输出文字的字型,并提
供字型旋转角度的设定
10.ecTextDownLoad
指定True Type字型和旋转角度下载至存储体,可利用Y命令输出该字型
11.setbaudrate
设定PC的Baud Rate
12.putimage
打印多色调图形(支援BMP和JPG)及设定图形的旋转角度,并以半色调技术处理后输出
13. downloadimage
下载多色调图形(支援BMP和JPG)及设定图形的旋转角度至存储体中,可利用Y命令输出该图形
1-2. DLL 函式库使用说明
1. openport(n)
功能说明:
指定标签机的输出接口
输入参数:
n : (字串) 指定输出接口的伐表号
n = 0 ; LPT1
n = 1 ; COM1
n = 2 ; COM2
n = 3 ; COM3
n = 4 ; COM4
n = 5 ; LPT2
2. setup(a,b,c,d,e,f)
功能说明:
设定标签机的相关资料
输入参数:
a:
(数值) 设定标签尺寸; 单位为 mm
b:
(数值) 设定打印的明暗度 (0~19)
c:
(数值) 设定打印速度 (1~3)
d:
(数值) 设定所使用的标签种类
0: 有间距的标签纸
1: 连续纸
2: 黑线标记的标签纸
e:
(数值) 设定间距的宽度, 若不使用, 将其设为 0 (单位: mm)
f:
(数值) 设定黑线的宽度, 若不使用, 将其设为 0 (单位: mm)
3. sendcommand(command)
功能说明:
送出LG836,838,888 内部指令
输入参数:
(字串) LG836,838,888 内部指令
4. intloadimage(filename, image_name,image_type)
功能说明:
载入图形档到标签机内部存储体
输入参数:
filename -
(字串) 图形档的档名
image_name -
(字串) 载入图形的名称, 可以使用与图形档相同的名称或另外指定
image_type -
(字串) 载入图形的格式
pcx : 以 PCX 为副档名的图形档
bmp : 以 BMP 为副档名的图形档
5. extloadimage(filename, image_name,image_type)
功能说明:
载入图形档到标签机外加存储体
输入参数:
filename -
(字串) 图形档的档名
image_name -
(字串) 载入图形的名称, 可以使用与图形档相同的名称或另外指定
image_type -
(字串) 载入图形的格式
pcx : 以 PCX 为副档名的图形档
bmp : 以 BMP 为副档名的图形档
6. closeport()
功能说明:
关闭所开启的输出接口
输入参数:
无
7. isready()
功能说明:
检查标签机是否处于可打印的状态
输入参数:
无
传回值:
1 = (数值) 表示标签机可以开始接收资料
0 = (数值) 表示标签机无法接收资料
8. ecTextOut(x,y,b,c,d)
功能说明:
指定 WINDOW 中所提供的字型做为输出文字的字型
输入参数:
x: (数值) 设定文字所在位置的 X 轴座标(dots)
y: (数值) 设定文字所在位置的 Y 轴座标(dots)
b: (数值) 设定文字的高度
c: (字串) 指定所使用的字型名称
d: (字串) 所要打印的文字资料
9. ecTextOutR(x,y,b,c,d,e,f,g)
功能说明:
指定True Type字型作为输出文字的字型,并提供字型旋转角度的设定
输入参数:
x:(数值)设定文字所在位置的X轴座标(dots)
y:(数值)设定文字所在位置的Y轴座标(dots)
b:(数值)设定文字的高度
c:(字串)指定所使用的字型名称
d:(字串)所要打印的文字资料
e:(数值)设定文字宽度(预设值=0)
f :(数值)设定文字线条粗细(预设值=40,容许调整值为 0~100)
g : (数值)输出文字的旋转角度:
0(旋转零度), 90(旋转90度), 180 (旋转180度)和 270(旋转270度)
传回值:
1 = (数值) 成功
0 = (数值) 失败
10. ecTextDownLoad(b,c,d,e,f,g,name)
功能说明:
指定True Type字型和旋转角度下载至存储体,可利用Y命令
输入参数:
b: (数值) 设定文字的高度
c: (字串) 指定所使用的字型名称
d: (字串) 所要下载的文字资料
e: (数值) 设定文字宽度
f: (数值)设定文字线条粗细(预设值=40,容许调整值为 0~100).
g: (数值) 输出文字的旋转角度:
0(旋转零度), 90(旋转90度), 180 (旋转180度)和 270(旋转270
度)
name: (字串)指定字型在存储体中的名称,以便使用Y命令 (EZPL
command)输出该字型
传回值:
1 = (数值) 成功
0 = (数值) 失败
11. setbaudrate(n)
功能说明:
设定PC的Baud Rate
输入参数:
n: (数值) 设定值可选择 4800, 9600, 19200, 38400.
传回值:
无
12. putimage(x,y,filename,degree)
功能说明:
打印多色调图形(支援BMP和JPG)及设定图形的旋转角度,并以半色调技术处理后输出
输入参数:
x : (数值)设定图形所在位置的 X 轴座标(dots)
y : (数值) 设定图形所在位置的 Y 轴座标(dots)
filename : (字串)图档名称(支援BMP和JPG图档格式)
degree: (数值)旋转角度: 0(不旋转), 90(旋转90度)
传回值:
1 = (数值) 成功
0 = (数值) 失败
13. downloadimage(filename,degree,name)
功能说明:
可下载多色调图形(支援BMP和JPG)及设定图形的旋转角度至存储体中,可利用Y命令输出该图形
输入参数:
filename :
(字串)图档名称(支援BMP和JPG图档格式)
degree:
(数值)旋转角度: 0(不旋转), 90(旋转90度)
name :
(字串)指定图形在存储体中的名称,以便使用Y命令
(EZPLcommand)输出该图形
传回值:
1 = (数值) 成功
0 = (数值) 失败
1-3. 使用范例
A. FoxPro 5.0 for Windows 95
path="c:\userdata\qlabel31\lg888.dll"
declare mb[10]
value=0
i=0
j=0
for i=1 to 10
mb[i]=0
next
SET LIBRARY TO foxtools.fll ADDITIVE
mb [1]= RegFn32("openport","C","",path)
mb [2] = RegFn32("setup","IIIIII","",path)
mb [3] = RegFn32("closeport","","",path)
mb [4] = RegFn32("sendcommand","C","",path)
mb [5] = RegFn32("intloadimage","CCC","",path)
mb [6] = RegFn32("extloadimage","CCC","",path)
mb [7] = RegFn32("isready","","I",path)
mb [8] = RegFn32("ecTextOut","IIICC","",path)
for j=1 to 7
if mb[j]= -1
RELEASE LIBRARY FoxTools.FLL
WAIT WINDOW "FAILURE!!" NOWAIT
RETURN
endif
next
value = CallFn(mb[7])
if value=1
mem1="变数测试--使用TT的中文字"
= CallFn(mb[1],"0")
= CallFn(mb[2],25,5,2,1,0,0)
= CallFn(mb[4],"^P1")
= CallFn(mb[4],"^L")
= CallFn(mb[4],"BA,15,100,2,4,25,0,1,12345")
= CallFn(mb[4],"AZ,10,10,1,1,1,0,&mem1")
= CallFn(mb[8],10,45,50,"细明体","Window 中文字型")
= CallFn(mb[4],"E")
else
wait windows "PRINTER ERROR" nowait
endif
RELEASE LIBRARY FoxTools.FLL
B. Visual Basic 5.0 for Windows 98
Private Declare Sub setup Lib "Ez98.dll" (ByVal a%, ByVal b%, ByVal c%, ByVal d%, ByVal e%, ByVal f%)
Private Declare Sub openport Lib "Ez98.dll" (ByVal command$)
Private Declare Sub sendcommand Lib "Ez98.dll" (ByVal command$)
Private Declare Sub intloadimage Lib "Ez98.dll" (ByVal filename$, ByVal image_name$, ByVal image_type$)
Private Declare Sub extloadimage Lib "Ez98.dll" (ByVal filename$, ByVal image_name$, ByVal image_type$)
Private Declare Sub ecTextOut Lib "Ez98.dll" (ByVal x%, ByVal y%, ByVal b%, ByVal c$, ByVal d$)
Private Declare Sub closeport Lib "Ez98.dll" ()
Private Sub command1_Click()
Call openport("0")
Call setup(30, 7, 2, 1, 0, 0)
Call sendcommand("W70")
Call sendcommand("^P1")
Call sendcommand("^L")
Call sendcommand("AC,20,60,1,1,1,0,TEST")
Call ecTextOut(20, 10, 34, "标楷体", "中文测试")
Call sendcommand("E")
Call closeport
End Sub