Image Class
Publicado por Max Rosan 24/01/2005
[ Hits: 5.058 ]
Classe para trabalhar com imagens
<?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); } } ?>
Gerando um arquivo randômico com PHP
Função para formatar tamanho de arquivo
Eliminar Todos os sub-diretórios de um Diretório
Lendo e escrevendo em arquivos.
Orion - extração e conversão de dados de arquivos texto e CSV
Nenhum comentário foi encontrado.
Atualizações de Apps, Desktop e Kernel agitam o ecossistema Linux nesta terça-feira
Miyoo Mini Plus + Onion OS (Linux)
IA local no bolso, novo visual no Raspberry Pi OS e mais destaques do software livre
Kernel turbinado, compatibilidade em alta e debate sobre sustentabilidade: o dia no mundo Linux
Kernel turbinado e GNOME 49 dominam o giro do dia no mundo Linux
Adicionando o repositório backports no Debian 13 Trixie
Como definir um IP estático no Linux Debian
Como colocar atalho para uma pasta na área de trabalho do Ubuntu 24.04... (1)
Como listar os arquivos em "bloquin... (0)
Como vencer a procrastinação? (8)
Adicional de convivdado em linux somente linha de comando (3)