mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Do 25.04.2024 11:47 Benutzername: Passwort: Auto-Login

Thema: [PHP] GD-Lib. - Gott wie umständlich! vom 17.10.2004


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> [PHP] GD-Lib. - Gott wie umständlich!
Autor Nachricht
WurstOderWas
Threadersteller

Dabei seit: 26.03.2003
Ort: -
Alter: 43
Geschlecht: Männlich
Verfasst So 17.10.2004 12:22
Titel

[PHP] GD-Lib. - Gott wie umständlich!

Antworten mit Zitat Zum Seitenanfang

Hi Leute,

sitz hier jetzt schon seit Stunden und versuche mit der GD LIB nach dem Upload eines Bildes

a) das original auf 300x300 Pixel max. zu skalieren(proportional)
und
b) noch ein kleines schnuckeliges thumbnail mit 135x135 max(natürlich auch proportional)
anzulegen und ich brech mir hier einen ab.

Gibts nicht irgendwie ne Nette Klasse oder so, an die ich meine Werte übergeben kann und fertig is die Laube?
Mit ImageMagick war ich für sowas mit einer Zeile Mogrify durch mit der Geschichte.
Zu meinem Pech unterstützt dieser Server kein ImageMagick so dass ich gezwungen bin GD zu nutzen.
Wäre dankbar für jeden geposteten Code.

-> MG-Suche erfolglos
-> Google = Bullshit, steig ich nicht durch, was das richtige für mich is Mädchen!

Bitte helft mir. Danke * Ich geb auf... *
  View user's profile Private Nachricht senden
Account gelöscht


Ort: -
Alter: -
Verfasst So 17.10.2004 12:40
Titel

Antworten mit Zitat Zum Seitenanfang

So eine Klasse gibt es tatsächlich, ich musste gerade aber auch suchen:

http://image-toolbox.sourceforge.net/
 
Anzeige
Anzeige
WurstOderWas
Threadersteller

Dabei seit: 26.03.2003
Ort: -
Alter: 43
Geschlecht: Männlich
Verfasst So 17.10.2004 12:41
Titel

Antworten mit Zitat Zum Seitenanfang

DANK! Das probier ich gleich mal aus.
Im übrigen ruft Dein Avatar angenehme Erinnerungen in mein Hirn *zwinker*

Mmmmh Monkey Island * Ich bin unwürdig *
  View user's profile Private Nachricht senden
marcusm

Dabei seit: 06.05.2002
Ort: europa
Alter: 46
Geschlecht: Männlich
Verfasst So 17.10.2004 12:42
Titel

Antworten mit Zitat Zum Seitenanfang

Tach!
Hier mal ein Script aus meiner PHP Anfangszeit, ist bestimmt nicht elegant aber es funktioniert bestens:

Code:

if(@copy($userfile, $path.$userfile_name)){
               
      //Bei erfolgreichem Kopiervorgang wird das Thumbnail generiert und in den entsprechenden Ordner kopiert.
               
                  $thumb_file=$userfile;
                  
                  $bilddaten = getimagesize($thumb_file);
                  
                  $originalbreite = $bilddaten[0];
                  $originalhoehe = $bilddaten[1];
                  $thumbnailbreite = 116;
                  
                  if($originalbreite < $thumbnailbreite) $thumbnailbreite=$originalbreite;
                  
                  $Skalierungsfaktor = $originalbreite/$thumbnailbreite;
                  $thumbnailhoehe = intval($originalhoehe/$Skalierungsfaktor);
                  
                  if($bilddaten[2]==2){
                     $originalgrafik = imagecreatefromJPEG($thumb_file);
                     $thumbnailgrafik = imagecreatetruecolor($thumbnailbreite, $thumbnailhoehe);
                     ImageCopyResized($thumbnailgrafik, $originalgrafik, 0, 0, 0, 0, $thumbnailbreite, $thumbnailhoehe, $originalbreite, $originalhoehe);
                     ImageJPEG($thumbnailgrafik, $path."thumb_".$userfile_name);
                     }
                  
                  elseif($bilddaten[2]==3){
                     $originalgrafik = imagecreatefromPNG($thumb_file);
                     $thumbnailgrafik = imagecreatetruecolor($thumbnailbreite, $thumbnailhoehe);
                     ImageCopyResized($thumbnailgrafik, $originalgrafik, 0, 0, 0, 0, $thumbnailbreite, $thumbnailhoehe, $originalbreite, $originalhoehe);
                     ImagePNG($thumbnailgrafik, $path."thumb_".$userfile_name);
                     }
                  
                  $path1="/diesunddas//dateiupload/bilder_user/";
                  $path2="/diesunddas/dateiupload/bilder_user/thumbs/";
                  
      //Das Thumbnail wird aus dem Ordner der Originaldatei geloescht und in den Thumbordner kopiert.
                  
                  @copy($path1."thumb_".$HTTP_POST_FILES["userfile"]["name"], $path2."thumb_".$HTTP_POST_FILES["userfile"]["name"]);
                  
                  $image_del=$path1."thumb_".$HTTP_POST_FILES["userfile"]["name"];
                  
                  chmod($image_del, 0777);
                  unlink($image_del);
}


