Lodop中的打印項(xiàng)內(nèi)容位置定位,除了打印項(xiàng)本身的top,left值,也會受其他設(shè)定或打印機(jī)的影響。
打印開發(fā),先用虛擬打印機(jī)測試出正確結(jié)果,然后客戶端用打印維護(hù)微調(diào)
常見問題:
1.設(shè)置打印項(xiàng)相對于紙張居中,內(nèi)容沒有相對紙張居中。
打印項(xiàng)居中,但是如果打印項(xiàng)內(nèi)容本身有內(nèi)容邊距,里面的內(nèi)容沒有相對于自身的邊距居中,自然內(nèi)容也不會在紙張中居中。
2.打印項(xiàng)位置不對,不是設(shè)置的top,left值,打印內(nèi)容被切去了,顯示不出來,打印預(yù)覽有虛線,虛線外的內(nèi)容是空白。
虛線是打印機(jī)的可打區(qū)域,是物理的可打區(qū)域,和打印機(jī)有關(guān),可打區(qū)域外是不打印的。
(默認(rèn)打印項(xiàng)定位是以可打區(qū)域?yàn)榛c(diǎn),設(shè)置以紙張為基點(diǎn)可查看本博客另一篇博文:Lodop打印控件打印機(jī)可打區(qū)域的影響 設(shè)置紙張邊緣為基點(diǎn))
影響打印項(xiàng)在紙張中受到的可能邊距:
1.打印項(xiàng)本身的top,left值。
2.INITA初始化語句第一、二參數(shù)的偏移值。.
3.打印預(yù)覽中虛線引起的邊距(打印機(jī)的可打區(qū)域的影響)
打印項(xiàng)內(nèi)容受到的可能邊距:
1.打印項(xiàng)本身的top,left值。
2.INITA初始化語句第一、二參數(shù)的偏移值。
3.打印預(yù)覽中虛線引起的邊距(打印機(jī)的可打區(qū)域的影響)
4.打印項(xiàng)內(nèi)部的邊距(內(nèi)容的邊距,如超文本中的css樣式等)
各種邊距解釋:
1.打印項(xiàng)設(shè)置的邊距
添加Lodop各種打印項(xiàng)(例如ADD_PRINT_HTM(Top,Left,Width,Height,strHtmlContent)),參數(shù)中:
top是打印項(xiàng)在紙張內(nèi)的上邊距,打印項(xiàng)在紙張內(nèi)的上邊距,也就是在每張紙的上下起點(diǎn)位置。
left是打印項(xiàng)在紙張內(nèi)的左邊距,也就是在每張紙的左右起點(diǎn)位置
2.整體偏移導(dǎo)致的邊距
INITA初始化語句第一、二參數(shù)的偏移值,所有打印內(nèi)容針對紙張進(jìn)行偏移,偏移上邊距或左邊距。
3.打印機(jī)可打區(qū)域引起的邊距
和打印機(jī)有關(guān),預(yù)覽里以虛線的形式存在,虛線外是打印不出來的。默認(rèn)是以可打區(qū)域?yàn)檫吘墸梢杂谜Z句設(shè)置以紙張邊緣為基點(diǎn)進(jìn)行設(shè)計。
4.打印項(xiàng)內(nèi)部的邊距
例如超文本自帶的本身里的邊距,條碼等設(shè)置打印項(xiàng)多寬,可能里面實(shí)際內(nèi)容沒有多寬,因?yàn)槭軛l碼豎線合計值的影響。

PRINT_INITA的三、四參數(shù)與紙張無關(guān),這個只是設(shè)置打印設(shè)計可視化編輯區(qū)域的,PRINT_INITA的三、四參數(shù) 打印設(shè)計可視化編輯區(qū)域(與紙張無關(guān))
SET_PRINT_PAGESIZE的二、三參數(shù) 設(shè)置自定義紙張大小,第四參數(shù)紙張名稱。

出現(xiàn)邊距或位置不對,可先用虛擬打印機(jī)測試一下。
如果虛擬打印機(jī)不正常,可排查代碼問題。例如PRINT_INITA初始化語句第一、二參數(shù)不為0,打印項(xiàng)內(nèi)部邊距。
如果虛擬打印機(jī)正常,在預(yù)覽里查看一下,真實(shí)打印機(jī)自定義紙張是否生效,是否有打印機(jī)可打區(qū)域的影響以及打印機(jī)或打印機(jī)驅(qū)動問題。
用虛擬打印機(jī)測試正常,用真實(shí)打印機(jī)預(yù)覽也沒有空白邊距,就是走紙的時候位置不對,有空白邊距:
正常情況下預(yù)覽是打印機(jī)的反顯,打印機(jī)如果預(yù)覽正常,打印不正常,只能和打印機(jī)驅(qū)動,或這打印機(jī)
實(shí)體打印機(jī)是否在初始位置輸出,或打印機(jī)初始走紙位置不正確,聯(lián)系打印機(jī)廠商確認(rèn)一下。
如果確認(rèn)真實(shí)打印機(jī)預(yù)覽正常,打印不正常,重裝打印機(jī)驅(qū)動試試,如果重裝驅(qū)動沒有西效果。
實(shí)體打印機(jī)是否在初始位置輸出,或打印機(jī)初始走紙位置不正確,聯(lián)系打印機(jī)廠商確認(rèn)一下。
該文章在 2023/9/27 12:12:16 編輯過