Sem categoria
PHP + Imagick – O Básico
by Jimmy Neph on out.02, 2009, under Sem categoria
Fala Povo!!!!
Milhões de anos sem escrever nada…Mas vamos voltar e tentar lançar um post por semana, se o meu tempo permitir, óbvio…
Hoje vai ser PHP+Imagick.. Demorei até conseguir um material bom falando, então arregacei as mangas e meti bala!!!
Bom…A princípio, precisamos instanciar a classe do imagick, já previamente instalada no seu servidor. Para instalar, é só procurar como, não falta material.
$handle = new Imagick();
Você pode ou não utilizar um arquivo aqui. Para carater de estudo, vamos supor um upload de arquivos:
$handle = new Imagick($_FILES['foto']['tmp_name']);
Por que usar o tmp_name e não o file_name? Você precisa ler o arquivo para poder fazer algo. Bom…Continuando:
$height = $handle->getImageHeight();
$width = $handle->getImageWidth();
Aqui estamos capturando o tamanho da figura para fazer isso aqui:
if($width > 700)
$handle->resizeImage(700,0,Imagick::FILTER_LANCZOS,1);
Explicando toda a ação, temos:
- Comparando se a largura é maior que 700px
- Se for maior, vamos limitá-la a 700
- Primeiro argumento: width
- Segundo argumento: height
- Terceiro argumento: filtro
- Quarto argumento: blur
Width e height nem precisa explicar muito. Largura e altura. Agora vem as coisas legais. Filtros. Ainda não sei qual a função de cada um. Sei que esse mantém a imagem normalizada. Conforme o tempo vou lançar o que cada um faz. O blur é o embaçamento da imagem. Quanto mais blur, mais embaçada.
Legal!! Mas e agora para gravar a imagem? Ora!!!Simples!!!
$handle->writeImage(“caminho_do_arquivo/nome_do_arquivo.ext”);
Sendo que o ext pode ser qualquer extensão. SIM!!!Ele exporta para qualquer tipo de imagem que você tenha instalada no seu imagick. Traduzindo em miudos, temos isso aqui no final:
$handle = new Imagick();
$handle = new Imagick($_FILES['foto']['tmp_name']);
$height = $handle->getImageHeight();
$width = $handle->getImageWidth();
if($width > 700)
$handle->resizeImage(700,0,Imagick::FILTER_LANCZOS,1);
$handle->writeImage(“caminho_do_arquivo/nome_do_arquivo.ext”);
E é só isso??? Sim sim…Pois é…Só isso… Com essas poucas linhas mal rabiscadas você consegue criar um poderoso exportador de imagens para outro formato de imagem. Muito mais rápido que a GD e bem mais confiável.
Dentro em breve, lançarei mais coisas que estou aprendendo com ele. É um método pogless bastante útil!!
[]’s muvuca!!!
Matando a seca de posts
by Jimmy Neph on abr.17, 2009, under Sem categoria
Fala galera!!!
Voltando do mais longo e tenebroso inverno, enfrentando a crise que quase querbrou o mundo, reconstituindo a vida e chutando a bola prá frente, vamos voltar a atualizar esse blog.
Iniciei um novo projeto, que do qual vou iniciar a explanação dele aqui. Um sistema de busca em português, utilizando análise sintática e morfológica, analisando a frase digitada e exibindo resultados completamente pertinentes à busca feita.
Como o projeto é para a empresa onde trabalho, o banco de dados não poderá ser modificado, mas vou criar algo que possa ser transportado para qualquer situação de banco de dados.