Beitrag von Claus S. (1671 Beiträge) am Mittwoch, 8.Oktober.2003, 16:02.
Bildgrösse ermitteln?
hallo,
gibt es in perl die möglichkeit, grösse eines vorhandenen gif oder jpg zu ermitteln. hintergrund ist der, dass ich eine hp habe, bei dem verschiedene benutzer bilder hochladen können, die bilder sollen eine gewisse maximalgrösse nicht überschreiten, da sonst das layout "zerschossen" wird; da es aber hoch- und querformatige bilder sein können, kann man keine feste width-angabe vorgeben.
kann man allerdings die tatsächliche grösse ermitteln, so könnte man eine "passende" maximalhöhe errechnen.
danke und gruss
Antworten
Beitrag von Tina (8 Beiträge) am Mittwoch, 8.Oktober.2003, 16:54. WWW: ZERGportal.de
Re: Bildgrösse ermitteln?
Antworten
Beitrag von Marco (840 Beiträge) am Mittwoch, 8.Oktober.2003, 18:31.
Re: Bildgrösse ermitteln?
Antworten
Beitrag von Christoph Bergmann (8110 Beiträge) am Mittwoch, 8.Oktober.2003, 19:26.
Re: Bildgrösse ermitteln?
Das Carp-Modul macht (zumindest in dem Beispiel) nichts anderes als die Ausgaben auf den Browser umzulenken - das braucht Ihr bei baseportal wirklich nicht ;-))
Soll heissen: Das Beispiel von Tina funzt... ;-)
Antworten
Beitrag von Christoph Bergmann (8110 Beiträge) am Mittwoch, 8.Oktober.2003, 19:35.
Re: Bildgrösse ermitteln? - prima, das isses doch ,-)
Kann in dem Code-Schnipsel nichts entdecken, was verboten wäre - das CGI::Carp macht nichts anderes als Fehler-Ausgaben auf den Browser umzulenken, das macht baseportal von Haus aus ;-)
Also: Alles bis zum "exit" rausschmeissen, das brauchts in baseportal alles nich... Ihr braucht nur die subs...
Dann einfach ein Bild holen und die entsprechende sub aufrufen, also z.b. so:
my($w,$h)=&gifsize(get "http://baseportal.de/pics/logo/basep.gif");
out "Breite: $w - Groesse: $h";
Thats it ;-)
Die zugehörige subroutine ist:
sub gifsize {
my ($GIF)=@_;
my ($type,$a,$b,$c,$d,$s,$width,$height) ;
$type=substr($GIF,0,6);
if(!($type =~ m/GIF8[7,9]a/) || (length($s=substr($GIF, 6, 4))!=4) ){
return;
}
($a,$b,$c,$d)=unpack("C"x4,$s);
$width= $b<<8|$a;
$height= $d<<8|$c;
return ($width,$height);
}
Tina, Da Du den Code gefunden hast, darfst Du's auch in die Bib stellen ;-)))
Antworten
Beitrag von horstees (229 Beiträge) am Montag, 13.Oktober.2003, 09:52. WWW: horstees.de
Re: Bildgrösse ermitteln? - prima, das isses doch ,-)
Hallo Christoph!
Gute Vorlage von Tina und ratz fatz sind die Bilddaten auf'm Schirm.
Klasse!
Viel besser als diese umständliche Bastelarbeit, die Marco:-(
9 Monate lang imho 'nicht wirklich verschönert' hat.*g*
Kannst Du noch was zur Bildgröße (KB) sagen?
($dateigroesse) = (stat("$b......?
horstees
Antworten
Beitrag von Christoph Bergmann (8110 Beiträge) am Montag, 13.Oktober.2003, 14:20.
Re: Bildgrösse ermitteln? - prima, das isses doch ,-)
Antworten
Beitrag von horstees (229 Beiträge) am Montag, 13.Oktober.2003, 15:59.
Re: Bildgrösse ermitteln? - prima, das isses doch ,-)
Antworten
Beitrag von Christoph Bergmann (8110 Beiträge) am Montag, 13.Oktober.2003, 17:04.
Re: Bildgrösse ermitteln? - prima, das isses doch ,-)
Antworten