| PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here! |
 |
|

17-08-2004, 14:29
|
|
Coniaric
Registrierter Benutzer
|
|
Registriert seit: Apr 2004
Beiträge: 320
|
|
Bildgröße anpassen
Hallo!
Kurze Frage:
Wenn ich ein hochgeladenes Bild z.B. in zwei Versionen haben will,
also z.B.:
Bild.jpg 500x300 mit Script hochgeladen
auf Server soll folgendes passieren:
Bild soll maximal 200x200px haben, also soll es PROPORTIONAL angepaßt werden und gleichzeitig ein Thumbnail erstellt werden, das
max 100x133px hat.
Ergebnis:
Bild.jpg 200x170 (ungefähr)
thumbs/Bild_th.jpg 100x133
kann ich das mit PHP _OHNE_ gd lösen?
(Erst recht ohne Java/JScript)
Wenn ja, wie?
Wenn nein, weiß ich, wie. Leider.
Gruß,
Coniaric
__________________
Gruß, Coni
~~ codito ergo sum - ich code, also bin ich! ~~
|

17-08-2004, 14:34
|
Wurzel
Master  
|
|
Registriert seit: Jul 2002
Ort: double-u-upper-valley
Beiträge: 7.477
|
|
Re: Bildgröße anpassen
imagemagick wäre da noch
__________________
-
|

17-08-2004, 14:38
|
|
Coniaric
Registrierter Benutzer
|
|
Registriert seit: Apr 2004
Beiträge: 320
|
|
Was ist das? Auch wieder was, was ich auf den Server hochladen muß?
Dann kann ich gleich gd nehmen, oder?
Also PHP kann es von Haus aus nicht?
Ich denke, mir bleibt nichts anderes als gd übrig dann, das hätte ich bereits.... oder?
__________________
Gruß, Coni
~~ codito ergo sum - ich code, also bin ich! ~~
|

17-08-2004, 14:40
|
|
mrhappiness
PHP Guru
|
|
Registriert seit: Oct 2002
Beiträge: 14.890
|
|
oder imagemagick *grins*
aber ich denke nicht, dass es mit der gd zu problemen kommen sollte
__________________
Ich denke, also bin ich. - Einige sind trotzdem...
|

17-08-2004, 14:42
|
Wotan
Master  
|
|
Registriert seit: Sep 2001
Ort: Berlin
Beiträge: 5.348
|
|
Das geht nur in Verbindung mit PHP/GD oder PHP/Imagemagick
PHP selber kann das nicht.
|

17-08-2004, 14:45
|
|
Perpetuum
Junior Member
|
|
Registriert seit: Feb 2004
Beiträge: 130
|
|
Weis nicht ob ich dich richtig verstanden habe, aber so habe ich das bei meiner Gallerie gelöst:
PHP-Code:
$breite_max = 145;
$hoehe_max = 135;
$size=getimagesize($bildpfad.$_FILES['bild']['name']);
$breite=$size[0];
$hoehe=$size[1];
if($breite < $hoehe){
$neueHoehe = $hoehe_max;
$neueBreite = intval($breite*$neueHoehe/$hoehe);
}else{
$neueBreite = $breite_max;
$neueHoehe = intval($hoehe*$neueBreite/$breite);
}
Je nachdem ob das Bild eine Längst oder Querform hat wird das Bild auf die maximale Höhe bzw. Breite umgerechnet.
|

17-08-2004, 14:45
|
Wurzel
Master  
|
|
Registriert seit: Jul 2002
Ort: double-u-upper-valley
Beiträge: 7.477
|
|
OffTopic: was die leute nur (immer) gegen die gd haben
btw: imagemagick muss serverseitig installiert werden, bei einem einfachen webhosting wirst du schlechte karten haben.
__________________
-
|

17-08-2004, 14:46
|
|
Coniaric
Registrierter Benutzer
|
|
Registriert seit: Apr 2004
Beiträge: 320
|
|
Okay, danke, dann werde ich es mit gd machen.
Ich hatte weniger Angst vor Problemen als vor noch mehr Files auf dem Server.... naja, muß ich wohl durch ;-)
Danke an alle,
Gruß,
Coniaric
__________________
Gruß, Coni
~~ codito ergo sum - ich code, also bin ich! ~~
|

