Autor Beitrag
OliverN_26
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 252

Win7 64-Bit, WinXP SP3
Delphi 7 Enterprise
BeitragVerfasst: Do 12.11.09 01:19 
Hallo Delphi-Freunde.
Ich habe ein Programm geschrieben was eine kleine Adressdatenbank beinhaltet, wo man auch ein Foto mit abspeichern kann.
Wenn ich mir nun die Stammdaten dieser Person ausdrucken will, moechte ich dass das Foto mit auf dem Papier erscheint.
So weit so gut ... hab ein Formular gebastelt und das Foto druckt er auch ... NUR LEIDER AUF DEM KOPF?? WARUM??

Hier der Code womit ich das Bild an den Drucker sende
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
jpg := TJpegImage.Create;
bmp := TBitmap.Create;

try
  jpg.LoadFromImage(Dateiname);
  Rect := Bounds(100,YPos-910,jpg.Width,jpg.Height);
  Printer.Canvas.StretchDraw(Rect,jpg);
finally
  jpg.Free;
  bmp.Free;
end;


Hab ich da was falsch gemacht oder fehlt was?
Warum druckt er das Bild gespiegelt?

Vielen Dank im voraus.

lg olli
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19346
Erhaltene Danke: 1754

W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Do 12.11.09 10:20 
Der Quelltext sieht soweit in Ordnung aus, vorausgesetzt XPos hat einen passenden Wert. :gruebel:
Was ist LoadFromImage? Gibt es das in neueren Versionen von Delphi? Oder ist das nicht der Originalquelltext?

Was die Koordinaten angeht: Hast du auf Millimeter umgestellt? Oder soll das nur für genau einen einzigen Drucker funktionieren?
Denn mit absoluten Werten würdest du bei Pixelkoordinaten beim Drucker natürlich bei einem anderen Blödsinn erhalten, wenn der eine andere Auflösung hat.
OliverN_26 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 252

Win7 64-Bit, WinXP SP3
Delphi 7 Enterprise
BeitragVerfasst: Do 12.11.09 16:14 
Hallo!

Also bei XPos und auch YPos sind Werte drin.
Bei LoadFromImage steht auch der richtige Dateiname drin.
Ich arbeite mit Delphi 7 Enterprise und da gibt es das :-)

Was eine Millimeter Umstellung angeht..keine Ahnung..ich habe es auf 2 Druckern
und dem Adobe Drucker getestet und da geht es. Muss man so was machen?

Hat doch aber auch erst mal nix damit zu tun dass er mir das Bild auf
dem Kopf druckt oder ???

lg