我在做打印程序的时候,定义了纸张大小,但是打印机不认是怎么回事?(只剩95分了,全给了,大家帮帮我啊)(95分)

  • 主题发起人 主题发起人 小小风
  • 开始时间 开始时间

小小风

Unregistered / Unconfirmed
GUEST, unregistred user!
用的是EPSON 1600KIII+ ,用的是后部推动式拖纸器的连续纸
程序中自定义了纸张大小,但是打印的时候打印机还是照着自己的方式出纸,和我设置的高度不一致
请问xp系统中能不能自定义纸张大小?为什么我在打印机属性中找不到自定义纸张大小?
为什么我在程序中设置了高度为93mm,怎么出来是210mm
 
如果是在98中,
在打印机的最后一项有自定义纸张属性,
但98只支持一个自定义纸张,
在xp下,可以定义和使用多个自定义纸张,
但定义是在选定对应的打印机后,在file->服务器属性中设置和定义的,
这点与98不同,不然你根本找不到自定义纸张的地方,
另外我也有一个问题想问一下:
在xp系统中如何使设置的屏幕保护密码有效,
可以设置,但一直无效,不知道是在何处相关的,
希望能交流一下!

 
临时在程序中设置纸张大小:
procedure SetPageCustomSize(X, Y: Integer);
var
Device: array[0..cchDeviceName] of Char;
Driver: array[0..MAX_PATH] of Char;
Port: array[0..32] of Char;
DeviceMode: THandle;
PDMode: PDevMode;
begin
Printer.GetPrinter(Device, Driver, Port, DeviceMode);
PDMode := GlobalLock(DeviceMode);
if PDMode <> nil then
begin
with PDMode^do
begin
dmPaperSize := 256;
dmPaperWidth := X;
dmPaperLength := Y;
dmFields := dmFields or DM_PAPERSIZE or DM_PAPERWIDTH or DM_PAPERLENGTH;
end;
GlobalUnlock(DeviceMode);
end;
end;
 
当然在XP可以设置自定义纸张:
如下操作:
开始---打印机及传真---文件--服务器属性---创建新格式---在格式描述中设置你的
自定义纸张就行了,注意保存一下
 
设置了大小,程序中也设置了
怎么就是不认!
你那个程序有没有resetDC,这个函数delphi中不会调用
请指点
 
在使用Printer的Canvas前调用有效呀,偶一直这么用,从票据到激光都有效。
 
re:设置了大小,程序中也设置了
怎么就是不认!
你那个程序有没有resetDC,这个函数delphi中不会调用
请指点
--------
在打印机里面的纸张设置要设置能自定义的纸张。打印纸纸张设置默认是A4
 
你的纸张大小超过了打印机的限制,你可以在控制面板里面看看
 
现在用了reportbuild 6,设置了纸张大小(宽:232,高:93)后
有些地方怎么预览有,可以打出来没有呢?
特别是上面和下面的文字,好像是被header和footer遮住了
不过去掉了header和footer还是只能预览,打印不出来
 
就是页面的上面一段和下面一段打印不出来
中间可以打印出来
 
可以给分了
打印机如果不是票据打印机底话,一般都有 一个 打印范围,边距离太小,超过了打印机抓纸极限所以打不出来
 
http://www.delphibbs.com/delphibbs/dispq.asp?lid=1958757
 
不同,宽度不会超出,因为用的是穿孔纸的宽度232mm,我在reportbuild中也可以选择
但是高度我设置了93mm,这个应该不会超出打印机范围吧?
可以就是在顶端和底端的一些文字就是显示出来,打印不出来
为什么?
 
后退
顶部