bild auflösung auslesen
ronald
- php
hallo!
kann mir jemand helfen?
ich möchte die auflösung (dpi) eines bildes (jpg, gif) auslesen... nur ich finde nirgends eine passende funktion.
thx,
ronald
Hallo,
ich möchte die auflösung (dpi) eines bildes (jpg, gif) auslesen...
tja, die gibt es auch nicht im Bild zu finden. (Was für eine Grammatik, sorry ;-)) Dpi bezieht sich auf das Ausgabemedium, es bedeutet "ja auch" Dots per Inch: also umgangssprachlich: wieviele Pünktchen schaft das Ausgabemedium (Monitor oder Drucker) per inch. Wenn Du ein Bild hast, das 600x600 Pixel breit ist und das dann mit einem Drucker druckst, der 300 Dots per Inch druckt, dann bekommst Du einen 2*2 inch großen Ausdruck.
Man kann in manchen Grafikprogrammen zu jedem Bild eine DpI-Zahl einstellen, das dient aber lediglich zur "internen" Berechnung, wenn man ans Drucken geht. Mit der Bilddatei und den dortdrin abgespeicherten daten hat das aber nichts zu tun.
Chräcker
Hallo,
ich möchte die auflösung (dpi) eines bildes (jpg, gif) auslesen... nur ich finde nirgends eine passende funktion.
JPG- und GIF-Bilder haben AFAIK keine "Aufloesung" (in dpi), sondern bloss Dimensionen,
also "300 Pixel breit, 140 Pixel hoch".
Die Browser stellen Bilder meist mit 72 dpi dar (oder 96 dpi auf gewissen Systemen).
Die Dimensionen und andere Werte von Grafiken kriegst Du in PHP mit
der Funktion getimagesize():
http://www.php.net/manual/de/function.getimagesize.php
Gruesse,
Thomas
Hallo,
Die Browser stellen Bilder meist mit 72 dpi dar (oder 96 dpi auf
gewissen Systemen).
Fast. Es sind die Monitore, also wieder die Ausgabegeräte, die mit DpI arbeiten. Die sind "nur" in der Lage, eine bestimmte Punktzahl per inch auf die Mattscheibe zum leuchten zu bringen. Letztendlich werden aber 300 Pixel immer in Abhängigkeit der Greafikkarteneinstellung dargestellt, und die letztendliche Länge in sichtbaren inch, also am Monitor mit Maßband nach zu messen, ist wiederum nur abhängig von der Größe des Monitores im meist grauen Kasten auf dem Schreibtisch....
Chräcker
Hallo!
ich möchte die auflösung (dpi) eines bildes (jpg, gif) auslesen... nur ich finde nirgends eine passende funktion.
$fh = fopen("datei.jpg", 'r');
$header = fread($fh, 16);
fclose ($fh);
$aufloesung = unpack('x14/ndpi', $header);
MfG, André Laugks
Hallo,
ich muß doch noch mal nachhaken, ob Du das richtige suchst, und wenn ja, warum? Natürlich können in Bilddateien auch Daten drin stehen, die mit der direkten Anzeige des Bildes nichts zu tun hat, wie Belichtungszeit, Name des Authors oder der Name der Schwiegermutter.... und eben eine beliebige Zahl, 300, 1200 oder 72, aber diese Zahl könnte nur ein Ausgabemedium interesieren, das die Ausgabegröße entsprechend skaliert. Das machen allerdings meines Wissens nur Drucker und anverwandte Geräte. Dem Monitor bzw dem Webbrowser ist das wurscht. Das PC-System stellt 200 Pixel entsprechend der Grafikkarteneisnstellung und der Monitorgröße dar. Bei einem Beamer können 200 Pixel mal einen Meter erreichen, bei meinem Palm eher Zentimeter....
Chräcker