怎么控制打印走纸?急问呀(50分)

  • 主题发起人 dishengchai
  • 开始时间
D

dishengchai

Unregistered / Unconfirmed
GUEST, unregistred user!
我想做一个控制打印走纸的程序,就是使得走纸的长度与打印内容的大小匹配。该怎样做。
我用下面一段程序是否就可以了?情况紧急,请高手指教
Printer.PrinterIndex := Printer.PrinterIndex;
  Printer.GetPrinter(Device, Driver, Port, hDMode);
  if hDMode <> 0 then
   begin
    pDMode := GlobalLock(hDMode);
    if pDMode <> nil then
    begin
     pDMode^.dmFields := pDMode^.dmFields or DM_PAPERSIZE or
               DM_PAPERLENGTH;
     pDMode^.dmPaperSize := DMPAPER_USER;
     pDMode^.dmPaperLength := Value * 10;
     pDMode^.dmFields := pDMode^.dmFields or DMBIN_MANUAL;
     pDMode^.dmDefaultSource := DMBIN_MANUAL;
     GlobalUnlock(hDMode);
    end;
   end;
   Printer.PrinterIndex := Printer.PrinterIndex
 
2000或NT下不行,因为不支持自定义纸张。
在2000或NT下可以用AddForm和GetForm两个API,
具体用法可以查MSDN或在大富翁里找,很多。
 
顶部