本帖最后由 xingyangqing 于 2010-3-2 11:16 编辑
打印测试程序用于P1500平台;
共支持两种打印模式:
1. 使用自定义字库;可自定义字体大小;
2. 使用系统字库;
自定义字库的优点在于可自定义字体,最大可支持三种字体大小,如16*16的字体、24*24的字体等;缺点在于,字库文件需要载入内存,占用内存空间;当程序本身需要较大内存空间时,建议使用系统字库;系统字库的优点在于占用内存空间小;
按2键使用系统字库打印;
按0键导入字库,字库导入一次即可;
按1键是使用导入的字库打印;
该测试程序基于HUAYU库,HUAYU对基于串口的应用:打印进行了封装,并以GCF标准接口的形式提供:
使用打印的方法:
使用接口HuayuPrintConnection:- public interface HuayuPrintConnection extends HuayuConnection{
- public void setString(String str)throws HuayuException;
- public void setMode(int iMode) throws HuayuException;
- }
复制代码
使用系统字库打印的方法:
1. 打开打印机
conn = (HuayuPrintConnection)HuayuConnector.open("printSystemAsyn:1;buffer=500;row=2;gprs=no");
2. 设置字体
conn.setMode(HuayuConnector.PRINT_MODE_X1);
3. 设置字符
conn.setString("1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ");
4. 关闭打印机
conn.close();
使用自定义字库打印的方法:
由于字库以文件的形式存在,读取需要花费时间,建议在程序启动时载入字库:
1. 打开打印机
HuayuPrintConnection conn = null;
2. 载入字库
conn=(HuayuPrintConnection)HuayuConnector.open("printCustomAsyn:1;buffer=1000;lang=english;gprs=yes;row=2;small=0;medium=16;large=0");
3. 关闭
conn.close();
载入字库后,使用自定义字库打印:
1. 打开打印机
HuayuPrintConnection conn = null;
conn =(HuayuPrintConnection)HuayuConnector.open("printCustomAsyn:1;buffer=1000");
2. 设置打印
conn.setMode(HuayuConnector.MODE_MEDIUMFONT);
conn.setString("1");
conn.setString("ABCDEFGHIJKLMN");
3. 关闭打印机
conn.close();
注意:
1. 参数说明在javadoc;
2. 使用打印机接口时应特别注意异常处理;
打印机在使用时可能会因为无纸、卡纸、电压过低等原因停止打印,当异常发生时,会抛出HuayuException说明原因,应注意对异常的处理;
3. 分配的空间大小根据打印的内容而定;
如buffer=1000表示分配1000行的空间,如果要打印的数据过多而分配空间太小,可能会产生异常; |