Impressao - apenas setar tamanho do papel

Top  Previous  Next

procedure SetaTamPapel(mLength, mWidth, mPaper : integer);

var

  ADevice, ADriver, APort: array[0..255of char;

  DeviceMode: THandle;

  M: PDevMode;

  s : string;

begin

  S := Printer.Printers[Printer.PrinterIndex];

  Printer.GetPrinter(ADevice, ADriver, APort, DeviceMode);

  M := GlobalLock(DeviceMode);

  if M <> nil then begin

    M^.dmPaperSize := mPaper;

    M^.dmFields := M^.dmFields or DM_PAPERLength;

    M^.dmPaperLength := mLength;

    M^.dmFields := M^.dmFields or DM_PAPERWidth;

    M^.dmPaperWidth := mWidth;

    Printer.SetPrinter(ADevice, ADriver, APort, DeviceMode);

  end;

end