如何控制打印机走纸
我现在要作发票套打,发票的纸张长度和宽度是自定义,我采用QuickRep来打印,我在quickrep中设置其papersize值为custom,在windows 2000打印机的属性设置中没有自定义纸张,有自定义纸张的但其范围不能满足要求。在打印的时候,打印机走纸并不是发票的高度,我试图用下面的方式来改变打印机的设置,但也无效果。各位大侠,帮帮忙,可急坏我了,谢谢!
var
ADevice, ADriver, APort: array[0..255] of char;
ADeviceMode: THandle;
DevMode :PDeviceMode;
begin
printer.PrinterIndex := printer.PrinterIndex;
printer.GetPrinter(ADevice, ADriver, APort,ADeviceMode);
if ADeviceMode <> 0 then
begin
DevMode := GlobalLock(ADeviceMode);
myDeviceMode.dmFields := myDeviceMode.dmFields or DM_COPIES;
myDeviceMode.dmPaperSize :=DMPAPER_USER;
myDeviceMode.dmFields := myDeviceMode.dmFields or DM_COPIES;
myDeviceMode.dmPaperLength :=10;
myDeviceMode.dmFields := myDeviceMode.dmFields or DM_COPIES;
myDeviceMode.dmPaperWidth :=10;
printer.SetPrinter(ADevice, ADriver, APort,ADeviceMode);
end
else
begin
raise Exception.Create('Could Not Initalize TDeviceMode Structure');
end;
end;