自定义纸张的一个小问题?(50分)

  • 主题发起人 主题发起人 Fins
  • 开始时间 开始时间
F

Fins

Unregistered / Unconfirmed
GUEST, unregistred user!
我使用的纸张自定义的纸张,用打印纸打印时,第一次打印正常,但第二张打印时,
页头向下移动了一段距离,第三张时又错了一大段.
定义纸张大小时用的是纸张的实际长度.不知是什么问题,望请各位高手指点一下.
还有一个小问题,如何把分给别人,我上次出了一个问题,已经有人答复了我,解决了
一个大问题,但我不知如何把积分给他.望请高手指点.[:)]
 
procedure printer_set;
var
Device:Array[0..256] of Char;
Driver:Array[0..256] of Char;
Port:Array[0..32] of Char;
hDMode:THandle;
pDMode:PDevMode;

begin

Printer.GetPrinter(Device,Driver,Port,hDMode);
if hDMode<>0 then

pDMode:=GLobalLock(hDMode);
if pDMode<>nil then

begin

pDMode^.dmPaperSize:=256;
pDMode^.dmPaperLength:=900;//长
pDMode^.dmPaperWidth:=2900;//宽

pDMode^.dmFields:=pDMode^.dmFields or DM_PAPERSIZE;
pDMode^.dmFields:=pDMode^.dmFields or DM_PAPERLENGTH;
pDMode^.dmFields:=pDMode^.dmFields or DM_PAPERWIDTH;
end;

ResetDC(Printer.Handle,pDMode^);
GLobalUnLock(hDMode);

end;

至于更详细的见《DELPHI开发人员指南》
 
选择结束问题讨论就可以打分了。
 
多人接受答案了。
 
我好像在DELPHI报表设计器中发现有一个自定义纸张的类型.我就是用的那个.
对了<DELPHI开发人员指南>什么地方有下载或购买.不过最好是有下载的[:D][:D]
 
后退
顶部