Thumbnail image partum per PHP | Cum effectus Thumbnail

Programming PHP: Image generate imaginibus (thumbnail) quidam vexillum vel ad imagines resize, effectum ingenti features ut frame, in ore gladii, et multos alios effectus text.

Icon

easyphpthumbnail-20121216.zip
18.87 MB 5849 Downloads

auctor: Jos Nutbroek (JN)
patriam: Holanda
Site: Classes PHP

in

Como diz o ditado: “Uma imagem vale por mil palavras”. Fazendo disso uma verdade, segue abaixo alguns dos inúmeros efeitos que a classe easyphpthumbnail.class.php pode lhe proporcionar. Tudo com código fonte e exemplo da imagem com seu respectivo efeito.

Para o código não ficar repetitivo, nos exemplos seguintes irei escrever apenas os códigos relativos aos efeitos, representado pelo item (3) inferius, já que a lógica para todos efeitos tem a mesma sequência.

Código padrão | Obrigatório em todos os exemplos seguintes

1
2
3
4
5
6
7
8
9
10
11
12
13
<?PHP
    /** (1) Importa a classe: easyphpthumbnail.class.php */
    include_once('easyphpthumbnail.class.php');
 
    /** (2) Instancia um objeto da classe: $thumb */
     $thumb = novus easyphpthumbnail;
 
    /** (3) Aplica o código fonte com o EFEITO desejado */
    $thumb -> Thumbsize = 300;
 
    /** (4) Cria um thumbnail e a saída na tela ou arquivo */
    $thumb -> Createthumb('image.jpg');
?>

illud
No exemplo acima, a imagem é exibida na tela em tempo de execução. Caso você queira gravar a imagem em disco, utilize ‘file como segundo parâmetro do método Createthumb(), conforme a seguir demonstrado:

1
2
3
4
<?PHP
    // Cria a imagem miniatura (image) e grava em arquivo
    $thumb -> Createthumb('gfx/image.jpg', 'file');
?>

Dentro do pacote disponível para download, existe o arquivo API.txt que contém descrições de todas as variáveis e funções da classe easyphpthumbnail.class.php.

Imagem original – 150 x 113 pixels | Sobre esta imagem serão aplicados efeitos

imgori

exemplum 1 – Redimensionamento automático da imagem | A imagem é ajustada para o tamanho 90 pixels

1
2
3
<?PHP
     $thumb -> Thumbsize = 90; 
?>

exemplum 2 – Adiciona um quadro ao redor da imagem | 10 px de largura e na cor vermelha

1
2
3
4
<?PHP
     $thumb -> Framewidth = 10;
     $thumb -> Framecolor = '#FF0000';
?>

exemplum 3 – Adiciona um texto (copyright) na imagem | Define texto, posição, genus, tamanho e cor da fonte

1
2
3
4
5
6
7
<?PHP
    $thumb -> Copyrighttext = 'taylorlopes.com';
    $thumb -> Copyrightposition = '50% 90%';
    $thumb -> Copyrightfonttype = 'MAIAN.TTF';
    $thumb -> Copyrightfontsize = 14;
    $thumb -> Copyrighttextcolor = '#FFFFFF';
?>

exemplum 4 – Define a altura da imagem | Mantém as proporções: 50px de altura

1
2
3
<?PHP
    $thumb -> Thumbheight = 50;
?>

exemplum 5 – Define a largura da imagem | Mantém as proporções: 100px de largura

1
2
3
<?PHP
    $thumb -> Thumbwidth = 100;
?>

exemplum 6 – Defina o redimensionamento de percentagem em vez de pixels | 50% do tamanho original

1
2
3
4
<?PHP
    $thumb -> Thumbsize = 50;
    $thumb -> Percentage = verum;
?>

exemplum 7 – Permitir que as imagens sejam alargadas (Infladas) | Ajusta para 300 px

1
2
3
4
<?PHP
    $thumb -> Thumbsize = 300;
    $thumb -> Inflate = verum;
?>

exemplum 8 – Define a qualidade da imagem, autem 0 autem 100 | 10% de qualidade em relação a original

1
2
3
<?PHP
    $thumb -> Quality = 10;
?>

exemplum 9 – Cria uma sombra na imagem | Define a cor do sombreamento

