Plugin EasyPHPThumbnail
Plugin EasyPHPThumbnail
muito comum, ao trabalha com sites para a internet a necessidade de utilizar imagens, e to comum quanto, desenvolver galerias de fotos e/ou outros sistemas que utilizem das imagens do visitante. O problema que nem todos os visitantes possuem conhecimento para redimensionar, cortar, aplicar efeitos, marca d`gua, texto de direitos autorais e outros recursos em suas fotos antes de enviar os arquivos para o banco de dados do site. Como ns programadores PHP pensamos sempre na facilidade do sistema para nossos visitantes, nos vemos na necessidade de resolver estas tarefas para o visitante. Mas como? Existem na internet vrias classes em PHP que nos auxiliam nesta atividade. Estas classes utilizam a biblioteca grfica do Linux compilada para o PHP para tratar as imagens. Vamos ver uma dessas classes que nos permite uma infinidade de tarefas com as imagens dos nossos visitantes. A classe se chama EasyPHPThumbnail e pode ser baixada no site do desenvolvedor atravs do link:
http://www.mywebmymail.com/?q=system/files/easyphpthumbnail.zip
Os exemplos tambm podem ser visto no site do desenvolvedor.
http://www.mywebmymail.com/
Iniciando a classe
Faa a incluso do arquivo da classe em seu cdigo e em seguida inicie um objeto desta classe. Percebam que no necessrio passar nenhum parmetro na instanciao da classe. <?php include_once('inc/easyphpthumbnail.class.php'); $thumb = new easyphpthumbnail; $thumb -> Createthumb('gfx/image.jpg'); ?>
Sada
Podemos escolher duas formas de sada para o resultado do mtodo Createthumb. Por padro a opo screen que vai gerar a imagem e imprimir na tela. Podemos ainda utilizar a opo file o que ir salvar o arquivo em uma pasta definida no servidor sem exib-la. <?php include_once('inc/easyphpthumbnail.class.php'); $thumb = new easyphpthumbnail; $thumb -> Createthumb('gfx/image.jpg'); E include_once('inc/easyphpthumbnail.class.php');
Dessa forma os arquivos gerados sero salvos dentro de uma pasta chamada miniaturas dentro da pasta onde os arquivos originais se encontram.
Redimensionar imagens
Podemos definir o tamanho das novas imagens a serem geradas que a classe cuidar de atribuir a elas alturas de forma que no deforme a imagem. Podemos fazer este redimensionamento definindo tamanhos em pixels ou porcentagem. Para definir os tamanho sem pixels, basta que alteremos o atributo Thumbsize com os tamanhos em pixels que queremos a nova imagem. <?php include_once('inc/easyphpthumbnail.class.php'); $thumb = new easyphpthumbnail; $thumb -> Thumbsize = 120; $thumb -> Createthumb('gfx/image.jpg'); ?> Para definir o tamanho em porcentagem, alm de informar um valor para o atributo Thumbsize, precisamos tambm setar como true o atributo percentage. <?php include_once('inc/easyphpthumbnail.class.php'); $thumb = new easyphpthumbnail; $thumb -> Thumbsize = 50; $thumb -> Percentage = true; $thumb -> Createthumb('gfx/image.jpg'); ?> Dessa forma definimos que vamos redimensionar as imagens para a metade de seu tamanho (50%).
Rotacionar imagens
Podemos rotacionar fotografias, para isso basta atribuir um valor para o atributo Rotate com os graus que queremos rotacionar a imagem.
<?php include_once('inc/easyphpthumbnail.class.php'); $thumb = new easyphpthumbnail; $thumb -> Thumbsize = 50; $thumb -> Rotate = 90; $thumb -> Percentage = true; $thumb -> Createthumb('gfx/image.jpg'); ?>
0=disabilitado 1=retor ou 2=arredondado Porcentagem do corte Cortar randomicamente - Booleano 0=disabilitado 1=habilitado Topo esquerdo Booleano 0=disabilitado 1=habilitado Inferior esquerdo Booleano 0=disabilitado 1=habilitado Topo direito - Booleano 0=disabilitado 1=habilitado Inferior direito - Booleano 0=disabilitado 1=habilitado
<?php include_once('inc/easyphpthumbnail.class.php'); $thumb = new easyphpthumbnail; $thumb -> Backgroundcolor = '#D0DEEE'; $thumb -> Clipcorner = array(2,15,0,0,1,1,0); $thumb -> Createthumb('gfx/image.jpg'); ?>
sada do cdigo acima Percebam que os cantos que foram arredondados ficam com uma cor de background, pois atribumos um valor para o atributo Backgroundcolor. Caso precisamos que os cantos arredondados fiquem transparentes, devemos utilizar o atributo Maketransparent passando um vetor com 4 posies. [0]: [1]: [2]: [3]: Booleano 0=disabilitado 1=habilitado 0=PNG 1=GIF cor para substituio: '#FF0000' Tolerncia RGB 0 100
<?php include_once('inc/easyphpthumbnail.class.php'); $thumb = new easyphpthumbnail; $thumb -> Backgroundcolor = '#0000FF'; $thumb -> Clipcorner = array(2,15,0,1,1,1,1);
<?php include_once('inc/easyphpthumbnail.class.php'); $thumb = new easyphpthumbnail; $thumb -> Thumbsize = 300; $thumb -> Copyrighttext = 'www.tgiovanella.com.br'; $thumb -> Copyrightposition = '50% 90%'; $thumb -> Copyrightfonttype = 'handwriting.ttf'; $thumb -> Copyrightfontsize = 30; $thumb -> Copyrighttextcolor = '#FFFFFF'; $thumb -> Createthumb('gfx/image.jpg'); ?>
Opes
$thumb -> Createthumb('imagepath'[,'output']) Cria uma instancia da classe. Output padro Screen mas tambm pode ser utilizado como file para gerar os arquivos e no exibir automaticamente na tela.
= (int)
= (int)
= (int)
= (boolean)
Use TRUE para que o tamanho fornecido para a imagem seja em porcentagem e no pixels.
= (int)
= (string)
= (boolean)
= (boolean)
= (boolean)
= (int)
= (string)
= (string)
= (string)
= (int)
= (string)
= (string)
= (string)
= (string)
= (array)
Corta as bordas da imagem obedecendo os parametros de um array de 7 posies. [0]: [1]: [2]: [3]: [4]: [5]: [6]: 0 = desabilitado, 1 = reto, 2 arredondado. Porcentagem do corte. Cortar randomicamente. 0 = desabilitado, 1 habilitado Borda superior esquerda. 0 = no cortar, 1 cortar Borda inferior esquerda. 0 = no cortar, 1 cortar Borda superior direita. 0 = no cortar, 1 cortar Borda inferior direita. 0 = no cortar, 1 cortar = (array)
Adiciona o efeito de imagem envelhecido obedecendo os parametros de um array de 3 posies. [0]: 0 = desabilitado, 1 = habilitado [1]: Adicionar rudo. De 0 a 100. [2]: Profundidade do Sephia. De 0 a 100. (0 = escala de cinza).
= (array)
Corta a imagem obedecendo um array de 6 posies. [0]: [1]: [2]: [3]: [4]: [5]: 0=desabilitado 1=habilitar corte livre 2=habilitar corte a partir do centro 3=habilitar corte retangular 0=porcentagem 1=pixels Cortar esquerda Cortar direita Cortar acima Cortar abaixo.
= (string)
= (string)
= (string)
= (string)
Endereo do arquivo TTF da fonte a ser utilizada no texto caso queira utilizar uma fonte diferente.
= (int)
= (string)
= (int)
= (boolean)
= (boolean)
= (boolean)
= (boolean)
= (array)
Matriz do filtro definido pelo usurio com nove posies. [0]: [1]: [2]: [3]: [4]: [5]: [6]: a1,1 a1,2 a1,3 a2,1 a2,2 a2,3 a3,1
[7]: a3,2 [8]: a3,3 $thumb -> Divisor O divisor do filtro. = (int)
= (int)
= (boolean)
= (boolean)
= (boolean)
= (boolean)
= (boolean)
= (boolean)
= (array)
Aplica uma pespectiva na imagem obedecendo uma matriz de 3 posies. [0]: 0=desabilitar 1=habilitar [1]: Direo 0=esquerda 1=direita 2=topo 3=abaixo [2]: Fora da perspectiva. De 0 a 100.
= (array)
Aplica uma perspectiva na imagem obedecendo um vetor de 3 posies. [0]: 0=desabilitar 1=habilitar [1]: Direo 0=esquerda 1=direita 2=topo 3=abaixo [2]: Fora da perspectiva. De 0 a 100.
= (array)
Aplica o efeito shading na imagem (efeito de grafite). [0]: [1]: [2]: [1]: 0=desabilitar 1=habilitar Fora do efeito. 0 100 rea do efeito. 0 100 Direo 0=esquerda 1=direita 2=topo 3=abaixo
= (string)
= (array)
Aplica o efeito de espelhamento obedecendo um vetor de 5 posies. [0]: [1]: [2]: [3]: [4]: 0=desabilitar 1=habilitar Fora do incio do efeito do gradiente 0 100 Fora do fim do efeito do gradiente 0 100 rea do efeito 0 100 Lacuna entre a imagem original e o efeito em pixels.
= (string)
= (boolean)
= (array)
Subtitui uma cor por outran a imagem. Obedece um vetor de 4 posies. [0]: 0=desabilitar 1=habilitar [1]: Cor a ser utiizada: ('#00FF00').
= (array)
Reposiciona os pixels aleatoriamente na imagem. [0]: 0=desabilitar 1=habilitar [1]: Arranjo dos pixels [2]: Repeties (use com cuidado!).
= (boolean)
= (array)
Altera o brilho da imagem obedecendo um vetor de duas posies. [0]: 0=desabilitar 1=habilitar [1]: Brilho. De -100 a 100.
= (array)
Change the contrast of the image array(1,30) [0]: 0=desabilitar 1=habilitar [1]: Contraste. De -100 a 100.
= (array)
Muda o fator gamma da imagem. [0]: 0=desabilitar 1=habilitar [1]: Fator de correo Gamma.
= (array)
Change the palette of the image array(1,32) [0]: 0=desabilitar 1=habilitar [1]: Fator de correo Gamma. $thumb -> Colorize = (array)
0=desabilitar 1=habilitar RGB, Vermelho. 0 255 RGB, Verde. 0 255 RGB, Azul. 0 255 Nvel de opacidade. 0 127.
= (array)
Pixelar uma imagem. Obedece um vetor de 2 posies. [0]: 0=desabilitar 1=habilitar [1]: Tamanho do bloco em pixels.
= (boolean)
= (array)
// Aplica o efeito twirl na imagem. Obedece um vetor de 3 posies. [0]: 0=desabilitar 1=habilitar [1]: Fora do Efeito. 0 100 [2]: Direo do espiral 0=horrio 1=anti-horrio.
= (array)
// Aplica um feito de distoro na imagem. Obedece um vetor de 5 posies. [0]: [1]: [2]: [3]: [4]: 0=desabilitar 1=habilitar Quantidade de ondas horizontais Amplitude das ondas horizontais Quantidade de ondas verticais Amplitude das ondas verticais
= (array)
Aplica a deformao (Lake) na imagem. [0]: 0=desabilitar 1=habilitar [1]: Densidade das ondas. [2]: rea mensurada pelo efeito. 0 100.
= (array)
0=desabilitar 1=habilitar Amplitude em pixels Radius em pixels Fora das ondas em pixels. = (array)
Faz com que a imagem fique transparente [0]: [1]: [2]: [3]: 0=desabilitar 1=habilitar 0=PNG, 1=GIF Cor a ser substituida pela transparncia: '#FF0000' Tolerancia RGB. 0 - 100