Salve, ho un problema con la stampa delle immagini.
Per stampare un'immagine contenuta in un controllo TImage, utilizzo il seguente codice (dopo aver dichiarato Printers in Uses):
codice:
procedure TForm1.Button1Click(Sender: TObject);
var
ScaleX, ScaleY: Integer;
RR: TRect;
begin
with Printer do
begin
BeginDoc;
try
ScaleX := GetDeviceCaps(Handle, logPixelsX) div PixelsPerInch;
ScaleY := GetDeviceCaps(Handle, logPixelsY) div PixelsPerInch;
RR := Rect(0, 0, Image1.picture.Width * scaleX, Image1.Picture.Height * ScaleY );
Canvas.StretchDraw(RR, Image1.Picture.Graphic);
finally
EndDoc;
end;
end;
end;
Quello che non sono riuscito a fare è cambiare le coordinate di stampa.
In pratica, vorrei che l'immagine venisse stampata non nell'angolo superiore sinistro del foglio, ma con coordinate X=250 e Y=250.
Ho provato a cambiare "Rect(0, 0..." in "Rect(250, 250..." ma questa modifica incide anche sulle proporzioni dell'immagine.
Esiste un metodo veloce per cambiare le coordinate?
Grazie in anticipo.