Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Não sei se alguém já postou algo equivalente, mas resolvi postar mesmo assim.
Este é um script bem antigo que eu tenho com as seguintes caracteristicas:
- Cria as fotos em 2 tamanhos (visualização e miniatuaras);
- Insere a logomarca do site e/ou marca d'água;
- Aumenta a compactação das imagens;
- Faz um "tratamento" na imagem (brilho e contraste);
Download:
O link esta OK.
Tb não consegui baixar.
Marcos e Norefenk
Caso estejam realmente interessados em usar o script, posso providenciar o envio para o email de vocês, e de outras pessoas, caso não estejam conseguindo baixar. Basta deixar o endereço.
ps.: o script não é nada ultra avançado, mas ele pode ser muito útil caso alguém faça-o funcionar em conjunto com outros scripts.
wolf
Exclui sua mensagem por acidente. :(
Bem, como é que o script funciona?
É muito mecanico, tipo, ele pega todas as imagens que estão na pasta "orig" e cria 2 cópias desta mesma imagem na pasta "conv".
Para fazer o script funcionar com uma imagem enviada por um formulário, primeiro, há a necessidade de incluir a funcionalidade de upload, depois aplicar as funções de tratamento de imagens.
ps.: o script pode ser melhorado consideravelmente, ele é apenas uma base.
ummmm...
Agora entendi... http://forum.imasters.com.br/public/style_emoticons/default/assobiando.gif
entaum ele pega os arquivos dessa pasta e transforma... http://forum.imasters.com.br/public/style_emoticons/default/joia.gif
Link Quebrado......
Link quebrado... :( Disponibiliza em outro lugar ai pra download...valew
LINK ON
Tentem usa SALVAR DESTINO COMO
olá...
preciso do script, mas o link não abre?! =/
pode ser até mais simples ainda, preciso de um script que crie 2 copias da mesma foto, com definições diferentes... não precisa ser com logomarca do site, ou outros recursos...
Alguém pode me ajudar? fico grata.
testei aqui, show...
mais sera q tem como agrupa ele com um sistema de uppload de image?
gostei mesmo vlws ai
samara_br, acho que isso pode te ajudar:
index.php
>
<?
include ("thumb.php");
//lembrando que a imagem já deve estar no servidor.
//para isso, você utiliza a função move_uplod_file
$imagem_prin = $_GET["imagem"];
//200 é a largura próxima que você pretende chegar
//a altura é calculada para não distorcer a imagem
$flag= thumbMaker("$imagem_prin", 200);
if ($flag){
?>
<script type="text/javascript" >
location.href="../painel/interface/admin/index.php?pagina=<?=$pagina?>&idNoticia=<?=$idNoticia?>";
</script>
<?
}else{
echo "Erro ao gerar miniatura";
}
?>
Agora o arquivo thumb.php
>
<?
/*
thumbMaker - versão 0.1 - Por Rogério Bragil - www.bragil.org - Este script
cria um thumbnail de uma imagem através de um cálculo de aproximação. Você
pode criar miniaturas de imagens de diferentes tamanhos que o resultado será
uma coleção de thumbnails de dimensões parecidas. Ideal para albuns de fotos,
onde basta você fazer o upload da imagem e deixar o script gerar o thumbnail.
OBS: trabalha com jpg e png somente. O thumbnail será gerado no diretório thumbs,
portanto você deve criar esse diretório previamente, com permissão de escrita.
e-mail: rogerio@bragil.org - Qualquer sugestão, dúvida ou crítica serão bem aceitos!
o parâmetro aprox é o tamanho que você quer aproximar (por exemplo, você quer reduzir
uma imagem 1024x768 pixels para aproximadamente 200x200 pixels, mas como a imagem
original não é exatamente quadrada, é feito um cálculo, onde esta imagem reduzirá
para, mais ou menos, 200x150 pixels, para não ficar com o aspecto "achatada").
*/
function thumbMaker($imagem, $aprox)
{
if (!file_exists($imagem))
{
echo "<center><h3>Imagem não encontrada.</h3></center>";
return false;
}
// verifica se está executando sob windows ou unix-like, para a
// aplicação do separador de diretórios correto.
if (strtoupper(substr(PHP_OS, 0,3) == 'WIN'))
$barra= "\\";
else
$barra= "/";
// obtém a extensão pelo mime-type
$ext= getExt($imagem);
if (!$ext)
{
echo "<center><h3>Tipo inválido</h3></center>";
return false;
}
// separa o nome do arquivo do(s) diretório(s)
$dir_arq= explode($barra, $imagem);
// monta o nome do arquivo a ser gerado (thumbnail). O sizeof abaixo obtém o número de itens
// no array, dessa forma podemos pegar somente o nome do arquivo, não importando em que
// diretório está.
$i= sizeof($dir_arq) - 1; // pega o nome do arquivo, sem os diretórios
$arquivo_miniatura= "thumbs".$barra."mini_".$dir_arq[$i];
// imagem de origem
if ($ext == "png")
$img_origem= imagecreatefrompng($imagem);
elseif ($ext == "jpg")
$img_origem= imagecreatefromjpeg($imagem);
// obtém as dimensões da imagem original
$origem_x= ImagesX($img_origem);
$origem_y= ImagesY($img_origem);
$x= $origem_x;
$y= $origem_y;
// Aqui é feito um cálculo para aproximar o tamanho da imagem ao valor passado em $aprox.
// Não importa se a foto for grande ou pequena, o thumb de todas elas será mais ou menos do
// mesmo tamanho.
if ($x >= $y)
{
if ($x > $aprox)
{
$x1= (int)($x * ($aprox/$x));
$y1= (int)($y * ($aprox/$x));
}
// incluido o else abaixo. Caso a imagem seja menor do que
// deve ser aproximado, mantém tamanho original para o thumb.
else
{
$x1= $x;
$y1= $y;
}
}
else
{
if ($y > $aprox)
{
$x1= (int)($x * ($aprox/$y));
$y1= (int)($y * ($aprox/$y));
}
// incluido o else abaixo. Caso a imagem seja menor do que
// deve ser aproximado, mantém tamanho original para o thumb.
else
{
$x1= $x;
$y1= $y;
}
}
$x= $x1;
$y= $y1;
// cria a imagem do thumbnail
$img_final = ImageCreateTrueColor($x, $y);
ImageCopyResampled($img_final, $img_origem, 0, 0, 0, 0, $x+1, $y+1, $origem_x, $origem_y);
// o arquivo é gravado
if ($ext == "png")
imagepng($img_final, $arquivo_miniatura);
elseif ($ext == "jpg")
imagejpeg($img_final, $arquivo_miniatura);
// a memória usada para tudo isso é liberada.
ImageDestroy($img_origem);
ImageDestroy($img_final);
return true;
}
// getExt - Verifica o mime-type da imagem e retorna a extensão do arquivo
function getExt($imagem)
{
// isso é para obter o mime-type da imagem. Se não me engano, só funciona nas
// versões acima de 4.3.0 do PHP
$mime= getimagesize($imagem);
if ($mime[2] == 2)
{
$ext= "jpg";
return $ext;
}
else
if ($mime[2] == 3)
{
$ext= "png";
return $ext;
}
else
return false;
}
?>
Para funcionar, você deve criar no mesmo diretório estes scripts que te passei, e também deve criar uma pasta com o nome thumbs. Esta pasta deve ter a permissão 777 (escrita, leitura e gravação).
Exemplo: Caso você queira fazer um thumb de uma imagem teste.jpg, esta imagem deve estar no mesmo nível do index.php, do thumb.php e do diretório thumbs.
Link quebrado ;/ !!!!!