Image Class

Publicado por Max Rosan 24/01/2005

[ Hits: 4.671 ]

Download image.class.rar




Classe para trabalhar com imagens

  



Esconder código-fonte

<?php
/*
  Autor: Max Rosan dos Santos Junior
  E-Mail: maxjunior@starconect.com.br
  Versão: 1.2 R
*/
 class Image {
  var $im = null; // Pública
  var $size = array(); // Pública
  /*
   @param $file Arquivo imagem
  */
   function image($file) { //Construtor
    $this->im = @imagecreatefromjpeg($file); // Cria uma nova Imagem na memória a partir de outra no formato JPEG 
    $this->size = array(@imagesx($this->im), @imagesy($this->im)); // Pega as dimensões da imagem
   }
   // Pega resolução
    function getResolution() { // Retorna a resolução da imagem
    return $this->size;
   }
   // O método clarear foi desativado por ter um loop quase infinito, ele ficará em estudos
   /*
    function clarear() {
     for ($pxh = 0; $pxh <= ( $this->size[1] ); $pxh++)
       for ($pxw = 0; $pxw <= ( $this->size[0] ); $pxw++) {
       $rgb = imagecolorat($this->im, $pxw, $pxh);
        $r = ($rgb >> 16) & 0xFF;
      $g = ($rgb >> 8) & 0xFF;
      $b = $rgb & 0xFF;
      $cor = imagecolorallocate($this->im, ($r + 10), ($g + 5), ($b + 2));
      imagesetpixel($this->im, $pxw, $pxh, $cor);
    }
   }
   */
   /*
   @param $w Largura , $y Comprimento
   */
  function resized($w, $h) { // Reduz a imagem
   $scale = min(($w / $this->size[0]), ($h / $this->size[1])); // Escala para fazer a redução da imagem de acordo com sua própria dimensão
   $w = $this->size[0] * $scale; // Largura
   $h = $this->size[1] * $scale; // Altura
   $imTrue = @imagecreatetruecolor($w, $h); // Cria uma nova imagem na memória
   @imagecopyresampled($imTrue, $this->im, 0, 0, 0, 0, $w, $h, $this->size[0], $this->size[1]); // Reduz a imagem
   $this->im = $imTrue; // Atualiza a imagem
  }
   /*
    @param $x, $y Coordenadas
   */
   function coord($x, $y, $f = null) { // Pega certo ponto de uma imagem na resolução 100 x 100
      $imdst = imagecreatetruecolor(100, 100); // Cria uma nova imagem na memória
    imagecopyresized($imdst, $this->im, 0, 0, $x, $y, 100, 100, 100, 100);
    $this->im = $imdst;
    imagedestroy($imdst);
   }   
    /*
    @param $logo Arquivo Marca D´água em formato PNG
   */
    function logo($logo) { // Adiciona uma imagem dentro de outra , Marca D´água
     $imLogo = imagecreatefrompng($logo); // Cria uma imagem na memória a partir de uma PNG
     @imagecopy($this->im, $imLogo, (@imagesx($this->im) - @imagesx($imLogo)), (@imagesy($this->im) - @imagesy($imLogo)), 0, 0, @imagesx($imLogo), @imagesy($imLogo)); // Cópia para dentro da imagem
     @imagedestroy($imLogo);
    }
   /*
    @param $path Arquivo para onde será salvo
    @param $type Tipo da imagem
   */
   function save($path, $type = JPEG) {
    if ($type == JPEG)
     @imagejpeg($this->im, $path, 100);
   else if ($type == GIF)
     @imagegif($this->im, $path);
    else if ($type == PNG)
     @imagepng($this->im, $path);
    @imagedestroy($this->im);
   }
  }
 ?>

Scripts recomendados

Upload de arquivos e validação de tipo do mesmo

Redimensionamento de imagem JPEG

Página de downloads que identifica arquivos por extensão

source-highlight

PHP MiniConsole 0.0.1


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts