Herausfinden ob eine JPG oder eine BMP-Datei in TImage liegt
Wie der Titel schon mitteilt, möchte ich in einem Label anzeigen lassen, ob es sich bei der in einem Timage geladene Datei, um eine BMP-Datei oder um eine JPG-Datei handelt.
Übrigens wäre auch die Farbtiefe sehr interessant. |
Re: Herausfinden ob eine JPG oder eine BMP-Datei in TImage l
Die Farbtiefe kannst du glaube ich mit TPicture.Bitmap.Pixelformat herausfinden...
Delphi-Quellcode:
PS: Falls das das richtige ist ... hab nicht soo viel Ahnung da..
TPixelFormat = (pfDevice, pf1bit, pf4bit, pf8bit, pf15bit, pf16bit, pf24bit, pf32bit, pfCustom);
Gruß Neutral General |
Re: Herausfinden ob eine JPG oder eine BMP-Datei in TImage l
Bei JPEGs ist Picture.Graphic ein TJPEGImage.
|
Re: Herausfinden ob eine JPG oder eine BMP-Datei in TImage l
Und wie kann ich mir die Extension im Label anzeigen lassen?
|
Re: Herausfinden ob eine JPG oder eine BMP-Datei in TImage l
Kannst du die Extension nicht beim Laden des Bildes speichern? Denn wenn du weißt, dass Graphic ein TJPEGImage ist, kannst du immer noch nicht zwischen .jpg und .jpeg unterscheiden.
|
Re: Herausfinden ob eine JPG oder eine BMP-Datei in TImage l
Delphi-Quellcode:
Das ist schonmal was :)
function GetPictureFormat(Pic: TPicture): String;
begin Result := Pic.Graphic.ClassName; end; Wenn du den Dateinamen hast dann kannst du auch einfach
Delphi-Quellcode:
benutzen !
ExtractFileExt(Dateiname)
Ansonsten kannst du die Funktion oben abändern:
Delphi-Quellcode:
Gruß
function GetPictureFormat(Pic: TPicture): String;
begin if Pic.Graphic.Classname = 'TBitmap' then Result := '.bmp' else if Pic.Graphic.Classname = 'TJPEGImage' then Result := '.jpeg' else Result := 'Unknown format!'; end; Neutral General |
Re: Herausfinden ob eine JPG oder eine BMP-Datei in TImage l
Ja klar. Auf ExtractFileExt bin ich einfach nicht gekommen. Danke.
|
Re: Herausfinden ob eine JPG oder eine BMP-Datei in TImage l
Eine Möglichkeit wäre noch, die Funktion GraphicExtension aus der Unit Graphics zu benutzen:
Delphi-Quellcode:
Das von Khabarakh angesprochene Problem (Unterscheidung '.jpg' und '.jpeg') läßt sich damit allerdings nicht lösen.
function GetPictureExtension (aImage: TPicture): string;
begin with aImage do if Assigned(Graphic) then Result := GraphicExtension(TGraphicClass(Graphic.ClassType)) else Result := '(empty)'; end; Gruß Hawkeye |
Re: Herausfinden ob eine JPG oder eine BMP-Datei in TImage l
Gäbe es denn eine weitere Möglichkeit von JPG und JPEG zu unterscheiden?
|
Re: Herausfinden ob eine JPG oder eine BMP-Datei in TImage l
Mit ExtractFileExt geht das doch super.. Wenn die Dateiendung .jpeg ist dann bekommst du '.jpeg' zurück.. wenns .jpg ist dann '.jpeg'
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:52 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