Upload Script mit auto. Verkleinen von Bildern
Upload Script mit auto. Verkleinen von Bildern
Hey,
Ich suche ein Upload Script für Bilddateien, dass das normale Bild hochlädt, aber auch ein weiteres Bild anlegt, dass als Thumb genutzt werden kann. Als Inspiration habe ich ImageShack. Genau so sollte es funktionieren.
Ich suche ein Upload Script für Bilddateien, dass das normale Bild hochlädt, aber auch ein weiteres Bild anlegt, dass als Thumb genutzt werden kann. Als Inspiration habe ich ImageShack. Genau so sollte es funktionieren.
- rabbit
- Ehemaliger Übersetzer
- Beiträge: 4199
- Registriert: 14.06.2003 22:09
- Wohnort: Hildesheim
- Kontaktdaten:
wer suchet der findet: Attachment MOD 

Offizieller Übersetzer des Categories Hierarchy MOD 2.1.x
Deutscher UserGuide für den Categories Hierarchy MOD v2.1.4
Empfohlener Hoster: All-Inkl.com
Deutscher UserGuide für den Categories Hierarchy MOD v2.1.4
Empfohlener Hoster: All-Inkl.com
- Blutgerinsel
- Mitglied
- Beiträge: 1801
- Registriert: 19.07.2004 18:53
- Wohnort: Landkreis Ulm
- Kontaktdaten:
Ist mir jetzt doch ein bisschen zu kompliziert
Könnt ihr mir nicht einfach sagen, wie ich z.B. ein jpg Bild welches normal halt 1024x768 hat per PHP in ein kleines Thumb umgewandelt und zusätzlich gespeichert werden kann? Nur halt bräuchte ich auch ne Formel, dass jedes "große" Bild in annähernd die gleichen Thumbs umrechnet.

Könnt ihr mir nicht einfach sagen, wie ich z.B. ein jpg Bild welches normal halt 1024x768 hat per PHP in ein kleines Thumb umgewandelt und zusätzlich gespeichert werden kann? Nur halt bräuchte ich auch ne Formel, dass jedes "große" Bild in annähernd die gleichen Thumbs umrechnet.
Die beste Lösung hierfür ist ImageMagick, da es mit sämtlichen Bildformaten und sogar mit swf usw zurecht kommt und es auch die besten Ergebnisse erzielt, es muss allerdings auf deinem Server installiert sein damit du es nutzen kannst.
(Das System das auf der von dir angegebenen Seite die Bilder resized läuft mit Sicherheit mit Hilfe von ImageMagick)
Folgende funktion hilft dir evtl weiter wenn du es nur mit Hilfe von PHP und GD und auch nur für JPG, GIF und PNG versuchen möchtest:
(Das System das auf der von dir angegebenen Seite die Bilder resized läuft mit Sicherheit mit Hilfe von ImageMagick)
Folgende funktion hilft dir evtl weiter wenn du es nur mit Hilfe von PHP und GD und auch nur für JPG, GIF und PNG versuchen möchtest:
Code: Alles auswählen
function createThumbnail($original) {
set_time_limit(30);
$imgPath = $path."".$original //Pfad + Bild das verkleiner werden soll
$size = getimagesize($imgPath);
$format = $size[2];
$width = $size[0];
$height = $size[1];
$newWidth = ; //hier neue Maxbreite
$newHeight = intval($height*$newWidth/$width); //max Höhe berechnet sich aus Maxbreite und alter Breite/Höhe
// TEST AUF FORMATE GIF, JPG, PNG
if($format == 1) {
// GIF
$originalPicture = ImageCreateFromGIF($imgPath);
$newThumb = ImageCreate($newWidth,$newHeight);
ImageCopyResized($newThumb, $originalPicture, 0, 0, 0, 0, $newWidth, $newHeight, $width, $height);
ImageGIF($newThumb, "Hier namen des thumbs".".gif");
}
if($format==2) {
// JPG
$originalPicture=ImageCreateFromJPEG($imgPath);
$newThumb=ImageCreate($newWidth,$newHeight);
ImageCopyResized($newThumb, $originalPicture, 0, 0, 0, 0, $newWidth, $newHeight, $width, $height);
ImageJPEG($newThumb, "Name des thumbs".".jpg");
}
if($format==3) {
// PNG
$originalPicture=ImageCreateFromPNG($imgPath);
$newThumb=ImageCreate($newWidth,$newHeight);
ImageCopyResized($newThumb, $originalPicture, 0, 0, 0, 0, $newWidth, $newHeight, $width, $height);
ImagePNG($newThumb, "name des Thumbs".".png");
}
}
- Blutgerinsel
- Mitglied
- Beiträge: 1801
- Registriert: 19.07.2004 18:53
- Wohnort: Landkreis Ulm
- Kontaktdaten:
Kommt drauf an wenn GD 2. Version verfügbar ist sollte manRusTin hat geschrieben:ist etwas miese Qualität beim verkleinerten Bild, geht das besser?
imagecopyresample in Verbindung mit imagecreatetruecolor anstatt imagecreate......
Imagecreatetruecolor aber nicht mit gif verwenden....
@Cojote: Ich schick den Code bei -> http://www.thephpwtf.com/ ein.....