Webstatt.org - Community seit 2006 - 2012 (2024?)

Thumbail - Qualitätsprobleme bei JPG und PNG

user-343
29.08.2006 17: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.

Avatar user-182
29.08.2006 17:32

ImageCreateTrueColor() statt ImageCreate() zwinkern

Seid ihr auch schon wix'r? xD
user-343
29.08.2006 17:38

Ach mann.... user-158ke. :O
Und ich dachte, ich hätte da alle Funktionen durchgelesen.. Naja. zwinkern
Geht nun.