Seite 3 von 3

Verfasst: 29.12.2006 16:48
von Jan500
hi
Skippy hat geschrieben:

Code: Alles auswählen

$image = "../images/signature.png";
list($width, $height, $type) = @getimagesize($image);

switch ( $type )
{
   case 1:
      $im = imagecreatefromgif($image);
      break;
   case 2:
      $im = imagecreatefromjpeg($image);
      break;
   case 3:
      $im = imagecreatefrompng($image);
      break;
   default:
  		die('Error by define Imagetype it must be an jpg|gif|png');
      break;
}
ich würde das so machen ;)

Code: Alles auswählen

$image = "../images/signature.png";
list($width, $height, $type) = @getimagesize($image);

switch ( $type )
{
   case 1:
      $im = imagecreatefromgif($image);
      break;
   case 2:
      $im = imagecreatefromjpeg($image);
      break;
   case 3:
      $im = imagecreatefrompng($image);
      break;
   default:
      $width = 470;
      $height = 60;
      $im = @ImageCreate ($width, $height);
      break;
}
dann wird die statsitik aufjedenfall (wenn gd installiert ist) erstellt, halt nur ohne background image :D

dann noch bei meinem code

$breite = imagesx($im);
$hoehe = imagesy($im);
$farben= array();
for ($b= 0; $b < $breite; $b++)
{
for ($h= 0; $h < $hoehe; $h++)
{
$farben[] = imagecolorat($im, $b, $h);
}
}
in folgendes ändern

Code: Alles auswählen

$farben= array(); 
for ($b= 0; $b < $width; $b++) 
{ 
for ($h= 0; $h < $height; $h++) 
{ 
$farben[] = imagecolorat($im, $b, $h); 
} 
} 
da du ja das in dem array oben hast und wieso neu berechnen lassen.

hier die komplette datei: http://jan500.org/signature/signature.phps
und wenn man das in den sig.gif ordner macht http://jan500.org/signature/index.phps

gruß Jan

Verfasst: 31.12.2006 01:40
von Skippy
So ich habe das mal noch nen bissl erweitert

die Qualität bei aktivierter "kompression" konnte ich noch ein wenig verbessern ohne das das Bild größer wird

dafür muss man in Jan500 sein Beispiel nur folgendes suchen

Code: Alles auswählen

imagetruecolortopalette($im,0, $colors);


und ersetzen durch

$im_temp = ImageCreateTrueColor( $width, $height );
ImageCopyMerge( $im_temp, $im, 0, 0, 0, 0, $width, $height, 100 );
ImageTrueColorToPalette( $im, 0, $colors);
ImageColorMatch( $im_temp, $im );
ImageDestroy( $im_temp );


zusätzlich hab ich noch ein wenig rumgebastelt um die fehlermeldungen jetzt als Bild auszugeben

Das sollte grad den Einsteigern unter uns helfen weil jetzt nicht das typische rote kreuz kommt sondern man sieht hat die fehermeldung

Das ganze könnt ihr euch hier runterladen

http://skippys.sk.ohost.de/viewtopic.php?t=106

der einzige wirkliche unterschied zu jan500 seins ist das bei mir das ganze durch nen kleine Konfigurationsabschnitt am Anfang eingestellt werden kann