pb11 打印 自定义纸张_pb自定义纸张(连续走纸)
Pb中定制打印頁長實現連續打印
pb與打印機的通訊使用ASCII碼進行,其中標準ASCII碼包括可打印字符及非打印字符(控制碼),
打印機使用控制碼來定制打印機。大多數打印機指令使用控制碼escape作為其指令序列的第一個序列碼。
設置換行量(行距)1/8 英寸
ASCII碼 ESC 0
十進制碼 27 48
設置以行為單位的頁長
ASCII碼 ESC C n
十進制碼 27 67 n
其中n 為每頁行數范圍(1-127)
二、 PB中控制碼的傳送及定制頁長的實現
下面是具體的完成定制頁長打印數據窗口的程序(定制頁長為2.75英寸):
long ll_job
dw_print.reset()
ll_job = printopen()
if ll_job = -1 then
messagebox(gs_title,"打印機未準備好")
return
end if
//定制行距1/8英寸
PrintSend(ll_job, CHAR(27)+CHAR(48))
//設定頁長22行
PrintSend(ll_job, CHAR(27)+CHAR(67)+CHAR(22))
printdatawindow(ll_job,dw_print)
printclose(ll_job)
1英寸約等于2.5厘米
pb dw打印參數設置
[General]
units設置為3使用厘米計算頁邊距
[Print Specifications]
left margin
right margin
top ? margin
bottom margin
值的單位為units設置的計量單位
pb9.0.2自定義紙張
一、 ? ? ? ? ? ? 先決條件:
1、 ?PB的版本必須為9.0.2 build 7554 以上,否則請安裝PB補丁(安裝方法見后);
2、 ?我們將要使用的方法可以在任何版本的windows操作系統下使用;
3、 ?部分打印機不支持自定義紙張、網絡打印機不支持;
二、 ? ? ? ? ? ? 實現方法
1、設置打印機名稱
dw_1.Object.DataWindow.Print.PrinterName = "DJ Printer"
2、設置打印張大小為256(自定義紙張類型)
dw_1.Object.DataWindow.Print.Paper.Size = 256
3、設置紙張寬度(單位:毫米)
dw_1.object.datawindow.print.CustomPage.Width ? ? ? =245
4、設置紙張高度(單位:毫米)
dw_1.object.datawindow.print.CustomPage.length ? ? ? =178
5、利用函數修改:
dw_data.modify("datawindow.printer = '" + printername + "'")
dw_data.Modify("DataWindow.Print.Paper.Size=256")
dw_data.Modify("DataWindow.Print.CustomPage.Length = " + height)
dw_data.Modify("DataWindow.Print.CustomPage.Width = " + width)
dw_data.Modify("DataWindow.Print.Margin.left = " + left)
dw_data.Modify("DataWindow.Print.Margin.right = " + right)
dw_data.Modify("DataWindow.Print.Margin.top = " + top)
dw_data.Modify("DataWindow.Print.Margin.bottom = " + bottom)
通過這種方法,可以指定打印機,自定義紙張的寬度高度,設置上下左右邊距,但是有個問題。打印的時候,如果打印機的默認紙張是A4,打印完之后,依然會按A4的高度走紙,這個如何控制走紙呢。還是什么地方有錯誤。
把數據窗口的units 從 1/1000centimeter(3) 改為 powerbuilder(0) 就好
總結
以上是生活随笔為你收集整理的pb11 打印 自定义纸张_pb自定义纸张(连续走纸)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python菜单函数_Python 自学
- 下一篇: 改进版的CBOW模型