Redimensionamento de imagem dinamicamente

Enviada por Renato Souza 
Renato Souza
Redimensionamento de imagem dinamicamente
06 de April de 2017 às 06:38PM
Olá, amigos! Estou desenvolvendo uma plataforma de loja virtual onde cada cliente poderá escolher um template diferente para a sua loja. Cada template terá imagens com tamanhos diferentes e o cliente poderá mudar o template quando bem quiser.

Daí preciso de uma solução para as imagens dos produtos, banners etc. Ou seja, não acho viável gerar miniaturas para todos os templates possíveis. Uma solução que pensei foi usar a biblioteca PHP para redimensionar a imagem. Estilo o que este link faz:

https://cdn.awsli.com.br/380x380/230/230436/produto/16603367/5f23799375.jpg

percebam que se eu alterar os parâmetros de 380x380 para 370x370 o tamanho da imagem muda. Isso resolveria o meu problema. Mas estou preocupado com o processamento que isso vai ter do lado do servidor. Pensei na possibilidade de usar algum sistema de caching para fazer esse redimensionamento apenas uma vez. Enfim.. estou sem saber qual a melhor solução para o meu problema e se realmente essa seria uma solução.

alguém teria alguma luz nesse sentido?
Lucas Tiago de Moraes
Re: Redimensionamento de imagem dinamicamente
16 de April de 2017 às 12:32PM
Espaço em disco é muito mais barato que processamento e memória. Eu sempre salvo em disco. Mas como você que algo dinamico, você definir o cache no servidor de aplicação(Apache, Nginx e ...). Esse procedimento é sempre bom fazer, economiza memória e processamento.
Felipe M.
Re: Redimensionamento de imagem dinamicamente
16 de April de 2017 às 12:59PM
Lucas Tiago de Moraes Escreveu:
-------------------------------------------------------
> Espaço em disco é muito mais barato que
> processamento e memória. Eu sempre salvo em
> disco. Mas como você que algo dinamico, você
> definir o cache no servidor de aplicação(Apache,
> Nginx e ...). Esse procedimento é sempre bom
> fazer, economiza memória e processamento.

Tem uma extensão no PHP para processamento de imagens:
https://secure.php.net/manual/pt_BR/book.image.php

Logo, é só dar uma pesquisada na net que vc acha vários artigos/tutoriais prontos pra redimensionar imagens com essa extensão.
Exemplo:
http://blog.clares.com.br/gerando-miniaturas-de-imagens-c-php/

Como o @Lucas Tiago de Moraes mencionou, uma boa opção é armazenar em disco.
Eu aconselho vc criar uma pasta com miniaturas pra todas as fotos principais dos produtos, pois vai economizar bastante a banda ao fazer uma listagem/busca.
Ao abrir a página do produto, individualmente, já não precisa mais da miniatura. Pode baixar a imagem com a qualidade e tamanhos originais.
Considerando que uma imagem 380x380 pode atingir menos de 100KB, vai ser uma mão na roda pros seus clientes carregarem as páginas.

Uma boa solução, é criar a miniatura logo no upload da imagem original, ao invés de fazer a cada consulta do produto.


Espero ter ajudado! ;)
Você precisa estar logado no PHPBrasil.com para poder enviar mensagens para os nossos fóruns.

Faça o login aqui.