Avatar billede athlon-pascal Juniormester
11. august 2003 - 16:10 Der er 6 kommentarer og
1 løsning

Printer.PageWidth, Printer.PageHeight og papirets størrelse

Printer.PageWidth, Printer.PageHeight og papirets faktiske størrelse.

Jeg har en printer der ikke kan udskrive til kant. Når jeg bruger Printer.Canvas til at udskrive, så har jeg lavet det sådan at der også kommer margin. Men den margin jeg sætter, passer ikke helt.
Hvis jeg ikke sætter nogen margin, så kommer der alligevel en lille margin.

Derfor vil jeg gerne vide, hvordan man finder ud af hvor stor denne "standard-margin" er, så jeg kan sætte min margin så den faktisk passer.
Avatar billede Slettet bruger
11. august 2003 - 16:15 #1
Avatar billede athlon-pascal Juniormester
11. august 2003 - 16:21 #2
hejhej -> Det ser jo meget rigtigt ud, jeg vil lige teste det :-)
Avatar billede athlon-pascal Juniormester
11. august 2003 - 16:51 #3
Ja, det var bare det der skulle til :-)
Hvis du lægger et svar, kan jeg lukke spørgsmålet :-)
Da det i min kode er nemmest at få tallene som "printer-pixels", er jeg nu endt med følgende kode:

type
  TMargins = record
    Left,
    Top,
    Right,
    Bottom: Real;
  end;

procedure GetPrinterMargins(var Margins: TMargins);
var
  PhysPageSize: TPoint;
  OffsetStart: TPoint;
  PageRes: TPoint;
begin
  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);
  // Top Margin
  Margins.Top := OffsetStart.y;
  // Left Margin
  Margins.Left := OffsetStart.x;
  // Bottom Margin
  Margins.Bottom := PhysPageSize.y - PageRes.y - OffsetStart.y;
  // Right Margin
  Margins.Right := PhysPageSize.x - PageRes.x - OffsetStart.x;
end;
Avatar billede Slettet bruger
11. august 2003 - 16:52 #4
Svar :-)
Avatar billede Slettet bruger
11. august 2003 - 16:57 #5
Takker for point :-)
Avatar billede athlon-pascal Juniormester
11. august 2003 - 17:02 #6
hejhej -> Det er vist forbeholdt mig at sige tak :-)
(Et svar er altid mere værd end de points svarer får, og så er det lige meget om det er 30, 200 eller 2000 points)
Avatar billede Slettet bruger
11. august 2003 - 18:09 #7
Skal nok lade være med at gøre det igen ;-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester