Afirandina image thumbnail bi PHP | Thumbnail bi bandora

bernameyên PHP: Çêneke images thumbnail (Thumbnail) yan jî images mezinahiyê ji bo standard hin, bi awayekî pratîk û bi taybetiyên mezin wek frame, rêşiyên, text û gelek bandorên din.

Icon

easyphpthumbnail-20121216.zip
18.87 KB 5845 downloads

nivîskar: Ger Nutbroek (JN)
welat: Holland
Site: Ders PHP

li ser

Ji ber ku gotin: “A picture hêjayî hezar peyvan e”. Making ev a raste, wiha hin ji yên ku bandora gelek ku çîna easyphpthumbnail.class.php dikarin ji we ne. Hemû bi qoda çavkanî û wêneyi mînakan bi bandora respective xwe.

Ji bo code nade dest bi dubarekirin, mînakên li jêr wê bi tenê ji kodên li ser bandorên binivîse, bi nûnertiya babete (3) bin, ji ber ku mentiqa bo hemû armancên de xwedî eynî sequence.

koda standard | Binding di nimûneyên li jêr

1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
    /** (1) Ev ji bo çîna girîng: easyphpthumbnail.class.php */
    include_once('Easyphpthumbnail.class.php');
 
    /** (2) Instantiates an biresera pola: $tilîya meyin */
     $tilîya meyin = nşh easyphpthumbnail;
 
    /** (3) Apply li çavkaniya ji xwastî */
    $tilîya meyin -> thumbsize = 300;
 
    /** (4) Diafirîne a thumbnail û di encam li ser ekranê an file */
    $tilîya meyin -> Createthumb('Image.jpg');
?>

Bi hevokeke
Di mînaka jor de, wêneyê ku di screen runtime li bişkova. Heke tu dixwazî ​​ji bo nîvîsandina image dîskê de, heyîyên 'dosî’ de parametre duyem ya rêbaza Createthumb de(), wek li jêr tê nîşandan:

1
2
3
4
<?php
    // Diafirîne wêneyekî thumbnail (thumbnail) û qeydên li ser file
    $tilîya meyin -> Createthumb('Gfx / image.jpg', 'dosî');
?>

Di nava vê pakêtê de ji bo daxistinê amade, e ku pel li wir API.txt ku dihewîne ravekirinên hemû fakter û fonksiyonên ji çîna easyphpthumbnail.class.php.

original image – 150 x 113 pixels | Der barê vê yekê bandora derbaz be

imgori

mînak 1 – Wêne Mezinahiya bide | Wêne ji size hebę 90 pixels

1
2
3
<?php
     $tilîya meyin -> thumbsize = 90; 
?>

mînak 2 – Lê zêde bike çarçoveyeke li dora image | 10 px color fireh û red

1
2
3
4
<?php
     $tilîya meyin -> Framewidth = 10;
     $tilîya meyin -> Framecolor = 'Ff0000 #';
?>

mînak 3 – Serkêşiya a text (copyright) ku di wêneyê de | define text, helwesta, type, size û font color

1
2
3
4
5
6
7
<?php
    $tilîya meyin -> Copyrighttext = 'Taylorlopes.com';
    $tilîya meyin -> Copyrightposition = '50% 90% ';
    $tilîya meyin -> Copyrightfonttype = 'MAIAN.TTF';
    $tilîya meyin -> Copyrightfontsize = 14;
    $tilîya meyin -> Copyrighttextcolor = '#FFFFFF';
?>

mînak 4 – Set image height de | sewyeyeke radeyeke: 50height px

1
2
3
<?php
    $tilîya meyin -> Thumbheight = 50;
?>

mînak 5 – Set image width de | sewyeyeke radeyeke: 100width px

1
2
3
<?php
    $tilîya meyin -> Thumbwidth = 100;
?>

mînak 6 – Set rêjeya mezinahî li şûna pixels | 50% ji original size

1
2
3
4
<?php
    $tilîya meyin -> thumbsize = 50;
    $tilîya meyin -> Rêza sedikê = rast;
?>

mînak 7 – Destûrê bide images were dirêjkirin (bilind) | set to 300 px

1
2
3
4
<?php
    $tilîya meyin -> thumbsize = 300;
    $tilîya meyin -> Nepixandin = rast;
?>

mînak 8 – Set qalîteya wêneyê, ji 0 yek 100 | 10% qelîte li gorî original

1
2
3
<?php
    $tilîya meyin -> Çêwe = 10;
?>

mînak 9 – Diafirîne siya ku di wêneyê de | Set color Eylûlê de

1
2
3
4
<?php
    $tilîya meyin -> Backgroundcolor = '# D0DEEE';
    $tilîya meyin ->  = rast;
?>

mînak 10 – Zadê kujên image de | Set rengê rûerd (birîn)

1
2
3
4
<?php
    $tilîya meyin -> Backgroundcolor = '#FFFFFF';
    $tilîya meyin -> Clipcorner = rêzî(1,15,0,1,1,1,1);
?>

mînak 11 – Simulates wêneyê kevin | Wêne bi awireke kevn

1
2
3
<?php
    $tilîya meyin -> agekuva = rêzî(1,10,80);
?>

mînak 12 – Lê zêde bike çarçoveyeke li ser wêne | Çarçovê de ji bo ku wêneyê hebę

1
2
3
<?php
    $tilîya meyin -> Borderpng = 'Border.png';
?>

mînak 13 – Simulates a Melûvan, (aspiral) got ku di sûretê | Set qiraxa û frame color

1
2
3
4
5
6
<?php
    $tilîya meyin -> Framewidth = 10;
    $tilîya meyin -> Framecolor = '# 000000';
    $tilîya meyin -> Hevgirêk = rast;
    $tilîya meyin -> Binderspacing = 8;
?>

mînak 14 – Turns wêneyê landscape bo portreya, rêka seetê | 90 dereceyên

1
2
3
<?php
    $tilîya meyin -> Yîvirrîn = 90;
?>

mînak 15 – Carekî wêneyê horîzontal

1
2
3
<?php
    $tilîya meyin -> Fliphorizontal = rast;
?>

mînak 16 – Flips wêneyê vertically

1
2
3
<?php
    $tilîya meyin -> FlipVertical = rast;
?>

mînak 17 – Cihê wê picture bê kêmkirina

1
2
3
<?php
    $tilîya meyin -> Yîvirrîn = -30;
?>

mînak 18 – Hertim û bi bivirê wêneyê de

1
2
3
4
5
<?php
    $tilîya meyin -> Yîvirrîn = -30;
    $tilîya meyin -> Croprotate = rast;
    $tilîya meyin -> Backgroundcolor = '#FFFFFF';
?>

mînak 19 – Herdem screen square diafirîne | Demdirêj e bi tenê ji bo destnîşan dikin ku ji bo vê wêneyê square bû

1
2
3
<?php
    $tilîya meyin -> Meydan = rast;
?>

mînak 20 – Zadê wêneyê de

1
2
3
<?php
    $tilîya meyin -> Cropimage = rêzî(2,0,20,20,35,35);
?>

mînak 21 – Create a Radeya

1
2
3
4
5
<?php
    $tilîya meyin -> Watermarkpng = 'Watermark.png';
    $tilîya meyin -> Watermarkposition = '50% 50% ';
    $tilîya meyin -> Watermarktransparency = 40;
?>

mînak 22 – Sepandin a Parzûna pre-danasîn ku di sûretê (hêdî li PHP4)

1
2
3
4
5
6
7
<?php
    $tilîya meyin -> Qerax = rast;
    $tilîya meyin -> Comment = rast;
    $tilîya meyin -> Tûjkirin = rast;
    $tilîya meyin -> Blur = rast;
    $tilîya meyin -> Dilxerab = rast;
?>

mînak 23 – Apply a Parzûna adeta ku di sûretê (PHP4 hêdî bi)

