Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi PNG laden und Transformieren (https://www.delphipraxis.net/196862-png-laden-und-transformieren.html)

DLX 26. Jun 2018 09:12

PNG laden und Transformieren
 
Hi,

ich möchte ein PNG laden, welches aber dynamisch angezeigt wird, ist sowas überhaupt möglich ?
Ich möchte eine fixe höhe von z.b. 80, das Bild darf sich nun proportional nach rechts strecken so das die aspect ratio eingehalten wird, nur die größe bleibt eben fixiert.

soweit zur theorie, ist sowas überhaupt machbar ? Ich hab keine Idee :-(

SebastianZ 26. Jun 2018 09:30

AW: PNG laden und Transformieren
 
Nach kurzen googlen folgende (gerade getestete) Lösung:

Du musst die Unit Vcl.Imaging.pngimage einbinden.
Delphi-Quellcode:
  procedure copy_to_resized_png( tar, src:string; w, h: Integer);
  var
    bmp: TBitmap;
    png, output: TPngImage;
  begin
    png := TPngImage.Create;
    png.LoadFromFile( src);
    bmp := TBitmap.Create;
    bmp.Width := w;
    bmp.Height := h;

    bmp.Canvas.StretchDraw( RECT( 0, 0, w, h), png);

    output := TPngImage.Create;
    output.Assign( bmp);
    output.SaveToFile( tar);

    output.Free;
    bmp.Free;
    png.Free;
  end;
Quelle: https://juststrcpy.wordpress.com/200...e-in-delphi-1/

haentschman 26. Jun 2018 10:34

AW: PNG laden und Transformieren
 
Zitat:

Nach kurzen googlen folgende (gerade getestete) Lösung:
...auch Goo.. ist nicht unfehlbar! :? try / finally ist für die ein indisches Gewürz. :roll:

KodeZwerg 26. Jun 2018 11:54

AW: PNG laden und Transformieren
 
Das sample skaliert nicht, es füllt w/h aus mehr nicht.

KodeZwerg 26. Jun 2018 13:08

AW: PNG laden und Transformieren
 
Hier kannst Du Lernen wie man den Aspect-Ratio berechnet.

DeddyH 26. Jun 2018 13:16

AW: PNG laden und Transformieren
 
StretchGraphic, allerdings geht dabei evtl. Transparenz flöten.

EWeiss 26. Jun 2018 14:32

AW: PNG laden und Transformieren
 
Zitat:

Ich möchte eine fixe höhe von z.b. 80, das Bild darf sich nun proportional nach rechts strecken so das die aspect ratio eingehalten wird, nur die größe bleibt eben fixiert.
Verstehe nicht so recht was du meinst.
Du möchtest also ein Thumbnail erstellen bei dem die Höhe immer 80 ist und die breite sich dementsprechend anpasst oder was?
Hmmm..

gruss

DLX 17. Jul 2018 12:25

AW: PNG laden und Transformieren
 
Vielen Dank schonmal für die zahlreichen Antworten :)

Zu deiner Frage:
Ich habe ein Image-Element mit einer fixen höhe, nun sollen dort Bilder reingeladen werden können vorzugsweise png, ich möchte die geladenen Bilder aber nicht auf die Breite quetschen lassen, sondern soll sich das Element bzw. Bild proportial nach rechts verlängern können. nur die Höhe muss halt fix sein

Sherlock 18. Jul 2018 07:08

AW: PNG laden und Transformieren
 
Wenn es unter Windows sein soll, schau hier nach https://www.delphipraxis.net/1282736-post7.html

Sherlock

DLX 18. Jul 2018 14:01

AW: PNG laden und Transformieren
 
Vielen Dank, werde ich testen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:43 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz