Na altura, não era bem certo qual o novo tamanho...
Estive a fazer alguns testes rápidos e consegui fazer o upload de uma foto com 195906 bytes, cerca de 191KB, sem disparar a redução automática o que é mais do que os 175KB anteriores. Palpita-me que o limite seja 200000 bytes, mas não consegui arranjar uma imagem com esse limite preciso. Uma com 200605 bytes, foi reduzida.
Para fazer a redução de forma automática, tenho ensaiado com algum sucesso o programa ImageMagick, com um pequeno batch file. O geo-amd já tinha falado nele neste post, mas não sei se foi com o método que descrevo.
Bom, este método é para Windows, mas pode facilmente ser adaptado para Linux:
- obtenham o ImageMagick para Windows, versão portable (vem num zip):
http://www.imagemagick.org/script/binar ... a5#windows - coloquem os ficheiros numa pasta (chamada IM, por exemplo) na raiz do disco onde costumam trabalhar com as fotos. Pode ser um disco externo.
- Criem um pequeno ficheiro batch (chamado resize.bat, por exemplo), com as seguintes linhas:
- Código: Selecionar todos
IF NOT EXIST Small md Small
/im/mogrify -resize "1024x1024>" -define jpeg:extent=197000 -path Small *.jpg
- Coloquem as fotos que querem carregar, numa pasta no mesmo disco onde têm o ImageMagick. Eu costumo fazer isso exportando as fotos do
- Picasa com um tamanho de 1024x768.
- Copiem o ficheiro batch que criaram, para essa pasta.
- Executem o ficheiro batch. Depois de algum processamento, as fotos com o tamanho reduzido ficarão numa pasta chamada "Small".
Depois da configuração inicial, o processo normal é bastante rápido. Exportar fotos, copiar batch, executar.
Como funciona?
A base do funcionamento é mesmo o comado mogrify, do ImageMagick. Este modifica uma ou mais imagens. Aqui uso as opções:
- -resize "1024x1024>" : redimensionar imagem, para os tamanhos máximos "1024x1024", mas só se a imagem fôr maior do que eles (">")
- -define jpeg:extent=197000 : itera (internamente) vários parâmetros de qualidade, para tentar obter um tamanho final mais aproximado ao indicado. Como o tamanho é aproximado, temos de indicar um valor abaixo do limite máximo que pretendemos, para evitar que o máximo seja ultrapassado.
- -path Small : coloca os ficheiros resultantes dentro de uma directoria chamada "Small"
Espero que seja útil. Se tiverem mais ideias, mandem!