1
2
3
4
<?PHP
    $thumb -> Backgroundcolor = '#D0DEEE';
    $thumb -> Shadow = verum;
?>

exemplum 10 – Recorta os cantos da imagem | Define a cor do de fundo (área cortada)

1
2
3
4
<?PHP
    $thumb -> Backgroundcolor = '#FFFFFF';
    $thumb -> Clipcorner = ordinata(1,15,0,1,1,1,1);
?>

exemplum 11 – Simula a idade da imagem | Imagem com aparência antiga

1
2
3
<?PHP
    $thumb -> Ageimage = ordinata(1,10,80);
?>

exemplum 12 – Adiciona uma moldura na imagem | A moldura é ajustada à imagem

1
2
3
<?PHP
    $thumb -> Borderpng = 'border.png';
?>

exemplum 13 – Simula um fichário (aspiral) adicionado à imagem | Define borda e cor do quadro

1
2
3
4
5
6
<?PHP
    $thumb -> Framewidth = 10;
    $thumb -> Framecolor = '#000000';
    $thumb -> Binder = verum;
    $thumb -> Binderspacing = 8;
?>

exemplum 14 – Gira a imagem de paisagem para retrato, no sentido horário | 90 graus

1
2
3
<?PHP
    $thumb -> Rotate = 90;
?>

exemplum 15 – Inverte a imagem horizontalmente

1
2
3
<?PHP
    $thumb -> Fliphorizontal = verum;
?>

exemplum 16 – Inverte a imagem verticalmente

1
2
3
<?PHP
    $thumb -> Flipvertical = verum;
?>

exemplum 17 – Gira a imagem sem cortes

1
2
3
<?PHP
    $thumb -> Rotate = -30;
?>

exemplum 18 – Gira e corta a imagem

1
2
3
4
5
<?PHP
    $thumb -> Rotate = -30;
    $thumb -> Croprotate = verum;
    $thumb -> Backgroundcolor = '#FFFFFF';
?>

exemplum 19 – Cria uma tela sempre quadrada | O pontilhado é só para destacar que a imagem ficou quadrada

1
2
3
<?PHP
    $thumb -> Square = verum;
?>

exemplum 20 – Recorta a imagem

1
2
3
<?PHP
    $thumb -> Cropimage = ordinata(2,0,20,20,35,35);
?>

exemplum 21 – Cria uma marca d’água

1
2
3
4
5
<?PHP
    $thumb -> Watermarkpng = 'watermark.png';
    $thumb -> Watermarkposition = '50% 50%';
    $thumb -> Watermarktransparency = 40;
?>

exemplum 22 – Aplica um filtro pré-definido para a imagem (lento em PHP4)

1
2
3
4
5
6
7
<?PHP
    $thumb -> Edge = verum;
    $thumb -> Emboss = verum;
    $thumb -> Sharpen = verum;
    $thumb -> Blur = verum;
    $thumb -> Mean = verum;
?>

exemplum 23 – Aplica um filtro personalizado para a imagem (lento no PHP4)

1
2
3
4
5
6
<?PHP
    $thumb -> Filter = ordinata(-1,-1,-1,-1,8,-1,-1,-1,-1);
    $thumb -> Divisor = 1;
    $thumb -> Offset = 0;
    $thumb -> Applyfilter = verum;
?>

exemplum 24 – Aplica uma perspectiva para a imagem | Esquerda para direita

1
2
3
4
<?PHP
    $thumb -> Perspective = ordinata(1,0,20);
    $thumb -> Backgroundcolor = '#FFFFFF';
?>

exemplum 25 – Aplica uma perspectiva para a imagem | Direita para esquerdaThumb

1
2
3
4
<?PHP
    $thumb -> Perspectivethumb = ordinata(1,1,25);
    $thumb -> Backgroundcolor = '#FFFFFF';
?>

exemplum 26 – Aplica um efeito de sombreamento interno

1
2
3
4
<?PHP
    $thumb -> Shading = ordinata(1,70,80,0);
    $thumb -> Shadingcolor = '#D0DEEE';
?>

exemplum 27 – Aplica um efeito de espelho na imagem

1
2
3
4
5
<?PHP
    $thumb -> Mirror = ordinata(1,10,90,40,2);
    $thumb -> Mirrorcolor = '#FFFFFF';
    $thumb -> Backgroundcolor = '#FFFFFF';
?>