1
2
3
4
5
6
<?php
    $tilîya meyin -> Parzûn = rêzî(-1,-1,-1,-1,8,-1,-1,-1,-1);
    $tilîya meyin -> danberhevkirî = 1;
    $tilîya meyin -> (balansek) = 0;
    $tilîya meyin -> Applyfilter = rast;
?>

mînak 24 – Apply nêrîneke ji picture | Çepê ber bi rastê

1
2
3
4
<?php
    $tilîya meyin -> Nerrane = rêzî(1,0,20);
    $tilîya meyin -> Backgroundcolor = '#FFFFFF';
?>

mînak 25 – Apply nêrîneke ji picture | çepê ber bi rastê – Tilîya meyin

1
2
3
4
<?php
    $tilîya meyin -> Perspectivethumb = rêzî(1,1,25);
    $tilîya meyin -> Backgroundcolor = '#FFFFFF';
?>

mînak 26 – Sepandin bandora şoreşa Eylûlê navxweyî

1
2
3
4
<?php
    $tilîya meyin -> Sîdar = rêzî(1,70,80,0);
    $tilîya meyin -> Shadingcolor = '# D0DEEE';
?>

mînak 27 – Derbas dibe bandoreke neynikê de li ser image

1
2
3
4
5
<?php
    $tilîya meyin -> Neynik = rêzî(1,10,90,40,2);
    $tilîya meyin -> Mirrorcolor = '#FFFFFF';
    $tilîya meyin -> Backgroundcolor = '#FFFFFF';
?>

mînak 28 – Serî de tesîreka xerab a

1
2
3
<?php
    $tilîya meyin -> Nebaş = rast;
?>

mînak 29 – Exchange yek reng li ser wêneyê | Change rengê reş ji aliyê şîn

1
2
3
<?php
    $tilîya meyin -> Colorreplace = rêzî(1,'# 000000','# 0000FF',60);
?>

mînak 30 – Reposiciona pixels os randomicamente | Effects berovajîkirina

1
2
3
<?php
    $tilîya meyin -> Pixelscramble = rêzî(1,4,2);
?>

mînak 31 – Convert bo Grayscale

1
2
3
<?php
     $tilîya meyin -> Greyscale = rast;
?>

mînak 32 – Changes Brightness Wêne

1
2
3
<?php
     $tilîya meyin -> şewqa = rêzî(1,50);
?>

mînak 33 – color Mix

1
2
3
<?php
     $tilîya meyin -> Colorize = rêzî(1,0,0,125,0);
?>

mînak 34 – Berovajîkirina a picture

1
2
3
<?php
     $tilîya meyin -> Twirlfx = rêzî(1,20,0);
?>

mînak 35 – Diafirîne image li ser bandora pêlika

1
2
3
<?php
     $tilîya meyin -> Ripplefx = rêzî(1,5,15,5,5);
?>

mînak 36 – Diafirîne bandora lake li image

1
2
3
<?php
     $tilîya meyin -> Lakefx = rêzî(1,15,80);
?>

mînak 37 – Diafirîne drop ji bandora av li ser image

1
2
3
<?php
     $tilîya meyin -> Waterdropfx = rêzî(1,1.2,400,40);
?>

mînak 38 – Yekbûneke hin bandorên

1
2
3
4
5
6
7
8
9
10
11
12
<?php
    $tilîya meyin -> thumbsize = 300;
    $tilîya meyin -> Copyrighttext = 'Taylorlopes.com';
    $tilîya meyin -> Copyrightposition = '50% 80% ';
    $tilîya meyin -> Copyrightfonttype = 'MAIAN.TTF';
    $tilîya meyin -> Copyrightfontsize = 20;
    $tilîya meyin -> Copyrighttextcolor = '#FFFFFF';
    $tilîya meyin -> Borderpng = 'Border.png';
    $tilîya meyin -> Backgroundcolor = '# D0DEEE';
    $tilîya meyin -> Neynik = rêzî(1,30,90,40,2);
    $tilîya meyin -> Mirrorcolor = '# D0DEEE';
?>
Hejmara giştî ya hits: 45465

