Forum: Multimedia
Delphi
by Schwedenbitter,
2. Apr 2009
Nein, leider nicht. Das Image1 ist zweitrangig. Ich will nicht das Bild im Programm ausgeben. Das macht doch TImage allein passend, wenn man die Eigenschaften richtig setzt.
Ich möchte:
1. Bild laden (egal welche Größe)
2. vergrößern oder verkleinern auf 1660x2340 (= DINA4 bei 200 dpi)
3. DINA4-Bild abspeichern
Und so klappt es jetzt endlich, auch wenn Du erster warst:
Procedure...
Forum: Multimedia
Delphi
by Schwedenbitter,
2. Apr 2009
Die Antworten haben sich alle überschnitten:
Ja, das soll nur zur Vorschau sein. Ich habe - zu Testzwecken - meinen Code geändert. Entschuldigung falls es noch nicht in meinem Paket so war. Es sieht jetzt so aus:
Procedure TForm1.Button5Click(Sender: TObject);
Var
H,B : Integer;
help,Org : TImage;
Begin
help:=TImage.Create(self);
Org:=TIMage.Create(self);
Forum: Multimedia
Delphi
by Schwedenbitter,
2. Apr 2009
Das verstehe ich zwar nicht. Aber ist wohl mein Fehler. Habe grad nochmal mein Delphi-Buch befragt und das macht das Create auch vor dem Try. Sei's drum :-D
Klingt einleuchtend. Gegengfrage: Wozu gibt es dann die Eigenschaften Stretch etc. Ich bin immer davon ausgegangen, dass genau das dann automatisch passiert. Und wie passe ich die Höhe und Breite von Image1 dem eingeladenen Bild an? Das...
Forum: Multimedia
Delphi
by Schwedenbitter,
2. Apr 2009
Das ist letztlich egal. Auf jeden Fall hast Du mich schon ein Stück weiter gebracht.
Das help.Picture.assign(image1.picture); in Zeile 8 ist überflüssig. Denn ich will das Bild ja mittels StretchBlt(...); kopieren. Schließlich würde ich noch das letzte Try ... Finally ... End; mit in die erste Fehlerbehandlung mit reinbauen. Denn das Bild brauche ich nicht zuzuweisen, wenn in der ersten...
Forum: Multimedia
Delphi
by Schwedenbitter,
1. Apr 2009
Also jeweils help.Width:=1660;
help.Height:=2340; klappt nicht und dem Canvas kann ich jedenfalls keine Höhe und Breite mitgeben. Das würde auch nicht das Phänomen erklären, dass das Ergebnis immerhin nicht 0x0, sondern 150x150 Pixel groß ist.
Forum: Multimedia
Delphi
by Schwedenbitter,
1. Apr 2009
Hallo,
ich weiß: Das Thema wurde schon mehrfach behandelt (z.B. hier). Ich habe aber keine Lösung für mich gefunden. Wohl auch, weil dieser Code nicht funktioniert:Procedure TForm1.Button5Click(Sender: TObject);
Var
help : TImage;
Begin
Try
help:=TImage.Create(nil);
SetStretchBltMode(help.Canvas.Handle,HALFTONE);
If Image1.Picture.Height>Image1.Picture.Width Then