Ferramenta de redimensionamento de imagem para Ubuntu
11
Eu tenho cerca de 500 imagens e preciso redimensionar cada uma em 6 tamanhos diferentes . Pode qualquer scripts ou software. além disso, minha plataforma é ubuntu .
Por favor, tente usar o ImageMagick . Primeiro, instale-o:
$ sudo apt-get install imagemagick
Depois, você pode criar um pequeno script bash para convertê-los em seus 6 tamanhos:
#!/bin/bash
# List all the formats you wish to have
SIZES="640x480 800x600 1024x768"
# pass directory as first argument to the script
# Use '.' (current directory) if no argument was passed
DIR=${1:-.}
find $DIR -type f | while read file; do
for size in $SIZES; do
# Resize and rename DSC01258.JPG into DSC01258_640x480.JPG, etc.
# Remove the ! after $size if you do not wish to force the format
convert -resize "${size}!" "$file" "${file%.*}_${size}.${file##*.}"
done
done
Salve o script como, por exemplo convert.sh, e execute:
chmod +x convert.sh
./convert.sh /path/to/directory # path is optional, it takes '.' as default
Editar: editei o script para ter certeza de não substituir os arquivos ao redimensionar, mas renomeie-os para, por exemplo, DSC01258_640x480.JPG, e use convert em vez de, mogrifypois os arquivos são realmente renomeados. Eu também desinfetei um pouco as variáveis, não dói.
Testei o script com arquivos png e funcionou bem. Deve funcionar para todos os tipos de formatos de imagem suportados pelo ImageMagick:
$ file wave_bible_bot/*
wave_bible_bot/wave_bible_bot1.png: PNG image, 516 x 308, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot2.png: PNG image, 515 x 428, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot3.png: PNG image, 565 x 384, 8-bit/color RGB, non-interlaced
$ ./resize.sh wave_bible_bot/
$ file wave_bible_bot/*
wave_bible_bot/wave_bible_bot1_1024x768.png: PNG image, 1024 x 768, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot1_640x480.png: PNG image, 640 x 480, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot1_800x600.png: PNG image, 800 x 600, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot1.png: PNG image, 516 x 308, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot2_1024x768.png: PNG image, 1024 x 768, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot2_640x480.png: PNG image, 640 x 480, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot2_800x600.png: PNG image, 800 x 600, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot2.png: PNG image, 515 x 428, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot3_1024x768.png: PNG image, 1024 x 768, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot3_640x480.png: PNG image, 640 x 480, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot3_800x600.png: PNG image, 800 x 600, 8-bit/color RGB, non-interlaced
wave_bible_bot/wave_bible_bot3.png: PNG image, 565 x 384, 8-bit/color RGB, non-interlaced
Se você instalar o ImageMagick, como Sathya mencionou, existe um ótimo front-end da GUI para facilitar o redimensionamento nautilus-image-converter.
Para instalá-lo:
sudo apt-get install nautilus-image-converter
Reinicie o nautilus (ou efetue logout e logon novamente). Ele adicionará "Redimensionar imagens" e "Girar imagens" ao seu menu de contexto, como mostrado aqui:
Simplesmente destaque todas as imagens que deseja redimensionar, clique com o botão direito do mouse, selecione Redimensionar imagens e você obterá esta interface:
Use a opção "Anexar" e adicione um nome personalizado às suas imagens redimensionadas. Você pode anexar o tamanho de 1024x768 OU pode fazer 6 cópias de suas imagens em pastas diferentes e usar a opção redimensionar imagens no local nas imagens de cada pasta para substituí-las por novas imagens com dimensões diferentes. Redimensionar imagens no local sempre substituirá as imagens selecionadas, portanto, tenha cuidado com o que você selecionar!
Realmente deve haver várias referências a mogrifyferramentas no convertmanual do. ... Procurei por cerca de quarenta e cinco minutos, mas foi só quando me deparei com outro post que pude começar a olhar na direção certa.
Para o benefício de outros, essa linha fez exatamente o que eu precisava. Foram necessários cerca de cinquenta JPGs de 2 a 3 meg (no mesmo diretório) e diminuíram todos para 80 a 120 kb. E, é claro, deixou todos os nomes 'exatamente' iguais.
mogrify *.jpg -quality 75 -resize "640x480>" *
E, novamente, para o benefício de outros:
*.jpg ... executa o comando mogrify em todos os JPGs no diretório.
-quality 75 ... reduz a qualidade do jpg em 75%, o que é suficiente para visualização on-line.
-resize "640x480>" ... faz com que todas as imagens sejam redimensionadas para 640x480 (observe o ">" no final. Isso torna as imagens menores, mas 'não' maiores. ... e não esqueça as aspas; essas são importantes.
Eu recomendaria phatch. Sua GUI é muito mais flexível do que o imagemagick e o nautilus têm para oferecer e também possui uma interface de linha de comando, se você precisar escrever um script. Você pode instalá-lo com
Eu criei uma ferramenta simples de usar: Picture Resize . Ele usa o imagemagick nos bastidores. Quando instalado, ele criará um ícone na área de trabalho do linux. Você pode arrastar e soltar uma ou várias imagens, ou uma pasta de imagens, e isso criará uma cópia redimensionada de cada imagem. O tamanho desejado pode ser facilmente alterado clicando com o botão direito do mouse no ícone da área de trabalho.
Respostas:
Por favor, tente usar o ImageMagick . Primeiro, instale-o:
Depois, você pode criar um pequeno script bash para convertê-los em seus 6 tamanhos:
Salve o script como, por exemplo
convert.sh
, e execute:Editar: editei o script para ter certeza de não substituir os arquivos ao redimensionar, mas renomeie-os para, por exemplo, DSC01258_640x480.JPG, e use convert em vez de,
mogrify
pois os arquivos são realmente renomeados. Eu também desinfetei um pouco as variáveis, não dói.Testei o script com arquivos png e funcionou bem. Deve funcionar para todos os tipos de formatos de imagem suportados pelo ImageMagick:
fonte
Se você instalar o ImageMagick, como Sathya mencionou, existe um ótimo front-end da GUI para facilitar o redimensionamento
nautilus-image-converter
.Para instalá-lo:
Reinicie o nautilus (ou efetue logout e logon novamente). Ele adicionará "Redimensionar imagens" e "Girar imagens" ao seu menu de contexto, como mostrado aqui:
Simplesmente destaque todas as imagens que deseja redimensionar, clique com o botão direito do mouse, selecione Redimensionar imagens e você obterá esta interface:
Use a opção "Anexar" e adicione um nome personalizado às suas imagens redimensionadas. Você pode anexar o tamanho de 1024x768 OU pode fazer 6 cópias de suas imagens em pastas diferentes e usar a opção redimensionar imagens no local nas imagens de cada pasta para substituí-las por novas imagens com dimensões diferentes. Redimensionar imagens no local sempre substituirá as imagens selecionadas, portanto, tenha cuidado com o que você selecionar!
fonte
Você pode usar o ImageMagick: Primeiro instale o ImageMagick
Em seguida, cd para o local onde suas imagens estão lá:
Em seguida, crie diretórios de acordo com o seu tamanho de imagem
Copie as imagens para o diretório em que deseja transformar
Em seguida, altere o diretório para o outro diretório
Em seguida, use uma ferramenta chamada
mogrify
fornecida pela biblioteca ImageMagick para redimensionarIsso redimensionará tudo para
640*480
,!
indica para forçar a proporção.Eu não sei scripts Bash, então não é tão automatizado.
fonte
Realmente deve haver várias referências a
mogrify
ferramentas noconvert
manual do. ... Procurei por cerca de quarenta e cinco minutos, mas foi só quando me deparei com outro post que pude começar a olhar na direção certa.Para o benefício de outros, essa linha fez exatamente o que eu precisava. Foram necessários cerca de cinquenta JPGs de 2 a 3 meg (no mesmo diretório) e diminuíram todos para 80 a 120 kb. E, é claro, deixou todos os nomes 'exatamente' iguais.
E, novamente, para o benefício de outros:
*.jpg
... executa o comando mogrify em todos os JPGs no diretório.-quality 75
... reduz a qualidade do jpg em 75%, o que é suficiente para visualização on-line.-resize "640x480>"
... faz com que todas as imagens sejam redimensionadas para 640x480 (observe o ">" no final. Isso torna as imagens menores, mas 'não' maiores. ... e não esqueça as aspas; essas são importantes.*
... e não se esqueça disso no final do comando.fonte
Eu recomendaria phatch. Sua GUI é muito mais flexível do que o imagemagick e o nautilus têm para oferecer e também possui uma interface de linha de comando, se você precisar escrever um script. Você pode instalá-lo com
fonte
Gimp vem com o modo batch. consulte Modo de lote do GIMP .
fonte
Eu criei uma ferramenta simples de usar: Picture Resize . Ele usa o imagemagick nos bastidores. Quando instalado, ele criará um ícone na área de trabalho do linux. Você pode arrastar e soltar uma ou várias imagens, ou uma pasta de imagens, e isso criará uma cópia redimensionada de cada imagem. O tamanho desejado pode ser facilmente alterado clicando com o botão direito do mouse no ícone da área de trabalho.
fonte
Se você está procurando uma GUI em vez de uma ferramenta de linha de comando, dê uma olhada no BIR: https://github.com/agronick/BIR
fonte