17-08-2004, 14:47
|
|
Coniaric
Registrierter Benutzer
|
|
Registriert seit: Apr 2004
Beiträge: 320
|
|
Zitat:
Original geschrieben von Perpetuum
Weis nicht ob ich dich richtig verstanden habe, aber so habe ich das bei meiner Gallerie gelöst:
PHP-Code:
$breite_max = 145;
$hoehe_max = 135;
$size=getimagesize($bildpfad.$_FILES['bild']['name']);
$breite=$size[0];
$hoehe=$size[1];
if($breite < $hoehe){
$neueHoehe = $hoehe_max;
$neueBreite = intval($breite*$neueHoehe/$hoehe);
}else{
$neueBreite = $breite_max;
$neueHoehe = intval($hoehe*$neueBreite/$breite);
}
Je nachdem ob das Bild eine Längst oder Querform hat wird das Bild auf die maximale Höhe bzw. Breite umgerechnet.
|
Jepp, hab ich auch schon so gemacht. Dazu braucht man allerdings gd, nicht wahr?
__________________
Gruß, Coni
~~ codito ergo sum - ich code, also bin ich! ~~
|

17-08-2004, 14:50
|
|
mrhappiness
PHP Guru
|
|
Registriert seit: Oct 2002
Beiträge: 14.890
|
|
Zitat:
Original geschrieben von Coniaric
Dazu braucht man allerdings gd, nicht wahr?
|
hoffst du, dass einer sagt "Nein, PHP kann's auch alleine" wenn du nur oft genug fragst?
__________________
Ich denke, also bin ich. - Einige sind trotzdem...
|

17-08-2004, 14:50
|
|
Coniaric
Registrierter Benutzer
|
|
Registriert seit: Apr 2004
Beiträge: 320
|
|
Eine etwas...unsaubere Variante wäre ja auch, mit getimagesize() die Höhe und Breite zu ermitteln und dann einfach im HTML zu skalieren, zB so:
....
<img src=\"...\" width=\"$maxbriete\" height=\"$maxhöhe\">
....
Naja, aber bei vielen Bildern macht es eben schon viel Speicher aus...
__________________
Gruß, Coni
~~ codito ergo sum - ich code, also bin ich! ~~
|

17-08-2004, 14:51
|
|
mrhappiness
PHP Guru
|
|
Registriert seit: Oct 2002
Beiträge: 14.890
|
|
und user mit einer langsamen vebrindung werden's dir danken, denn mit der unsauberen methode müssen sietrotzdem das größere bild laden
__________________
Ich denke, also bin ich. - Einige sind trotzdem...
|

17-08-2004, 14:52
|
|
Coniaric
Registrierter Benutzer
|
|
Registriert seit: Apr 2004
Beiträge: 320
|
|
Ja, so ähnlich :D
Zitat:
Original geschrieben von mrhappiness
hoffst du, dass einer sagt "Nein, PHP kann's auch alleine" wenn du nur oft genug fragst?
|
__________________
Gruß, Coni
~~ codito ergo sum - ich code, also bin ich! ~~
|

17-08-2004, 14:53
|
|
Coniaric
Registrierter Benutzer
|
|
Registriert seit: Apr 2004
Beiträge: 320
|
|
Eben - glatt erschlagen würden die mich....
Zitat:
Original geschrieben von mrhappiness
und user mit einer langsamen vebrindung werden's dir danken, denn mit der unsauberen methode müssen sietrotzdem das größere bild laden
|
__________________
Gruß, Coni
~~ codito ergo sum - ich code, also bin ich! ~~
|

17-08-2004, 15:19
|
|
Perpetuum
Junior Member
|
|
Registriert seit: Feb 2004
Beiträge: 130
|
|
Die Thumbnailerstellung habe ich so gemacht ohne GD (mit imageCopyResized(); / ImageJPEG()  :
PHP-Code:
$altesBild=ImageCreateFromJPEG($bildpfad.$_FILES['bild']['name']);
$neuesBild=imageCreateTrueColor($neueBreite,$neueHoehe);
imageCopyResized($neuesBild,$altesBild,0,0,0,0,$neueBreite,$neueHoehe,$breite,$hoehe);
ImageJPEG($neuesBild, $bildpfad."thumb/th_".$_FILES['bild']['name']);
chmod($bildpfad."thumb/th_".$_FILES['bild']['name'], 0666);
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|