線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:2760
推到 Plurk!
推到 Facebook!

若200張就差了1cm了對一些特別的報表來說 就是不能差這麼大的距離請問先進們有沒有方法處理這種問題

答題得分者是:ko
huangeider
高階會員


發表:288
回覆:492
積分:231
註冊:2003-02-26

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-03-07 10:31:32 IP:210.201.xxx.xxx 未訂閱
小弟想印寬20高10的paper若印一張問題並不大 但印個100張連印則第一張與第100張則差距甚大 除了把紙張調到剛好的寬和高但paper只能調到cm 以下2位若印一張差0.005mm連印100張就差5mm了 若200張就差了1cm了對一些特別的報表來說 就是不能差這麼大的距離 請問先進們有沒有方法處理這種問題? aric
chih
版主


發表:48
回覆:1186
積分:639
註冊:2002-04-02

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-03-07 11:40:24 IP:211.74.xxx.xxx 未訂閱
連續報表紙紙張厚度也會影響,你試一下看看,再TitleBand的beforeprint裡面指定該Band每次列印前的TOP,看看能不能改善... TRY TRY SEE
ko
資深會員


發表:28
回覆:785
積分:444
註冊:2002-08-14

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-03-07 17:39:30 IP:61.221.xxx.xxx 未訂閱
huangeider你好: 這一般都是印表機設定的問題,要測試可能要真的粉久了!!! 不過還是要試一試拉!! 開始-->設定-->印表機-->檔案-->伺服器內容-->建立新格式 ... .. 然後一點一點試!! 看哪一種size才是你的最愛!!! 我一般都是 >
------
======================
昏睡~
不昏睡~
不由昏睡~
領航天使
站長


發表:12216
回覆:4186
積分:4084
註冊:2001-07-25

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-03-07 21:42:01 IP:210.202.xxx.xxx 未訂閱
引言: 小弟想印寬20高10的paper若印一張問題並不大 但印個100張連印則第一張與第100張則差距甚大 除了把紙張調到剛好的寬和高但paper只能調到cm 以下2位若印一張差0.005mm連印100張就差5mm了 若200張就差了1cm了對一些特別的報表來說 就是不能差這麼大的距離 請問先進們有沒有方法處理這種問題? aric
請問您的報表紙一單張有幾個孔, 或說是用全張幾孔的紙去幾等分的, 這樣我才能幫您! ~~~Delphi K.Top討論區站長~~~
------
~~~Delphi K.Top討論區站長~~~
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-03-08 00:22:16 IP:61.66.xxx.xxx 未訂閱
引言: 小弟想印寬20高10的paper若印一張問題並不大 但印個100張連印則第一張與第100張則差距甚大 除了把紙張調到剛好的寬和高但paper只能調到cm 以下2位若印一張差0.005mm連印100張就差5mm了 若200張就差了1cm了對一些特別的報表來說 就是不能差這麼大的距離 請問先進們有沒有方法處理這種問題? aric
這的確是很煩人, 我也有經驗, 但並不是真能解決這個問題, 而是我 測試看印到第幾張出現誤差到客戶無法接受的情況, 我在印表中設計 一個中斷值, 當達到這個值系統就暫停列印, 並發出訊息要求使用者 重新調整紙張後再往下做! 其他我大概想不到其他方法, 不過使用QR的話, 因為基準值可以用mm(或inch), 我有做過誤差率在 0.0001以下, 換具話說10000張才有誤差, 可以說是沒有跑位了, 其他 的報表系統多半都以pixel為基準, 其誤差率就差蠻多了! 其次, 看來你應該是用標籤紙吧!因為標籤紙沒有像報表紙有明確的切裁點 通常是4張或8張為一份 還有另一個做法, 不要設單一張規格為一份報表 也就是一小張為10x20, 我通常會計算4張或8張所要的高度(含間距), 然後 將紙張大小設定為4/8張大小, 讓電腦以這樣為一份來印, 1.則其誤差率可以由原來的1小張降低為1大張發生誤差率, 那就可以提高4/8倍的列印張數 2.因為報表每印一份即會重設紙張大小(如果你設定參數要重新設定的話), 那每一張印一份則重設會造成job大塞車及浪費資源, 4/8張才重設一次, 不但速度提昇, job也會少很多呢! 以上是個人經驗, 提供參考~~~~ 發表人 - P.D. 於 2003/03/08 00:30:28
huangeider
高階會員


