如题,网上看到好象有人利用PICTUREBOX打印,但是我不清楚,请问能指教一下吗,或者是其他方法,谢谢
解决方案 »
- 一次性将大量数据写入到EXCEL中
- 高手指点下 万分感谢! VB - INI
- 请求帮助!做一个很简单的EXE窗口
- 怎样在DataEnvironment中建立Recordset?
- 如何让多条记录相同的字段只显示一次?(特急)
- 向高手请教文本文件(1.txt)转成二进制文件(1.dat),谢谢!!!
- 如何用获得我的机器向网络发的信息?有什么软件有这个功能吗?
- 遇到Private Sub Command1_Click() 就运行不起来
- 在自已的程序中如何备份数据库?
- 如何让自己的软件像photonshop一样,随时可以用新的插件,像winamp一样可以用新的skin?
- 大家快来看一看,如何设置MSChart图表控件的属性?高分求助
- 如何做DLL文件啊!有什么用啊!
利用画图方式输出到普通打印机 条形码的编码规则不外乎是通过线条和线条间间隙的宽窄不同来表示二进制的1和0,只要我们了解了条形码的编码规则,完全可以用画图的方式在普通打印机上得到可以接受的效果。下面我们就使用最普遍的CODE39码进行讨论。 CODE39码的编码规则是:1、 每五条线表示一个字符; 2、 粗线表示1,细线表示0; 3、 线条间的间隙宽的表示1,窄的表示0;4、 五条线加上它们之间的四条间隙就是九位二进制编码,而且这九位中必定有三位是1,所以称为39码; 5、 条形码的首尾各一个*标识开始和结束 在我们的程序中,给常用的字符都进行编码,解读时先取线条粗细,再取间隙宽窄,如: 上图中的字符*就可以解读为 001101000,字符3解读为 110000100 下面就是我们给出的子过程: 注释: 将字符串 strBarCode 对应的条形码输出到缺省打印机 Private Sub PrintBarCode( _ ByVal strBarCode As String, _ Optional ByVal intXPos As Integer = 0, _ Optional ByVal intYPos As Integer = 0, _ Optional ByVal intPrintHeight As Integer = 10, _ Optional ByVal bolPrintText As Boolean = True _ ) 注释: 参数说明: 注释: strBarCode - 要打印的条形码字符串 注释: intXPos, intYPos - 打印条形码的左上角坐标(缺省为(0,0),坐标刻度为:毫米)注释: intHeight - 打印高度(缺省为一厘米,坐标刻度为:毫米) 注释: bolPrintText - 是否打印人工识别字符(缺省为true) 注释: "0"-"9","A-Z","-","%","$"和"*" 的条码编码格式,总共 40 个字符 Static strBarTable(39) As String 注释: 初始化条码编码格式表 strBarTable(0) = "001100100" 注释: 0 strBarTable(1) = "100010100" 注释: 1 strBarTable(2) = "010010100" 注释:‘ 移动画笔的位置 Private Declare Function MoveToEx Lib "gdi32" (ByVal hdc As Long, ByVal x As
Long, ByVal y As Long, lpPoint As POINTAPI) As Long ‘ 从画笔的当前位置到(x,y)画一条线 Private Declare Function LineTo Lib "gdi32" (ByVal hdc As Long, ByVal x As Long,
ByVal y As Long) As Long ‘ 在(x,y)处输出一个字符串 Private Declare Function TextOut Lib "gdi32" Alias "TextOutA" (ByVal hdc As
Long, ByVal x As Long, ByVal y As Long, ByVal lpString As String, ByVal nCount
As Long) As Long ‘ MoveToEx() 函数需要的参数 Private Type POINTAPI xp As Long yp As Long End Type Dim papi As POINTAPI 画线操作为(原来的Printer.Line函数): MoveToEx PrintDC, x + k, y, papi LineTo PrintDC, x + k, y + intHeight + 1 打印字符为(原来的Printer.Print函数): TextOut PrintDC, x, y + intHeight, Mid(strBC, i + 1, 1), 1
怎样可以打印多个条形码在同一张纸上啊
上边画线的代码我试过了.我用手持扫描跟本扫不到码.