Teil von  SELFPHP   Teil von  Code Snippets / PHP / Images
  +++ SELFPHP CronJob-Service :: Jetzt auch als Professional-Version verfügbar! +++



:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: SELFPHP Forum ::

Fragen rund um die Themen PHP? In über 120.000 Beiträgen finden Sie sicher die passende Antwort!  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

:: Qozido ::

Die Bilderverwaltung mit Logbuch für Taucher und Schnorchler.   

 
 
Ein Bild on-the-fly vertikal spiegeln





Beispielaufgabe

Ein Bild soll on-the-fly vertikal gespiegelt werden.



Beschreibung

Der folgende Code Snippet durchläuft zwei FOR-Schleifen, die erste ist für die X-Achse und die zweite für die Y-Achse. Innerhalb der Schleifen werden die Pixel der ersten Pixelspalte von $rOrgImage in die erste Pixelspalte des $rReturnImage von unten nach oben kopiert (Pixel für Pixel), dann die zweite Pixelspalte von $rOrgImage in die zweite Pixelspalte des $rReturnImage (von unten nach oben kopiert) usw. Nach Beendigung der Schleifendurchläufe befindet sich in $rReturnImage das vertikal gespiegelte Abbild von $rOrgImage. Aufgerufen wird das Script zum Beispiel im IMG-Tag mit dem einzigen Query-Parameter "d", der das betreffende Bild angibt.



<?PHP
  $strOrgImage 
'./path/to/image/' $_GET['d'];

  list ( 
$iOrgImageX$iOrgImageY,
         
$iOrgImageType ) = getimagesize $strOrgImage );

  switch ( 
$iOrgImageType )
  {
    case 
1:
      
$rOrgImage imagecreatefromgif $strOrgImage );
      break;
    case 
2:
      
$rOrgImage imagecreatefromjpeg $strOrgImage );
      break;
    case 
3:
      
$rOrgImage imagecreatefrompng $strOrgImage );
  }

  
$rReturnImage imagecreatetruecolor $iOrgImageX$iOrgImageY );

  for ( 
$iX 0$iX $iOrgImageX$iX++ )
  {
    
$iYr 0;
    for ( 
$iY = ( $iOrgImageY ); $iY >= 0$iY-- )
    {
      
$iColorIndex imagecolorat $rOrgImage$iX$iY );
      
imagesetpixel $rReturnImage$iX$iYr$iColorIndex );

      
$iYr++;
    }
  }

  switch ( 
$iOrgImageType )
  {
    case 
1:
      
header 'content-type: image/gif' );
      
imagegif $rReturnImage );
      break;
    case 
2:
      
header 'content-type: image/jpeg' );
      
imagejpeg $rReturnImage );
      break;
    case 
3:
      
header 'content-type: image/png' );
      
imagepng $rReturnImage );
  }

  
imagedestroy $rOrgImage );
  
imagedestroy $rReturnImage );
?>



Anwendungsbeispiel

<html>
  <head>
    <title>
      BEISPIEL: Bild vertikal gespiegelt
    </title>
  </head>
  <body>
    Bild vertikal gespiegelt:<br />
    <br />
    <img src="reflectImageVertical.php?d=picture.jpg" />
  </body>
</html>



Zielbild: picture.jpg





Ausgabebeispiel: Browseransicht







 




:: Premium-Partner ::

Webhosting/Serverlösungen


Premium-Partner MECO Systemhaus GmbH & Co. KG
Premium-Partner PSW GROUP GmbH & Co. KG
Premium-Partner BPI-Systeme
Premium-Partner Pixel X
Premium-Partner
 

:: SELFPHP Sponsoren ::


Microsoft Deutschland GmbH
twosteps.net - ...Premium-Webhosting
Sedo - Bei uns wird PHP großgeschrieben
hostfactory.ch - OptimaNet Schweiz AG
ZEND - The PHP Company
Kaspersky Labs
HighText iBusiness
SELFPHP Sponsoren
 

Qozido


© 2001-2009 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt