Willkommen in der Webstatt
User-1 am 29.08.06 19:10

Um Avatare zu erlauben lasse ich bei meiner Applikation das Bild hochladen (Formuar, blablabla). Dabei sind gif, jpg und png-Grafiken erlaubt.
Nach dem Hochladen erstelle ich Thumbails. Nun habe ich aber starke Probleme mit der Qualität der Thumbails... Vor allem wenn ich Fotos hochlade sieht es sowohl bei png als auch bei jpg einfach... Naja. Schrecklich aus.

// Thumb erstellen
switch($ext) {
case 'gif':
$img = ImageCreateFromGIF($user->data['avatar']);
$size = getimagesize($user->data['avatar']);

// Breite
if($size[0] < 200) {
$breite = $size[0];
}
else {
$breite = 200;
}

// Höhe
if($size[1] < 200) {
$hoehe = $size[1];
}
else {
$hoehe = 200;
}

$img2 = ImageCreate($breite, $hoehe);
ImageCopyResized($img2, $img, 0, 0, 0, 0, $breite, $hoehe, $size[0], $size[1]);

// Speichern
ImageGIF($img2, $thumbfn);
break;


case 'jpg':
$img = ImageCreateFromJPEG($user->data['avatar']);
$size = getimagesize($user->data['avatar']);

// Breite
if($size[0] < 200) {
$breite = $size[0];
}
else {
$breite = 200;
}

// Höhe
if($size[1] < 200) {
$hoehe = $size[1];
}
else {
$hoehe = 200;
}

$img2 = ImageCreate($breite, $hoehe);
ImageCopyResized($img2, $img, 0, 0, 0, 0, $breite, $hoehe, $size[0], $size[1]);

// Speichern
ImageJPEG($img2, $thumbfn);
break;


case 'png':
$img = ImageCreateFromPNG($user->data['avatar']);
$size = getimagesize($user->data['avatar']);

// Breite
if($size[0] < 200) {
$breite = $size[0];
}
else {
$breite = 200;
}

// Höhe
if($size[1] < 200) {
$hoehe = $size[1];
}
else {
$hoehe = 200;
}

$img2 = ImageCreate($breite, $hoehe);
ImageCopyResized($img2, $img, 0, 0, 0, 0, $breite, $hoehe, $size[0], $size[1]);

// Speichern
ImagePNG($img2, $thumbfn);
break;
}


Ich hänge mal so ein "Problem" an...
(avatar-1.jpg ist das Original, thumb-1.jpg das (?) Thumbnail).

// Das erste ist das Original, der zweite die verkleinerte Kopie.

netcup.de Warum gibt es hier Werbung?
User-2 am 29.08.06 19:32

ImageCreateTrueColor() statt ImageCreate() ;)

User-1 am 29.08.06 19:38

Ach mann.... xyz-48ke. :O
Und ich dachte, ich hätte da alle Funktionen durchgelesen.. Naja. ;)
Geht nun.

Creative Commons Lizenzvertrag
Alle Inhalte des Webstatt-Archivs stehen unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Unported Lizenz.

Impressum & Kontakt