[PHP] Milchglas Effekt Klasse

Dieses Thema im Forum "Webentwicklung" wurde erstellt von hell18, 11. Januar 2008 .

Schlagworte:
  1. 11. Januar 2008
    Milchglas Effekt Klasse

    Möchtest auch du das Bilder auf deiner Homepage aussehen wie Milchglas ?
    Kein Problem mit PHP, Glib und der "Milchglas Effekt Klasse" von der Krossen Krabbe die ich euch hier zur Verfügung stellen möchte falls jemand sowas braucht!

    Viel Spaß!

    PHP:

        
    class  Image  {
           public function 
    __construct  ( $filename )
           {
               
    $this -> image  imagecreatefromjpeg ( $filename );
               
    $this -> imagex  imagesx ( $this -> image );
               
    $this -> imagey  imagesy ( $this -> image );
           }
           public function 
    spatter  ( $radius  5 $smoothness  0 )
           {
               for (
    $y  1 $y  imagesy ( $this -> image );  $y ++) {
                   for (
    $x  1 $x  imagesx ( $this -> image );  $x ++) {
                       
    // read pixel color
                       
    $index  imagecolorat ( $this -> image $x $y );
                       
    $colors  imagecolorsforindex ( $this -> image $index );
                       
    $color  imagecolorallocate ( $this -> image $colors [ "red" ],  $colors [ "green" ],  $colors [ "blue" ]);
               
                       
    // where to copy the pixel?
                       
    $newx  $x  rand ( $radius  $radius  2 $radius );
                       
    $newy  $y  rand ( $radius  $radius  2 $radius );
               
                       
    // coordinates outside of the picture?
                       
    $newx  = ( $newx  $this -> imagex ) ?  $this -> imagex  $newx ;
                       
    $newy  = ( $newy  $this -> imagey ) ?  $this -> imagey  $newy ;
               
                       
    // copy pixel
                       
    imagesetpixel ( $this -> image $newx $newy $color );
                   }
               }
           }
           public function 
    getImage ()
           {
               return 
    imagejpeg ( $this -> image );
           }
           public function 
    display ()
           {
               echo 
    imagejpeg ( $this -> image );
           }
           public function 
    destroy ()
           {
               
    imagedestroy ( $this -> image );
           }
       }
    Demo: http://hell18.he.funpic.de/milchglas/
     
  2. 11. Januar 2008
    AW: Milchglas Effekt Klasse

    Hi du,

    find ich recht interessant, wobei ich manche dinge komplett anders machen würde.

    1. Würde ich das Geheimnisprinzip noch weiter durchziehen und z.B. die Header-Angabe mit in die Klasse zu ziehen, und dann nochmal mit Parametern zu arbeiten wie z.B. ein Response-Objekt.
    2. Ist das echo bei Display wirklich nötig? Bild wird doch damit sowieso auf die Standardausgabe geschrieben wenn man keinen Dateinamen verwendet.
    3. Würde ich den Destruktor nutzen um destroy auszuführen.

    MfG und nix für ungut, only my cents ...
     
  3. 12. Januar 2008
    AW: Milchglas Effekt Klasse

    hmm, also mir fehlt die überprüfung ob es ein bild ist.

    - dateiendung in array "jpg", "jpeg", "png", "gif", "bmp" ?
    - imagecreate() erfolgreich?

    gehört meiner meinung dazu das man dem user eigene fehlermeldugen ausgibt. (ned jeder kann php)
     
  4. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.