Hallo,
ich habe eine Bilddatei mit einer Variablen Größe! Diese Bilddatei kann Hochformat, Querformat oder ein Quadrat sein.
Beispiel:
Hochformat:
Filename :
Katze.jpg
Width :
50 Pixel
Height :
100 Pixel
Querformat:
Filename :
Maus.jpg
Width :
100 Pixel
Height :
50 Pixel
Quadrat:
Filename :
Hund.jpg
Width :
100 Pixel
Height :
100 Pixel
Width und Height können aber auch andere Werte haben. Wie schon gesagt, es ist Variabel. Nun will ich diese Bilddatei in ein TImage laden. Das TImage hat eine Feste größe.
Beispiel (TImage):
Hochformat:
Width :
75
Height :
100
Querformat:
Width :
100
Height :
75
Quadrat:
Width :
100
Height :
100
Das sind die Größe, die diese Komponente haben kann. Bis dahin, habe ich gar kein Problem.
Delphi-Quellcode:
// square
if Bitmap.Width = Bitmap.Height then
begin
Image.Width:=100;
Image.Height:=100;
end;
// landscape format
if Bitmap.Width > Bitmap.Height then
begin
Image.Width:=100;
Image.Height:=75;
end;
// portrait format
if Bitmap.Width < Bitmap.Height then
begin
Image.Width:=75;
Image.Height:=100;
end;
Also das funktioniert schon mal. Nun möchte ich noch zusätzlich die größere Bilddatei in mein Image laden. Viele denken nun bestimmt, dass ist doch ganz einfach. Es gibt ja bei Image Komponenten die Möglichkeit die Eigenschaft Proportional auf True zu setzen. Das kann ich leider nicht verwenden, weil ich zusätzlich noch andere Grafiken in das TImage kopieren möchte. Ich habe dazu mal ein kleines Bild gemalt. Achso, die Eigenschaft Proportional kann ich nicht verwenden, weil die Bilddatei da auf das komplette TImage ausgerichtet wird. Ich möchte meine Bilddatei nicht in ein ganzes TImage laden, sondern nur in einen bestimmten Teil. Der restliche, freie Teil soll mit anderen Grafiken gefüllt werden.
Nun die eigentliche Frage:
Wie kann ich soetwas machen?
Mit freundlichen Grüßen
Christian18