發表:288
回覆:492
積分:231
註冊:2003-02-26

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-03-08 19:33:26 IP:210.201.xxx.xxx 未訂閱
引言:
引言: 小弟想印寬20高10的paper若印一張問題並不大 但印個100張連印則第一張與第100張則差距甚大 除了把紙張調到剛好的寬和高但paper只能調到cm 以下2位若印一張差0.005mm連印100張就差5mm了 若200張就差了1cm了對一些特別的報表來說 就是不能差這麼大的距離 請問先進們有沒有方法處理這種問題? aric 我的報表是12孔的
請問您的報表紙一單張有幾個孔, 或說是用全張幾孔的紙去幾等分的, 這樣我才能幫您! ~~~Delphi K.Top討論區站長~~~
aric
jackkcg
站務副站長


發表:891
回覆:1050
積分:848
註冊:2002-03-23

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-03-08 22:19:08 IP:61.64.xxx.xxx 未訂閱
其實 上述各位大大的方式都會用到 不過我自己的實驗應該以 ko兄 的方式 比較實現準確 但是也是最痛的方式 win2000 的精準度約0.01 所以粉淚 因為我們以一般制式的 通訊標籤為3.8*7.0 為例 光測試0.01的正負質就頭大了 以前使用dos下的 倚天列印方式 可以300張都不會有嚴重偏差之問題 但是那倚天的方式 我看還是粉難 (等天使答覆)哈哈 我使用的紙張也許不同 所以只能說你先自己調size測試 得知列印偏移的最大張數 在此動手腳 不過我的方式 其實如 ko 兄說的 當你的2000紙張精準值知道之後 就不會偏差 這摸大了 注意 因為2000的列印準確度是0.01 也許還有更方便的方式 不過庵是這樣處理過的 ********************************************************* 哈哈&兵燹 最會的2大絕招 這個不會與那個也不會 哈哈哈 粉好 Delphi K.Top的K.Top分兩個字解釋Top代表尖端的意思,希望本討論區能提供Delphi的尖端新知 K.表Knowlege 知識,就是本站的標語:Open our mind to make knowledge together! 希望能大家敞開心胸,將知識寶庫結合一起
------
**********************************************************
哈哈&兵燹
最會的2大絕招 這個不會與那個也不會 哈哈哈 粉好

Delphi K.Top的K.Top分兩個字解釋Top代表尖端的意思,希望本討論區能提供Delphi的尖端新知
K.表Knowlege 知識,就是本站的標語:Open our mind
huangeider
高階會員


發表:288
回覆:492
積分:231
註冊:2003-02-26

發送簡訊給我
#8 引用回覆 回覆 發表時間:2003-03-09 02:00:08 IP:61.219.xxx.xxx 未訂閱
引言: 其實 上述各位大大的方式都會用到 不過我自己的實驗應該以 ko兄 的方式 比較實現準確 但是也是最痛的方式 win2000 的精準度約0.01 所以粉淚 因為我們以一般制式的 通訊標籤為3.8*7.0 為例 光測試0.01的正負質就頭大了 以前使用dos下的 倚天列印方式 可以300張都不會有嚴重偏差之問題 但是那倚天的方式 我看還是粉難 (等天使答覆)哈哈 我使用的紙張也許不同 所以只能說你先自己調size測試 得知列印偏移的最大張數 在此動手腳 不過我的方式 其實如 ko 兄說的 當你的2000紙張精準值知道之後 就不會偏差 這摸大了 注意 因為2000的列印準確度是0.01 也許還有更方便的方式 不過庵是這樣處理過的 ********************************************************* 哈哈&兵燹 最會的2大絕招 這個不會與那個也不會 哈哈哈 粉好 Delphi K.Top的K.Top分兩個字解釋Top代表尖端的意思,希望本討論區能提供Delphi的尖端新知 K.表Knowlege 知識,就是本站的標語:Open our mind to make knowledge together! 希望能大家敞開心胸,將知識寶庫結合一起
其實我也是像 jackkcg & Ko 兄兩位所講的改紙張格式 然後慢慢調經過近三天的測試還是會移位只能連續印7張 我在17與16.99發現17cm的話會在下一張往下慢慢移動 16.99cm的話則往上慢慢移動 不知如何是好 我想今天再測一次看看是不是我沒測好 或是印表機的問題 再向各位報告 aric
領航天使
站長


