Sibbl: Einfügen von Wasserzeichen klappt nicht wie es soll...

Beitrag lesen

Edit:
Das einfügen funktioniert super, nur bei kleinen Bilderngibt es immer noch Probleme. Kann das da drann liegen das das Copyright zu groß ist und an das kleine Img angepasst werden müste? Wie müste ich das machen?

So siehts jetzt aus:

  
<?PHP  
  $strImage = $_SERVER['DOCUMENT_ROOT'].'/bildergalerie/'.$_GET['folder']."/".$_GET['image'];  
  if( !file_exists( $strImage ) ) die("Das angegebene Bild existiert nicht!");  
  
  $strWatermark =  $_SERVER['DOCUMENT_ROOT'].'/wasserzeichen.png';  
  if( !file_exists( $strWatermark ) ) die("Das angegebene Wasserzeichen existiert nicht!");  
  
  list ( $Image_Width, $Image_Height, $Image_Type ) = getimagesize ( $strImage );  
  list ( $Watermark_Width, $Watermark_Height, $Watermark_Type ) = getimagesize ( $strWatermark );  
  
  $Watermark = imagecreatefrompng ( $strWatermark ) or die("Fehler bei imagecreatefromgif (Wasserzeichen)");  
  
  $Watermark_pos_x = $Image_Width - $Watermark_Width;  
  $Watermark_pos_y = $Image_Height - $Watermark_Height;  
  
  switch ( $Image_Type ){  
    case 1:  
      $Img = imagecreatefromgif ( $strImage )  or die("Fehler bei imagecreatefromgif");  
      break;  
    case 2:  
      $Img = imagecreatefromjpeg ( $strImage ) or die("Fehler bei imagecreatefromjpeg");  
      break;  
    case 3:  
      $Img = imagecreatefrompng ( $strImage )  or die("Fehler bei imagecreatefrompng");  
          break;  
        default;  
          die("Es gibt ein Problem bei switch von ImageCreate!");  
  }  
  
  $Img_new = imagecreatetruecolor($Image_Width, $Image_Height);  
  
  //Bild  
  imagecopy  ($Img_new, $Img, 0, 0, 0, 0, $Image_Width, $Image_Height)  
    or die("Fehler bei imagecopymerge Bild");  
  
  //Wasserzeichen  
  imagecopy  ($Img_new, $Watermark, $Watermark_pos_x, $Watermark_pos_y, 0, 0, $Watermark_Width, $Watermark_Height)  
    or die("Fehler bei imagecopymerge Wasserzeichen");  
  
  switch (  $Image_Type ){  
    case 1:  
      header ( 'content-type: image/gif' );  
      imagegif ( $Img_new );  
      break;  
    case 2:  
      header ( 'content-type: image/jpeg' );  
      imagejpeg ( $Img_new );  
      break;  
    case 3:  
    default:  
      header ( 'content-type: image/png' );  
      imagepng ( $Img_new );  
  }  
  
  imagedestroy ( $Img );  
  imagedestroy ( $Watermark );  
  imagedestroy ( $Img_new );  
?>  

PS: Im code vorher waren auch ein paar Fehler, sry dafür.