AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Herausfinden ob eine JPG oder eine BMP-Datei in TImage liegt
Thema durchsuchen
Ansicht
Themen-Optionen

Herausfinden ob eine JPG oder eine BMP-Datei in TImage liegt

Ein Thema von mlspider · begonnen am 3. Aug 2006 · letzter Beitrag vom 3. Aug 2006
Antwort Antwort
Seite 1 von 2  1 2      
mlspider

Registriert seit: 22. Okt 2003
Ort: Berlin
661 Beiträge
 
Delphi 7 Enterprise
 
#1

Herausfinden ob eine JPG oder eine BMP-Datei in TImage liegt

  Alt 3. Aug 2006, 13:28
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.
Mario
Handbücher haben einen hohen Heizwert!!!

http://geprellte-ebay-kaeufer.de
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#2

Re: Herausfinden ob eine JPG oder eine BMP-Datei in TImage l

  Alt 3. Aug 2006, 13:45
Die Farbtiefe kannst du glaube ich mit TPicture.Bitmap.Pixelformat herausfinden...

TPixelFormat = (pfDevice, pf1bit, pf4bit, pf8bit, pf15bit, pf16bit, pf24bit, pf32bit, pfCustom); PS: Falls das das richtige ist ... hab nicht soo viel Ahnung da..

Gruß
Neutral General
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#3

Re: Herausfinden ob eine JPG oder eine BMP-Datei in TImage l

  Alt 3. Aug 2006, 13:49
Bei JPEGs ist Picture.Graphic ein TJPEGImage.
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
mlspider

Registriert seit: 22. Okt 2003
Ort: Berlin
661 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Herausfinden ob eine JPG oder eine BMP-Datei in TImage l

  Alt 3. Aug 2006, 13:51
Und wie kann ich mir die Extension im Label anzeigen lassen?
Mario
Handbücher haben einen hohen Heizwert!!!

http://geprellte-ebay-kaeufer.de
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#5

Re: Herausfinden ob eine JPG oder eine BMP-Datei in TImage l

  Alt 3. Aug 2006, 13:56
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.
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#6

Re: Herausfinden ob eine JPG oder eine BMP-Datei in TImage l

  Alt 3. Aug 2006, 13:57
Delphi-Quellcode:
function GetPictureFormat(Pic: TPicture): String;
begin
 Result := Pic.Graphic.ClassName;
end;
Das ist schonmal was

Wenn du den Dateinamen hast dann kannst du auch einfach

ExtractFileExt(Dateiname) benutzen !

Ansonsten kannst du die Funktion oben abändern:

Delphi-Quellcode:
function GetPictureFormat(Pic: TPicture): String;
begin
 if Pic.Graphic.Classname = 'TBitmapthen Result := '.bmp'
 else
 if Pic.Graphic.Classname = 'TJPEGImagethen Result := '.jpeg'
 else Result := 'Unknown format!';
end;
Gruß
Neutral General
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
mlspider

Registriert seit: 22. Okt 2003
Ort: Berlin
661 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: Herausfinden ob eine JPG oder eine BMP-Datei in TImage l

  Alt 3. Aug 2006, 14:04
Ja klar. Auf ExtractFileExt bin ich einfach nicht gekommen. Danke.
Mario
Handbücher haben einen hohen Heizwert!!!

http://geprellte-ebay-kaeufer.de
  Mit Zitat antworten Zitat
Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#8

Re: Herausfinden ob eine JPG oder eine BMP-Datei in TImage l

  Alt 3. Aug 2006, 14:21
Eine Möglichkeit wäre noch, die Funktion Delphi-Referenz durchsuchenGraphicExtension aus der Unit Graphics zu benutzen:

Delphi-Quellcode:
function GetPictureExtension (aImage: TPicture): string;
begin
  with aImage do
    if Assigned(Graphic) then
      Result := GraphicExtension(TGraphicClass(Graphic.ClassType))
    else
      Result := '(empty)';
end;
Das von Khabarakh angesprochene Problem (Unterscheidung '.jpg' und '.jpeg') läßt sich damit allerdings nicht lösen.

Gruß Hawkeye
  Mit Zitat antworten Zitat
mlspider

Registriert seit: 22. Okt 2003
Ort: Berlin
661 Beiträge
 
Delphi 7 Enterprise
 
#9

Re: Herausfinden ob eine JPG oder eine BMP-Datei in TImage l

  Alt 3. Aug 2006, 14:33
Gäbe es denn eine weitere Möglichkeit von JPG und JPEG zu unterscheiden?
Mario
Handbücher haben einen hohen Heizwert!!!

http://geprellte-ebay-kaeufer.de
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#10

Re: Herausfinden ob eine JPG oder eine BMP-Datei in TImage l

  Alt 3. Aug 2006, 14:35
Mit ExtractFileExt geht das doch super.. Wenn die Dateiendung .jpeg ist dann bekommst du '.jpeg' zurück.. wenns .jpg ist dann '.jpeg'
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:56 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