Comment redimensionner une image via le terminal? [dupliquer]

120

J'ai Ubuntu 10.04. J'ai converti l'image par le terminal en utilisant la commande suivante:

convert myfigure.png myfigure.jpg

Mais je veux redimensionner la hauteur et la largeur de l'image convertie. Y a-t-il un moyen de le faire?

    
posée Md Kutubuddin Sardar 24.03.2013 - 03:20
la source

4 réponses

155

Même commande, avec une option supplémentaire:

convert myfigure.png -resize 200x100 myfigure.jpg

ou

convert -resize 50% myfigure.png myfigure.jpg

Pour redimensionner plusieurs fichiers, vous pouvez essayer la commande suivante (comme suggéré par @ test30 )

find . -maxdepth 1 -iname "*.jpg" | xargs -L1 -I{} convert -resize 30% "{}" _resized/"{}"
    
réponse donnée Rinzwind 24.03.2013 - 05:49
la source
38

Si vous voulez uniquement une interface de ligne de commande:

sudo apt-get install imagemagick
mogrify -resize 320x240 Image.png 
mogrify -resize 50% Image.png
mogrify -resize 320x240 *.jpg

Si vous voulez essayer l'interface graphique:

Installer nautilus-image-converter

sudo apt-get install nautilus-image-converter

Il ajoute deux éléments de menu contextuel dans nautlius pour que vous puissiez faire un clic droit et choisir "Redimensionner l'image" (l'autre est "Rotation Image").

Vous pouvez faire tout un répertoire d'images en une seule fois si vous le souhaitez et vous n'avez même pas besoin d'ouvrir une application pour le faire.

    
réponse donnée Maythux 11.03.2014 - 11:46
la source
2

Comme Ubuntu est livré avec Python, vous pouvez également utiliser un script Python pour y parvenir avec un peu plus de contrôle sur ce qui se passe - voir cette question stackoverflow par exemple des scripts. Ces exemples utilisent uniquement la bibliothèque standard.

Script n ° 1

import os, sys
import Image

size = 128, 128

for infile in sys.argv[1:]:
    outfile = os.path.splitext(infile)[0] + ".thumbnail"
    if infile != outfile:
        try:
            im = Image.open(infile)
            im.thumbnail(size, Image.ANTIALIAS)
            im.save(outfile, "JPEG")
        except IOError:
            print "cannot create thumbnail for '%s'" % infile

Et un autre exemple où il suffit de spécifier la largeur (en tant que variable de largeur):

Script n ° 2

from PIL import Image
import sys

filename = sys.argv[1:]
basewidth = 300
img = Image.open(filename)
wpercent = (basewidth/float(img.size[0]))
hsize = int((float(img.size[1])*float(wpercent)))
img = img.resize((basewidth,hsize), Image.ANTIALIAS)
img.save(filename) 

Maintenant, comment faire cela via le terminal ...

sudo nano resizescript.py

Collez l’un de ces blocs de code dans l’éditeur de texte. Ctrl + x pour quitter (dites oui pour enregistrer les modifications).

Pour utiliser le script n ° 1:

python resizescript.py yourfilenamehere.jpg

Pour utiliser le script n ° 2:

python resizescript.py yourfilenamehere.jpg

Vous devez être dans le même répertoire que les fichiers image pour ces deux scripts. Le premier réduit l'image à 128x128 pixels. Le second script fait 300 pixels de large et calcule la hauteur proportionnelle. Ceci est plus une réponse Python, mais cela se fait techniquement dans tout le terminal.

    
réponse donnée freeworld 10.09.2017 - 22:08
la source
0

imgp est un utilitaire relativement récent qui effectue le redimensionnement et la rotation des images. Il a plus de fonctionnalités que le convertisseur-image nautile.

    
réponse donnée Arun Prakash Jana 05.10.2016 - 07:00
la source

Lire d'autres questions sur les étiquettes