Falls Du ne Frage hast, stell sie einfach...

Gruß
marcusm
  View user's profile Private Nachricht senden
aUDIOfREAK

Dabei seit: 04.04.2002
Ort: Ansbach
Alter: 44
Geschlecht: Männlich
Verfasst So 17.10.2004 12:46
Titel

Antworten mit Zitat Zum Seitenanfang

schau doch mal unter hotscripts.com - da gibts genug bildergalerien die die gd-lib nutzen - da sind sicher auch irgendwelche klassen dabei, die du verwenden kannst.

oder such mal über google nach thumbnail php - da gibbed irgendwo n ganzen haufen tutorials die sich damit beschäftigen.
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
WurstOderWas
Threadersteller

Dabei seit: 26.03.2003
Ort: -
Alter: 43
Geschlecht: Männlich
Verfasst So 17.10.2004 12:51
Titel

Antworten mit Zitat Zum Seitenanfang

hab jetzt dieses hier:
Code:
function resize1($bild,$max_width,$max_height,$bezeichner,$dir){
   $id="$dir$bild";
   $size = GetImageSize($id);
   $width = $size[0];
   $height = $size[1];
   $x_ratio = $max_width / $width;
   $y_ratio = $max_height / $height;
   if ($width <= $max_width && $height <= $max_height)
   {
   $tn_width = $width;
   $tn_height = $height;
   }
   elseif (($x_ratio * $height) < $max_height)
   {
   $tn_height = ceil($x_ratio * $height);
   $tn_width = $max_width;
   
   }
   else
   {
   $tn_width = ceil($y_ratio * $width);
   $tn_height = $max_height;
   }
   $src = ImageCreateFromJpeg($id);
   $dst = imagecreatetruecolor($tn_width,$tn_height);
   ImageCopyResized($dst,$src,0,0,0,0,$tn_width,$tn_height,$width,$height);
   $bild_name=explode(".",$bild);
   $id1=$dir.$bild_name[0].$bezeichner.".".$bild_name[1];
   ImageJPEG($dst,"$id1",100);
   $size = GetImageSize ("$id1");
   ImageDestroy($src);
   ImageDestroy($dst);
}


funzt 1a! hab jetzt auch den grund für meine eskapaden rausgefunden.
hatte ja schon viele scripte ausprobiert, aber die meisten waren für die GD 1.65 und halt ältere Versionen geschrieben. Die Bilder konnte man da gar nicht mehr erkennen. Ab Version 2 muss man wohl

imagecreatejpg durch imagecreatetruecolor ersetzen * Mal bisschen die Nase pudern... *

scheiss moderner schnickschnack. um so froher, dass es jetzt funzt!
  View user's profile Private Nachricht senden
Account gelöscht


Ort: -
Alter: -
Verfasst So 17.10.2004 13:04
Titel

Antworten mit Zitat Zum Seitenanfang

ich glaube, die imagetoolbox fängt sogar verschiedene versionen ab...
 
 
Ähnliche Themen Photoshop alltäglich umständlich
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.