Willkommen in der Webstatt Zum Webstatt Blog und Stories
Wasili 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?
Franky Franky am 29.08.06 19:32

ImageCreateTrueColor() statt ImageCreate() ;)

Wasili am 29.08.06 19:38

Ach mann.... Danke. :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