Forum Doku Wiki Blog

Forumsarchiv 1999, September
Pixelgröße eines Bildes ermitteln

archivierte Beiträge lesen

  1. (PROGRAMMIERTECHNIK) Pixelgröße eines Bildes ermitteln von Michael Waldmann, 07. 09. 1999, 11:55

Pixelgröße eines Bildes ermitteln

Der folgende Beitrag wurde am 07. 09. 1999, 11:55 Uhr von Michael Waldmann veröffentlicht.

Hallo zusammen,

hat jemand eine Idee, wie man mit Perl oder Javascript die Größe eines Bildes ermitteln kann, das auf einem fremden Server liegt (also mit http://...bild.gif ansprechbar ist)? Gemeint ist die Größe in Pixeln, nicht in Bytes. Und zwar geht es mir daraum, die Größe zu ermitteln, ohne dass das Bild angezeigt wird. Mit document.ImageName.width usw. ist die Ermittlung mit Javascript ja nur dann möglich, wenn das Bild schon sichtbar ist.

Danke im voraus...
Michael

Pixelgröße eines Bildes ermitteln

Der folgende Beitrag wurde am 07. 09. 1999, 12:21 Uhr von Stefan Muenz veröffentlicht.

Hallo Michael,

> hat jemand eine Idee, wie man mit Perl oder Javascript die Größe eines Bildes ermitteln kann, das auf einem fremden Server liegt (also mit http://...bild.gif ansprechbar ist)?

Mit JavaScript sehe ich da keine Moeglichkeit. Mit Perl kannst du so was in der Art machen:
use LWP::Simple;
$Datei = get("http://www.xy.de/datei.jpg");
$Bytes = length($Datei);

Ob das jetzt so funktioniert, oder ob es Probleme wegen der Binaerdaten gibt, weiss ich nicht. Musst du mal ausprobieren.

viele Gruesse
  Stefan Muenz




Pixelgröße eines Bildes ermitteln

Der folgende Beitrag wurde am 07. 09. 1999, 13:34 Uhr von Michael Schröpl veröffentlicht.

> Mit Perl kannst du so was in der Art machen:
> use LWP::Simple;
> $Datei = get("http://www.xy.de/datei.jpg");
> $Bytes = length($Datei);

Das löst aber Michaels Problem nicht - der wollte ja die Bildgröße in x * y Pixeln (beispielsweise um sein Layout darauf abzustimmen oder was auch immer).

Nach dem "get()" wäre also auch noch der Header der JPEG-Datei entsprechend zu interpretieren - also Dateiformate nachschlagen und passende Bytes mit den Größenangaben aus $Datei herauspfriemeln ...

Pixelgröße eines Bildes ermitteln

Der folgende Beitrag wurde am 07. 09. 1999, 13:38 Uhr von Michael Waldmann veröffentlicht.

> > hat jemand eine Idee, wie man mit Perl oder Javascript die Größe eines Bildes ermitteln kann, das auf einem fremden Server liegt (also mit http://...bild.gif ansprechbar ist)?
...
> $Datei = get("http://www.xy.de/datei.jpg");
> $Bytes = length($Datei);

Danke für den Tip! Nur geht es mir (wie ich auch geschrieben hatte) um die Bildgröße in Pixeln (also Breite x Höhe) und nicht um die Dateigröße. Fällt Dir dazu vielleicht etwas ein?

Grüße
Michael

Pixelgröße eines Bildes ermitteln

Der folgende Beitrag wurde am 07. 09. 1999, 15:32 Uhr von Tom veröffentlicht.

Hallo Michael

> hat jemand eine Idee, wie man mit Perl oder Javascript die Größe eines Bildes ermitteln kann, das auf einem fremden Server liegt (also mit http://...bild.gif ansprechbar ist)? Gemeint ist die Größe in Pixeln, nicht in Bytes. Und zwar geht es mir daraum, die Größe zu ermitteln, ohne dass das Bild angezeigt wird. Mit document.ImageName.width usw. ist die Ermittlung mit Javascript ja nur dann möglich, wenn das Bild schon sichtbar ist.

Falls Du die Datei binär vorliegen hast, kannst Du die Breite und Höhe aus der Datei auslesen.
Für GIF-Builder hilft da folgender Perl-Code:

$Breite =  unpack("v",substr($GifStream,7,2));  # 7.+ 8. Byte in der GIF-Datei
$Höhe =   unpack("v",substr($GifStream,9,2));  # 9.+ 10. Byte in der GIF-Datei
# Müssen mit unpack("v",2Bytes) vom Little-Endien- ins Big-Endien-Format umgewandelt werden.
Zum Thema GIF-Datenformat gibts einen ausführlichen Thread von Cheatah und Klaus aus dem Januar 99 im Archiv.

Für PNG-Dateien verweise ich auf die PNG-Spezifikation, die unter http://www.w3.org/TR/ zu finden ist.

Bei JPEG habe ich gar keine Ahnung.

Grüsse

Tom

Pixelgröße eines Bildes ermitteln

Der folgende Beitrag wurde am 07. 09. 1999, 21:32 Uhr von Michael Waldmann veröffentlicht.

Hi Tom,

> $Breite =  unpack("v",substr($GifStream,7,2));  # 7.+ 8. Byte in der GIF-Datei
> $Höhe =   unpack("v",substr($GifStream,9,2));  # 9.+ 10. Byte in der GIF-Datei

Klingt gut. Ich werde es morgen mal ausprobieren. Wenn es tatsächlich funktioniert, mache ich mich auf die Suche nach dem Aufbau von JPEG's.

Ciao,
Michael

Pixelgröße eines Bildes ermitteln

Der folgende Beitrag wurde am 08. 09. 1999, 03:44 Uhr von Cheatah veröffentlicht.

Hi,

> Klingt gut. Ich werde es morgen mal ausprobieren. Wenn es tatsächlich funktioniert, mache ich mich auf die Suche nach dem Aufbau von JPEG's.

http://www.wotsit.org ;-)

Cheatah

Pixelgröße eines Bildes ermitteln

Der folgende Beitrag wurde am 08. 09. 1999, 14:28 Uhr von David veröffentlicht.

Hallo ihr,

ihr macht es euch wohl gerne schwer, was? ;)
Man kann zwar nicht um das Laden des Bildes herum kommen.. doch sichtbar muss es nicht sein.

Versucht mal folgendes:
<script>
var bild = "http://www.teamone.de/selfhtml/xweb.gif";
document.write("<IMG STYLE=\"visibility:hidden\" SRC=\"" + bild + "\" NAME=\"testimg\">");

alert(document.testimg.width + " x " + document.testimg.height);
</script>

Nix zu sehn, und die Maße sind trotzdem bekannt ;)

PS: Mit nem lokalen Bild gehts noch einfacher:
<script>
img = new Image();
img.src = "http://www.teamone.de/selfhtml/xweb.gif";
alert(img.width + " x " + img.height);
</script>
Das Bild muss also nicht mal geladen sein. (Klappte zum. bei mir so. Vielleicht kam es auch einfach aus dem Cache und deswegen gings.. müsste man genauer prüfen)

Gruss,
  David

© 1998-2013 SELFHTMLImpressumSoftware: Classic Forum 3.4