exemplum 28 – Aplica um efeito de negativo

1
2
3
<?PHP
    $thumb -> Negative = verum;
?>

exemplum 29 – Troca uma cor na imagem | Troca a cor preta por azul

1
2
3
<?PHP
    $thumb -> Colorreplace = ordinata(1,'#000000','#0000FF',60);
?>

exemplum 30 – Reposiciona os pixels randomicamente | Efeito de distorção

1
2
3
<?PHP
    $thumb -> Pixelscramble = ordinata(1,4,2);
?>

exemplum 31 – Converte para escala de cinza

1
2
3
<?PHP
     $thumb -> Greyscale = verum;
?>

exemplum 32 – Altera o Brilho da imagem

1
2
3
<?PHP
     $thumb -> Brightness = ordinata(1,50);
?>

exemplum 33 – Mescla uma cor

1
2
3
<?PHP
     $thumb -> Colorize = ordinata(1,0,0,125,0);
?>

exemplum 34 – Torce uma imagem

1
2
3
<?PHP
     $thumb -> Twirlfx = ordinata(1,20,0);
?>

exemplum 35 – Cria efeito de ondulação na imagem

1
2
3
<?PHP
     $thumb -> Ripplefx = ordinata(1,5,15,5,5);
?>

exemplum 36 – Cria efeito de lago na imagem

1
2
3
<?PHP
     $thumb -> Lakefx = ordinata(1,15,80);
?>

exemplum 37 – Cria efeito de gota d’água na imagem

1
2
3
<?PHP
     $thumb -> Waterdropfx = ordinata(1,1.2,400,40);
?>

exemplum 38 – Combinando alguns efeitos

1
2
3
4
5
6
7
8
9
10
11
12
<?PHP
    $thumb -> Thumbsize = 300;
    $thumb -> Copyrighttext = 'taylorlopes.com';
    $thumb -> Copyrightposition = '50% 80%';
    $thumb -> Copyrightfonttype = 'MAIAN.TTF';
    $thumb -> Copyrightfontsize = 20;
    $thumb -> Copyrighttextcolor = '#FFFFFF';
    $thumb -> Borderpng = 'border.png';
    $thumb -> Backgroundcolor = '#D0DEEE';
    $thumb -> Mirror = ordinata(1,30,90,40,2);
    $thumb -> Mirrorcolor = '#D0DEEE';
?>
Total aditus: 45469

