Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Library: Grafik / Sound / Multimedia (https://www.delphipraxis.net/21-library-grafik-sound-multimedia/)
-   -   Delphi .jpg, .gif, .png, .psd, ..etc. --> TImage (https://www.delphipraxis.net/103157-jpg-gif-png-psd-etc-timage.html)

seim 11. Nov 2007 14:38


.jpg, .gif, .png, .psd, ..etc. --> TImage
 
Liste der Anhänge anzeigen (Anzahl: 2)
Also hier gibt es die Möglichkeit so ziemlich jedes gängige Bildformat in einem TImage anzeigen zu können...
(getestet mit Borland Delphi 2005)


Was benötigt wird
----------------------------------------
- GraphicEx lib


Wie wird die lib installiert?
----------------------------------------
Da sowas eigentlich klar sein sollte gibt's das nur einmal ganz kurz:
1) zip Archiv entpacken (es empfiehlt sich da das Programmverzeichnis von Borland)
2) Delphi starten
3) Oben in der Leiste Tools->Optionen->Bibliothek(Win32) oder Bibliothek(.Net)
4) Dort den obersten "..." Button klicken, nochmal den "..." Button im nächsten Fenster
5) Das Verzeichnis von 1) auswählen
6) Hinzufügen


Der Quelltext
----------------------------------------
Das Image wird in "Image1" (TImage) geladen.
Delphi-Quellcode:
uses
  GraphicEx

type

    Image1: TImage;

  private
    procedure DoLoad(const FileName: String);


procedure TForm1.DoLoad(const FileName: String);
var
  GraphicClass: TGraphicExGraphicClass;
  Graphic: TGraphic;
begin
  Screen.Cursor := crHourGlass;
  try
    try
      GraphicClass := FileFormatList.GraphicFromContent(FileName);

      if GraphicClass = nil then
        Image1.Picture.LoadFromFile(FileName)
      else
      begin
        Graphic := GraphicClass.Create;
        Graphic.LoadFromFile(FileName);
        Image1.Picture.Graphic := Graphic;
      end;

    except
    end;
  finally
    Screen.Cursor := crDefault;
  end;
end;

Starten lässt sich das z.B. mit einem zusätzlichen Button (Button1) und einem OpenPictureDialog (OPD):
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  if OPD.Execute then DoLoad(OPD.FileName);
end;

Die Projektdatei gibt's nochmal als Attachement dazu...


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:50 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