Image Class

Publicado por Max Rosan 24/01/2005

[ Hits: 4.756 ]

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

Cadastro automatico

source-highlight

Classe para envio de arquivo - Programação Orientada a Objetos

TFtp

Manipulação de Arquivos XML para OT Server


  

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