55 Reviews “Thumbnail image partum per PHP | Cum effectus Thumbnail

  1. salve Taylor, estou com uma dúvida muito cruel
    No uso de imagens dinãmicas o uso de função no lugar do image.jpg não me ajudaria certo??

    /** (4) Cria um thumbnail e a saída na tela ou arquivo */
    $thumb -> Createthumb(‘image.jpg’);

    Qual seria o melhor modo de se fazer isto??

  2. Kessinger bonum post meridiem,,
    muito bom para manipular as imagens, só tem um detalhe que eu acabei encontrando, que ao setar o chmod da pasta, in acie 1843 da sua classe:

    si ($this->Chmodlevel!=”) {chmod($this->Thumblocation.$this->Thumbprefix.$this->imago,octdec($this->Chmodlevel));}

    falta um basename antes do atributo $this->imago, pois senao ele n encontrar o caminho correto da sua pasta. questus satis:

    si ($this->Chmodlevel!=”) {chmod($this->Thumblocation.$this->Thumbprefix.basename($this->imago),octdec($this->Chmodlevel));}

    No mais ta tudo tranquilo. gratias, cubantem piis foveamus amplexibus

    • Oi Elenilton.
      Essa classe PHP gera uma imagem com um dos efeitos acima descritos, a partir de outra imagem. in alia verba,, ela pega uma imagem já existente e cria outra, que inclusive pode ser um thumbnail (miniatura)! Pelo que entendi, você quer tirar um printscreen ou screenhost. in hoc casu,, esta classe não te atende, pois a imagemmatrizainda não existe.

      Para tirar screenhost (capturar tela de sites), você pode instalar um plugin Firefox ou aplicativos para este fim:
      ScreenGrabhttp://www.screengrab.org/
      LightShothttp://lightshot.skillbrains.com/
      WebShothttp://www.websitescreenshots.com/

      Você também pode usar sites que fazem este serviço online (screenhost), bastando digitar a URL do site que deseja capturar a tela:
      Thumbalizrhttp://www.thumbalizr.com/
      Webshotsprohttp://www.webshotspro.com/
      Kwouthttp://kwout.com/

      Não sei se era isso, mas fica aqui esta dica! Aliás, tem muitos outros por aí… locutus est, t +

      • Essa duvida ‘e a mesma que tenho.
        Eu tenho imagens que preciso redimencionar.
        Mas as imagens estao em outro servidor.
        Pra usar essa clase eu fiz assim :

        $thumb -> Createthumb(‘http://www.agritechmt.com.br/files/imagens/201201/1325718595.png’);

        mas não deu certo.
        Como poderia fazer algo do tipo.
        Tem alguma forma de informar a url da imagem?
        gratias agimus tibi

      • Uma coisa é capturar a tela de um site (screenhost); outra é recuperar uma imagemem todo caso, veja abaixo o comentário que fiz aqui em “5 January 2012 ut 9:42” in CRIANDO THUMBNAIL DE IMAGEM LOCALIZADA EM OUTRO SITE. Falouuu…

    • Oi Geovani, haec, testei aqui e funciona perfeitamente todas as configurações do exemplo acima (redimensionamento, effectus,, salvar imagem em disco, etc). Será que seu problema não é por que está faltando habilitar a extensão php_gd2 no seu php.ini? O GD é uma biblioteca do PHP utilizada para manipulação de imagem. Só pra constar, estou usando PHP Version 5.3.0. locutus est, T +.

  3. André Luiz dixit::

    taylor, o script é mto bom. Era justamente isso que eu estava procurando, mas tenho uma dúvida.
    E se eu quiser colocar dentro de um looping? Como funcionaria? Eu tentei abaixo e não funcionou. Provavelmente errei alguma coisa.

    gratias agimus tibi!

    $sql = “LEGO * from ultimoscloses WHERE ativo=’1ORDER BY id DESC LIMIT 3”;
    $resultado = mysql_query($sql);
    dum($linha = mysql_fetch_array($resultado, MYSQL_BOTH)){

    $foto1=$linha[‘foto1’];
    ?>


    Createthumb(‘admin/foto/$foto1’);?>

    • Oi André, testei aqui e funciona bem. O que você deve fazer é salvar o thumbnail e depois exibí-lo, ao invés de apenas jogar a saída para a tela. Como descrevi neste Artigo você deve usar a opção ‘fileno segundo parâmetro do método Createthumb. Abaixo fiz e testei um exemplo de loop com imagens, basta adaptar a sua necessidade. locutus est, t +

      FAZENDO LOOP COM IMAGENS

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      
      <?PHP
          /** (1) Importa a classe: easyphpthumbnail.class.php */
          include_once('easyphpthumbnail.class.php');
       
          /** (2) Instancia um objeto da classe: $thumb */
           $thumb = novus easyphpthumbnail;
       
          /** (3) Aplica o código fonte com o EFEITO desejado */
          $thumb -> Thumbsize = 100;
       
          /** (4) Array de imagens - PODE SER ENTRADA VINDA DO BANCO DE DADOS */
          $images = ordinata('example1.jpg', 'example2.jpg', 'example3.jpg');
       
          /** (5) Faz o loop para criar as imagens e exibí-las */
          if ($images as $imago) {
       
            /** (6) Cria o thumbnail e salva em disco local */ 
            $thumb -> Createthumb($imago, 'file');
       
            /** (7) Exibe o thumbnail salvo */      
            Echo "<img src='thumbnail_".$imago."' /><br />";
          }
       
          /** (8) Destroi o objeto - libera memória */ 
          unset($thumb);  
      ?>
      • Cleidisson dixit::

        Bom dia Taylor tudo bem?
        Estou tentando utilizar a classe que vocÊ postou, para recuperar imagens vindas do banco de dados, gerar as miniaturas e imprimir elas na tela.
        Porém como é uma busca, e esta é percorrida através de um while,e o número de imagens é diferente a cada pesquisa, não consegui ajustar
        para funcionar.
        Teria alguma forma de que ele ao invés de salvar apenas imprima o efeito na tela?
        Ou o que você me propõe?
        Obrigado desde já.

      • Vagner dixit::

        cara copiei e colei o teu exemplo mas não funcionou pode me ajudar??

        //teste para ver se foto realmento existe
        Echo ”;

        /** (1) Importa a classe: easyphpthumbnail.class.php */
        include_once(‘easyphpthumbnail.class.php’);

        /** (2) Instancia um objeto da classe: $thumb */
        $thumb = new easyphpthumbnail();

        /** (3) Aplica o código fonte com o EFEITO desejado */
        $thumb -> Thumbsize = 100;

        /** (4) Array de imagensPODE SER ENTRADA VINDA DO BANCO DE DADOS */
        $images = array(‘fotos/vagner.jpg’, ‘fotos/511e3eaf61191.jpg’);

        /** (5) Faz o loop para criar as imagens e exibí-las */
        if ($images as $image) {

        /** (6) Cria o thumbnail e salva em disco local */
        $thumb -> Createthumb($imago, ‘file’);

        /** (7) Exibe o thumbnail salvo */
        Echo “”;
        }

        /** (8) Destroi o objetolibera memória */
        unset($thumb);

      • Oi Vagner, ita, o código funciona, testei várias vezes. Que chave “}” perdida ali depois da linha 7? Outra coisa, como disse antes, será que seu problema não é por que está faltando habilitar a extensão php_gd2 no seu php.ini?

  4. André Luiz dixit::

    O Script que estou tentando fazer e por algum motivo não foi completo seria este abaixo:

    $sql = “LEGO * from ultimoscloses WHERE ativo=’1ORDER BY id DESC LIMIT 3”;
    $resultado = mysql_query($sql);
    dum($linha = mysql_fetch_array($resultado, MYSQL_BOTH)){
    $titulo = $linha[‘titulo’];
    $id = $linha[‘id’];
    $subtitulo = $linha[‘subtitulo’];
    $link = $linha[‘link’];
    $foto1=$linha[‘foto1’];
    ?>
    Createthumb(‘admin/ultimoscloses/$foto1’);?>

    gratias agimus tibi!

  5. Muito boa a classe.
    Uso a muito tempo (cerca de 2 annorum) a Classe do Verot.net que tem algumas das funcionalidades similares a essa classe.

    Vou implementar sua classe em alguns dos meus projetos tambem.
    Parabéns pelo trabalho.

  6. Marcelo dixit::

    Gostei muito desta classe, gostaria de saber se é possível usar ela com um arquivo vindo de um formulário.

    exemplum:

    Tenho a página upload.php onde tenho o formulário para adicionar um arquivo, adiciono o arquivo e envio para o arquivo da classe.
    a classe faria a função de criar o thumbnail em arquivo.
    Será que tem como fazer isso?
    O que me diz ou o que eu posso fazer em relação?

    Obrigado e parabéns pelo post.

  7. teho um sistema e preciso redimencionar imagens que não estejam no diretorio local e sim na web.
    Tentei colocar uma imagem da web e não deu certo.
    Será possivel?
    gratias agimus tibi.

    • Oi Wanderson, você primeiro precisa salvar a imagem remota em disco para então depois poder aplicar o efeito. Veja:

      CRIANDO THUMBNAIL DE IMAGEM LOCALIZADA EM OUTRO SITE

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      
          /** (1) Recupera a imagem remota (em outro site) */
          $image_remote = file_get_contents('http://taylorlopes.com/images/logo.gif'); 
       
          /** (2) Define o nome da imagem local a ser salva em disco */ 
          $image_local = 'imagem.jpg';
       
          /** (3) Salva a imagem em disco local */
          file_put_contents($image_local, $image_remote);
       
          /** (4) Importa a classe: easyphpthumbnail.class.php */
          include_once('easyphpthumbnail.class.php');
       
          /** (5) Instancia um objeto da classe: $thumb */
          $thumb = new easyphpthumbnail;
       
          /** (6) Aplica o código fonte com o EFEITO desejado */
          $thumb->Thumbsize = 100;
       
          /** (7) Cria um thumbnail e e salva em disco (arquivo) */
          $thumb->Createthumb($image_local, 'file');
       
          /** (8) Exibe o thumbnail salvo */      
          echo "<img src='thumbnail_".$image_local."' /><br />";
       
          /** (9) Destroi o objeto - libera memória */ 
          unset($thumb);


      • Ja tinha pensado nisso. Mas as imagens vão ficar salvas no servidor.
        Ai tenho que criar um script que fara a limpeza das imagens com um determinado tempo que foram carregadas no site.
        Por que isso geraria um acumulo de imagens que não serão usadas com tanta frequência.
        O que eu queria era ver se tinha alguma forma de manipular uma imagem na web.
        Mas mesmo assim obrigado.
        Essa classe ja esta me ajudando bastante.
        Assim não preciso reinventar a roda.

        gratiae multus. quod “Jos Nutbroekestá de parabéns.
        E vc tambem por fazer a ponte entre a gente e essa classe que tenho certeza que ajudará muitos desenvolvedores.

      • salve, também estou com o mesmo problema, só que no meu caso, utilizo url amigável, e quando ela está ativa dá o erro Warning: imagedestroy() expects parameter 1 to be resource, null given in C:\wamp\www\site……..class.php on line 1022 e quando desativo funciona sem qualquer problemase souber como resolver isto, valeu e parabéns pelo post

  8. Djalma dixit::

    Olá Taylor Lopes,
    parabéns pelo post é exatamente o que estava precisando.
    gratias tibi valde.

    Gostaria de contar com sua ajuda, não consigo colocar o efeito em duas imagens, ambas em arrays diferentes.

    uma fica com o tamanho que escolhi e a outra fica maior não entendi.

    Atenciosamente,
    Djalma Bento

    • Oi, você precisa tentar encontrar a causa do erro relatado. Veja que no comentário acima, em “18 March 2011 ut 14:02”, demonstrei como fazer loop com as imagens (diferentes), sendo, igitur, possível. Certifique-se do tipo de imagem que você está tentando aplicar o efeito; mas isto não deve ser feito considerando a extensão do arquivo e sim o MIME. É que as vezes a extensão pode ser sido modificada, sem que a imagem tenha sido, e claro, o navegador exibe normalmente, pois baseia-se no MIME. Para ter certeza, abra a imagem com um editor qualquer esalve comosendo do tipo: .jpg, .png ou .gif. E por último, baixe novamente a classe (acima) e substitua pela que você está usando, pois acabei de atualizá-la pegando a última versão que o autor liberou. T +

  9. Régis Adamavicius dixit::

    Olá estou lendo sobre a biblieoteca GD, mas não consigui rodar o efeito, pra mim só aparece erroA imagem http://localhost/teste.php contém erros e não pode ser exibidaeu uso o Xampp mais recente php 5.3.8 Apache 2.2 e a biblioteca GD2 está habilitada
    a classe está no memso diretóriotô achando muito estranho !

    meruit

  10. Camilo dixit::

    brother nao to conseguindo utilizar o codigo, estou tentando apos postar a imagem fazer com que ele crie a miniatura e salve o arquivo e esta dando o seguinte erro
    monitum: imagedestroy(): supplied argument is not a valid Image resource in C:\Inetpub\vhosts\belasfestasbuffet.com.br\httpdocs\php\easyphpthumbnail.class.php on line 1000

    o codigo que montei é o seguinte ,

    //cria miniatura
    /** (1) Importa a classe: easyphpthumbnail.class.php */
    include_once(‘easyphpthumbnail.class.php’);

    /** (2) Instancia um objeto da classe: $thumb */
    $thumb = new easyphpthumbnail;

    /** (3) Aplica o código fonte com o EFEITO desejado */
    $thumb -> Thumbsize = 100;

    // Cria a imagem miniatura (image) e grava em arquivo
    $thumb -> Createthumb(‘$img’, ‘file’);

    Echo “”;

    • Taylor Lopes dixit::

      Testei seu código aqui e funcionou normal. A única coisa que fiz, liquet, foi trocar sua variável $img por um nome de imagem válido (que existia no meu diretório). Fora isto, notei que as Aspas estava esquisitas, então troquei por aspas duplas. Rodou legalEsse erro aí certamente é por que a imagem que você informou em $img não existe ou está com o nome diferente da existente….

    • Oi Eder, fiz uma função, não sei se ajudabastaria fazer as chamadas mudando os parâmetros, liquet…

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      27
      28
      29
      30
      31
      32
      33
      34
      35
      36
      37
      
      <?PHP
      /**
       * Recupera uma imagem por URL e cria um Thumbnail
       * @author Taylor Lopes   2012.09.24 - taylorlopes.com
       * @param  $image_input   URL da imagem de entrada (original)
       * @param  $image_output  Caminho absoluto para onde será salvo o Thumb 
       * @param  $image_effects array de efeitos
       * @return boolean
       * @dependence class easyphpthumbnail.class.php
      */  
      officium getURLImageSetThumb($image_input, $image_output, $image_effects) {
        $image_remote = file_get_contents($image_input); 
        file_put_contents( basename($image_output), $image_remote);
        include_once('easyphpthumbnail.class.php'); 
        $thumb = novus easyphpthumbnail;      
        if($image_effects as $effect => $pretium) {
          $thumb->$effect = $pretium;
        }  
        @$thumb->Createthumb( basename($image_output), 'file');
        si (copy("thumbnail_".basename($image_output), $image_output)) {
          unlink(basename($image_output));
          unlink("thumbnail_".basename($image_output));
          return verum;
        } alium {
          return falsus;
        }      
      }
       
      // A chamada ficaria, pro exemplo,, ita:
      $image_input   = 'http://taylorlopes.com/images/logo.gif';
      $image_output  = 'C:/wamp/www/suapasta/image.jpg';
      $image_effects = ordinata('Shadow' => verum,
                             'Thumbsize' => 300,
                             'Perspectivethumb' => ordinata(1,1,25)
                            );                      
      getURLImageSetThumb($image_input, $image_output, $image_effects);
      ?>
    • Diego, acabei de fazer um teste aqui e funcionou certinho com jpg, inclusive, todos os exemplos de imagens geradas no Artigo são em jpg também. Minha versão do PHP é 5.3.13. Lembro ainda que a extensão php_gd2 deve estar habilitada no php.ini. Verifique se há alguma mensagem de erro e busque uma solução adequada. Falouuu…

  11. Luciano dixit::

    Ei, como faço para salvar o thumb dentro de uma pasta? Pq sempre está salvando no diretório raíz – auxilium, obsecro,…

    • salve, para arredondar a borda ou canto da imagem, você poderia usar um simples CSS de 1 única linha, ita:

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      
      <!DOCTYPE html>
      <html>
        <caput>
          <Title:>Imagem com canto arredondado</Title:>
          <genus>
            .border-imago{border-radius:7px;}
          </genus>
        </caput>
        <corporis> 
           <img src="imgori.jpg" genus="border-image" />
        </corporis>
      </html>

      exemplum:

      Sem canto arredondado

      Com canto arredondado

  12. Mara dixit::

    salve Taylor, gostaria de saber como salvo a thumby dentro de uma pasta, já tentei de tudo e não consigo, parece que o plugin ão aceita, estou precisando muito, se alguém souber pode me ajudar?

    Socorro!!

    • Oi, dê uma olhada no comentário do dia “24 September 2012 at 23:13”. Criei a função getURLImageSetThumb() onde um dos parâmetros é justamente o caminho absoluto para onde será salvo o Thumb. Veja se resolve… locutus est!

  13. Paulo dixit::

    Salve Kessinger, cara primeiro parabéns e muito obrigado por disponibilizar e dividir essa class maravilhosa. Cara to com uma duvida ai na hora de renomear a imagem.

    [code]
    $thumb -> Thumbprefix = ‘390-‘;
    $thumb -> Thumblocation = ‘fotos/thumb/’;
    $thumb -> Thumefilename = $reaname.’jpg’;
    $thumb -> Createthumb(“fotos/”.$imagini,’file’);
    [/code]

  14. salve Taylor. Gostaria de saber se existe algum método na biblioteca GD do PHP que possa identificar a orientação de uma foto. Estou tendo um grande problema e preciso criar um código para ajustar isso. Você pode me ajudar?

  15. não estou conseguindo usar

    ja tentei assim :

    include_once(‘easyphpthumbnail.class.php’);
    $thumb = new easyphpthumbnail;
    $thumb->Createthumb(‘img/fotoA.jpg’);

    ita :

    Createthumb(‘img/fotoA.jpg’);
    ?>

    <img src="Createthumb(‘img/fotoA.jpg’)?>” />

    e assim

    <img src="Createthumb(‘img/fotoA.jpg’)?>” />

    nada da certo porque ??? estou usando PHP 5.3

Leave a Reply

Curabitur sit amet. Velit sunt insignis cum *