發表:12216
回覆:4186
積分:4084
註冊:2001-07-25

發送簡訊給我
#9 引用回覆 回覆 發表時間:2003-03-09 06:29:36 IP:192.168.xxx.xxx 未訂閱
您還沒回答我的問題? 連續式套表報表紙一個孔距為0.5 inch, 若您的報表為整數孔數用inch為單位去設定紙長一定會準, 若為非整數孔數的話就會有誤差, 原因為印表機的實際硬體滾動單位為 1/180 inch, 我的解決辦法為透過直接印表輸出去控制印表機的指令, Direct Print! 可否再詳細告訴我您紙張的規格? 您的報表紙一單張有幾個孔? 或說是用全張幾孔的紙去幾等分的? 這樣我才能幫您! ~~~Delphi K.Top討論區站長~~~
------
~~~Delphi K.Top討論區站長~~~
huangeider
高階會員


發表:288
回覆:492
積分:231
註冊:2003-02-26

發送簡訊給我
#10 引用回覆 回覆 發表時間:2003-03-09 13:17:15 IP:210.201.xxx.xxx 未訂閱
引言: 您還沒回答我的問題? 連續式套表報表紙一個孔距為0.5 inch, 若您的報表為整數孔數用inch為單位去設定紙長一定會準, 若為非整數孔數的話就會有誤差, 原因為印表機的實際硬體滾動單位為 1/180 inch, 我的解決辦法為透過直接印表輸出去控制印表機的指令, Direct Print! 可否再詳細告訴我您紙張的規格? 您的報表紙一單張有幾個孔? 或說是用全張幾孔的紙去幾等分的? 這樣我才能幫您! ~~~Delphi K.Top討論區站長~~~
回應 領航兄 我的報表是24height*17width 13孔的支票 aric
jackkcg
站務副站長


發表:891
回覆:1050
積分:848
註冊:2002-03-23

發送簡訊給我
#11 引用回覆 回覆 發表時間:2003-03-09 15:22:43 IP:61.64.xxx.xxx 未訂閱
其實我也是像 jackkcg & Ko 兄兩位所講的改紙張格式 然後慢慢調經過近三天的測試還是會移位只能連續印7張 我在17與16.99發現17cm的話會在下一張往下慢慢移動 16.99cm的話則往上慢慢移動 不知如何是好 我想今天再測一次看看是不是我沒測好 或是印表機的問題 再向各位報告 我的測試 是 30~100張都不會有你的情況 所以我只能說 你在測試 真正的 (小問題)vs = (大問題) 建議你在看看 【問題】在Windows 2000 下 Qreport 的 Custom size 問題 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=25007 【BCB】【問題】BMP檔列印,不同的印表機,結果不相同. http://delphi.ktop.com.tw/topic.php?TOPIC_ID=26249 以我的 高3.8*寬7.0 這列印7張之後=與a4大小 不過你的值如正確 也就是30~100張沒有問題 我測 發票紙 (高14.01*寬7.0) 一天 也有500張以上 也無問題 由於windows無法控制 印表機之 後退 所以你需設一張 預設 清除校正之 top 你再試試 ********************************************************* 哈哈&兵燹 最會的2大絕招 這個不會與那個也不會 哈哈哈 粉好 Delphi K.Top的K.Top分兩個字解釋Top代表尖端的意思,希望本討論區能提供Delphi的尖端新知 K.表Knowlege 知識,就是本站的標語:Open our mind to make knowledge together! 希望能大家敞開心胸,將知識寶庫結合一起
------
**********************************************************
哈哈&兵燹
最會的2大絕招 這個不會與那個也不會 哈哈哈 粉好