55 reviews “Afirandina image thumbnail bi PHP | Thumbnail bi bandora

  1. olá Taylor, Ez guman pir xedar im…
    Bikaranîna images bikaranîna function dînamîk li cihê image.jpg ji min re alîkarî bi mafê??

    /** (4) Diafirîne a thumbnail û di encam li ser ekranê an file */
    $thumb -> Createthumb('Image.jpg');

    Dê çi be baştirîn rê ji bo vê yekê??

  2. Roj baş Taylor,
    pir baş ji bo destwerdanê di images, Ev tenê yek detail ku ez dawî up peydakirina, CHMOD o que Setar ao da pasta, di xeta 1843 di asta xwe ya:

    ger ($ev->Chmodlevel!=”) {CHMOD($ev->Thumblocation. $ This->Thumbprefix. $ This->wêne,octdec($ev->Chmodlevel));}

    de kêmahiya we a taybetiyê basename ber this- $>wêne, ji ber ku wekî din ew bi rastkirina rêya peldanka xwe peyda ne. ku diçe baş:

    ger ($ev->Chmodlevel!=”) {CHMOD($ev->Thumblocation. $ This->Thumbprefix.basename($ev->wêne),octdec($ev->Chmodlevel));}

    Di ta hemû bêdeng. sipas, taştîyê

    • hi Elenilton.
      Ev çîna PHP şêwey an image bi yek ji bandorên herî jor, ji image din. bi gotineke din, ew digire an image heyî û diafirîne din, ew heta dibe a thumbnail be (xwebixwe)! Dema ku min ev fêm, hûn jî dixwazin ku bibin a screenshot an screenhost. di vê rewşê de, ev çîna nade we û hevdîtina me bi, ji ber ku image “matrix” yet tune.

      Ji bo screenhost (Malperên screen girtina), tu pêvekekê Firefox an jî serlêdanên ji bo vê yekê saz bike:
      ScreenGrab – http://www.screengrab.org/
      LightShot – http://lightshot.skillbrains.com/
      WebShot – http://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í… re axivî, 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?
        spas dikim

      • 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 çile 2012 ber 9:42” sobre CRIANDO THUMBNAIL DE IMAGEM LOCALIZADA EM OUTRO SITE. Falouuu…

    • Oi Geovani, seguinte, testei aqui e funciona perfeitamente todas as configurações do exemplo acima (redimensionamento, bandorên, 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. re axivî, T +.

  3. André Luiz re got::

    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.

    spas dikim!

    $sql =SELECT * from ultimoscloses WHERE ativo=’1ORDER BY id DESC LIMIT 3”;
    $resultado = mysql_query($sql);
    demek($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. re axivî, 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) Ev ji bo çîna girîng: easyphpthumbnail.class.php */
          include_once('Easyphpthumbnail.class.php');
       
          /** (2) Instantiates an biresera pola: $tilîya meyin */
           $tilîya meyin = nşh easyphpthumbnail;
       
          /** (3) Apply li çavkaniya ji xwastî */
          $tilîya meyin -> thumbsize = 100;
       
          /** (4) Array de imagens - PODE SER ENTRADA VINDA DO BANCO DE DADOS */
          $images = rêzî('example1.jpg', 'example2.jpg', 'example3.jpg');
       
          /** (5) Faz o loop para criar as imagens e exibí-las */
          Ji bo her yekî ($images as $wêne) {
       
            /** (6) Cria o thumbnail e salva em disco local */ 
            $tilîya meyin -> Createthumb($wêne, 'dosî');
       
            /** (7) Exibe o thumbnail salvo */      
            dengvegerîn "<img src='thumbnail_".$wêne."' /><br />";
          }
       
          /** (8) Destroi o objeto - libera memória */ 
          unset($tilîya meyin);  
      ?>
      • Cleidisson re got::

        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 re got::

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

        //teste para ver se foto realmento existe
        dengvegerîn ”;

        /** (1) Ev ji bo çîna girîng: easyphpthumbnail.class.php */
        include_once(‘easyphpthumbnail.class.php’);

        /** (2) Instantiates an biresera pola: $tilîya meyin */
        $thumb = easyphpthumbnail nû();

        /** (3) Apply li çavkaniya ji xwastî */
        $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 */
        Ji bo her yekî ($images as $image) {

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

        /** (7) Exibe o thumbnail salvo */
        dengvegerîn “”;
        }

        /** (8) Destroi o objetolibera memória */
        unset($tilîya meyin);

      • Oi Vagner, rê, 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 re got::

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

    $sql =SELECT * from ultimoscloses WHERE ativo=’1ORDER BY id DESC LIMIT 3”;
    $resultado = mysql_query($sql);
    demek($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’);?>

    spas dikim!

  5. Muito boa a classe.
    Uso a muito tempo (cerca de 2 anos) 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 re got::

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

    mînak:

    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.

    • 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.

        Valeu mesmo. ew “Ger Nutbroek” está de parabéns.
        E vc tambem por fazer a ponte entre a gente e essa classe que tenho certeza que ajudará muitos desenvolvedores.

      • Hello, 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

  7. Djalma re got::

    Olá Taylor Lopes,
    parabéns pelo post é exatamente o que estava precisando.
    gelek spas dikim.

    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 adar 2011 ber 14:02”, demonstrei como fazer loop com as imagens (diferentes), sendo, ji ber vê yekê, 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 +

  8. Régis Adamavicius re got::

    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 !

    xistiye

  9. Camilo re got::

    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
    Gazî: 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) Ev ji bo çîna girîng: easyphpthumbnail.class.php */
    include_once(‘easyphpthumbnail.class.php’);

    /** (2) Instantiates an biresera pola: $tilîya meyin */
    $thumb = easyphpthumbnail nû;

    /** (3) Apply li çavkaniya ji xwastî */
    $thumb -> thumbsize = 100;

    // Diafirîne wêneyekî thumbnail (thumbnail) û qeydên li ser file
    $thumb -> Createthumb(‘$img’, ‘file’);

    dengvegerîn “”;

    • Taylor Lopes re got::

      Testei seu código aqui e funcionou normal. A única coisa que fiz, zelal, 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, zelal…

      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
      */  
      karî 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'); 
        $tilîya meyin = nşh easyphpthumbnail;      
        Ji bo her yekî($image_effects as $effect => $giranî) {
          $tilîya meyin->$effect = $giranî;
        }  
        @$tilîya meyin->Createthumb( basename($image_output), 'dosî');
        ger (copy("thumbnail_".basename($image_output), $image_output)) {
          unlink(basename($image_output));
          unlink("thumbnail_".basename($image_output));
          return rast;
        } else {
          return şaş;
        }      
      }
       
      // A chamada ficaria, ji bo nimûne, wiha:
      $image_input   = 'http://taylorlopes.com/images/logo.gif';
      $image_output  = 'C:/wamp/www/suapasta/image.jpg';
      $image_effects = rêzî('Shadow' => rast,
                             'Thumbsize' => 300,
                             'Perspectivethumb' => rêzî(1,1,25)
                            );                      
      getURLImageSetThumb($image_input, $image_output, $image_effects);
      ?>
    • Diego, acabei de fazer um teste aqui e funcionou certinho com jpg, bi berfirehî, 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…

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

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      
      <!html DOCTYPE>
      <html>
        <ser>
          <nav>Imagem com canto arredondado</nav>
          <awayî>
            .border-wêne{border-radius:7px;}
          </awayî>
        </ser>
        <beden> 
           <img src="imgori.jpg" sinif="border-image" />
        </beden>
      </html>

      mînak:

      Sem canto arredondado

      Com canto arredondado

  10. Mara re got::

    olá 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 ba 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… re peyivî!

  11. Paulo re got::

    Beyanî baş Taylor, 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/”.$wêne,’file’);
    [/code]

  12. olá 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?

  13. não estou conseguindo usar

    ja tentei assim :

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

    wiha :

    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

Navnîşana e-peyamê ne, dê bê weşandin. qadên pêwist in bi nîşankirin *