1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| procedure DruckerraenderFestlegen; var PixelsPerInch, PhysPageSize, OffsetStart, PageRes: TPoint; begin Printer.PrinterIndex := Printer.Printers.IndexOf(druckername); PixelsPerInch.y := GetDeviceCaps(Printer.Handle, LOGPIXELSY); PixelsPerInch.x := GetDeviceCaps(Printer.Handle, LOGPIXELSX); Escape(Printer.Handle, GETPHYSPAGESIZE, 0, nil, @PhysPageSize); Escape(Printer.Handle, GETPRINTINGOFFSET, 0, nil, @OffsetStart); PageRes.y := GetDeviceCaps(Printer.Handle, VERTRES); PageRes.x := GetDeviceCaps(Printer.Handle, HORZRES); drucker_oberer_rand := OffsetStart.y / PixelsPerInch.y * 2.54; drucker_linker_rand := OffsetStart.x / PixelsPerInch.x * 2.54; end; |