Delphi K.Top的K.Top分兩個字解釋Top代表尖端的意思,希望本討論區能提供Delphi的尖端新知
K.表Knowlege 知識,就是本站的標語:Open our mind
領航天使
站長


發表:12216
回覆:4186
積分:4084
註冊:2001-07-25

發送簡訊給我
#12 引用回覆 回覆 發表時間:2003-03-09 21:56:21 IP:192.168.xxx.xxx 未訂閱
引言: 其實我也是像 jackkcg & Ko 兄兩位所講的改紙張格式 然後慢慢調經過近三天的測試還是會移位只能連續印7張 我在17與16.99發現17cm的話會在下一張往下慢慢移動 16.99cm的話則往上慢慢移動 不知如何是好 我想今天再測一次看看是不是我沒測好 或是印表機的問題 再向各位報告
13孔應為 13*2.54=16.51cm才對啊, 若您可以在印完一張後補一個 1/180寸的印表前進動作, 是否可以校正成功? directprint的動作可以參考我的程式 unit Unit1; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.DFM} uses printers; procedure DirectPrint(s:string); type TPrnBuffRec = record BuffLength : word; Buffer : array [0..255] of char; end; var Buff : TPrnBuffRec; i,n:integer; c:char; begin n:=length(s); for i:=1 to n do begin c:=s[i]; Buff.Buffer[i-1]:=c; end; Buff.BuffLength := n; Escape(Printer.Canvas.Handle, PASSTHROUGH, 0, @Buff, nil); end; procedure TForm1.Button1Click(Sender: TObject); begin DirectPrint('This is printer ABC !' #13#10); end; end. 至於前進1/180寸的動作請先查印表機的指令! try it! ~~~Delphi K.Top討論區站長~~~
------
~~~Delphi K.Top討論區站長~~~
huangeider
高階會員


發表:288
回覆:492
積分:231
註冊:2003-02-26

發送簡訊給我
#13 引用回覆 回覆 發表時間:2003-03-10 13:42:09 IP:210.201.xxx.xxx 未訂閱
引言:
引言: 其實我也是像 jackkcg & Ko 兄兩位所講的改紙張格式 然後慢慢調經過近三天的測試還是會移位只能連續印7張 我在17與16.99發現17cm的話會在下一張往下慢慢移動 16.99cm的話則往上慢慢移動 不知如何是好 我想今天再測一次看看是不是我沒測好 或是印表機的問題 再向各位報告
13孔應為 13*2.54=16.51cm才對啊, 若您可以在印完一張後補一個 1/180寸的印表前進動作, 是否可以校正成功? directprint的動作可以參考我的程式 unit Unit1; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.DFM} uses printers; procedure DirectPrint(s:string); type TPrnBuffRec = record BuffLength : word; Buffer : array [0..255] of char; end; var Buff : TPrnBuffRec; i,n:integer; c:char; begin n:=length(s); for i:=1 to n do begin c:=s[i]; Buff.Buffer[i-1]:=c; end; Buff.BuffLength := n; Escape(Printer.Canvas.Handle, PASSTHROUGH, 0, @Buff, nil); end; procedure TForm1.Button1Click(Sender: TObject); begin DirectPrint('This is printer ABC !' #13#10); end; end. 至於前進1/180寸的動作請先查印表機的指令! try it! ~~~Delphi K.Top討論區站長~~~
我測試的結果是用孔數*2.54是很準確的 但這支票的規格是17公分左右 跟一般點陣連續印表的a4紙的孔距不同 在最後一孔跟第一孔與上下頁緣的距離 比在a4的距離較長所以用這個模式似不可行 不過我還是把紙的精準值測出來了 直接設定了紙張大小幾十張沒問題 不過也是有點兒費時就是了 謝謝大伙的幫忙 這次得用骰子來point結案
系統時間:2024-04-25 3:37:52
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!