Outil de redimensionnement d'image pour Ubuntu

Réponses:

14

Veuillez essayer d'utiliser ImageMagick . Tout d'abord, installez-le:

$ sudo apt-get install imagemagick

Ensuite, vous pouvez créer un petit script bash pour les convertir à vos 6 tailles:

#!/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

Enregistrez le script sous, par exemple convert.sh, et exécutez:

chmod +x convert.sh
./convert.sh /path/to/directory # path is optional, it takes '.' as default

Modifier: j'ai modifié le script pour m'assurer de ne pas remplacer les fichiers lors du redimensionnement, mais de les renommer par exemple DSC01258_640x480.JPG, et d'utiliser convert au lieu de mogrifypuisque les fichiers sont réellement renommés. J'ai aussi un peu désinfecté les variables, ça ne fait pas de mal.

J'ai testé le script avec des fichiers png et cela a bien fonctionné. Il devrait fonctionner pour toutes sortes de formats d'image pris en charge par 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
ℝaphink
la source
10

Si vous installez ImageMagick comme Sathya l'a mentionné, il existe une belle interface graphique pour faciliter le redimensionnement nautilus-image-converter.

Pour l'installer:

sudo apt-get install nautilus-image-converter

Redémarrez nautilus (ou déconnectez-vous et reconnectez-vous). Il ajoutera "Redimensionner les images" et "Faire pivoter les images" à votre menu contextuel comme indiqué ici:

texte alternatif

Mettez simplement en surbrillance toutes les images que vous souhaitez redimensionner, faites un clic droit, sélectionnez Redimensionner les images , et vous obtiendrez cette interface:

texte alternatif

Utilisez l'option "Ajouter" et ajoutez un nom personnalisé à vos images redimensionnées. Vous voudrez peut-être ajouter la taille telle que 1024x768 OU vous pouvez faire 6 copies de vos images dans différents dossiers, puis utiliser l' option de redimensionnement des images en place sur les images de chaque dossier pour les remplacer par de nouvelles images qui ont des dimensions différentes. Redimensionner les images en place écrasera toujours les images sélectionnées, alors faites attention à ce que vous sélectionnez!

John T
la source
6

Vous pouvez utiliser ImageMagick: installez d'abord ImageMagick

sudo apt-get install imagemagick

Ensuite, cd à l'emplacement où se trouvent vos images:

cd /path/to/where/images/are/stored

Ensuite, créez des répertoires en fonction de votre taille d'image

mkdir /path/to/where/images/are/stored/size

Copiez les images dans le répertoire où vous souhaitez transformer

cp /path/to/where/images/are/stored/* /path/to/where/images/are/stored/size

Ensuite, changez le répertoire dans l'autre répertoire

cp /path/to/where/images/are/stored/size

Ensuite, utilisez un outil appelé mogrifyfourni par la bibliothèque ImageMagick pour redimensionner

mogrify -resize 640×480! *.jpg

Cela redimensionnera tout 640*480, !indique de forcer le rapport hauteur / largeur.

Je ne connais pas les scripts Bash, donc ce n'est pas si automatisé.

Sathyajith Bhat
la source
2

Il devrait vraiment y avoir plusieurs références à l' mogrifyoutil dans le convertmanuel. ... J'ai cherché pendant environ quarante-cinq minutes, mais ce n'est que lorsque je suis tombé sur un autre message que j'ai pu commencer à regarder dans la bonne direction.

Pour le bénéfice des autres, cette ligne a fait exactement ce dont j'avais besoin. Il a fallu une cinquantaine de JPG de 2 meg à 3 meg (dans le même répertoire) et les a tous chuté à 80 à 120 ko. Et bien sûr, cela a laissé tous leurs noms «exactement» les mêmes.

mogrify *.jpg -quality 75 -resize "640x480>" *

Et, encore une fois pour le bénéfice des autres:

  • *.jpg ... exécute la commande mogrify sur tous les JPG du répertoire.

  • -quality 75 ... réduit la qualité jpg à 75%, ce qui est suffisant pour une visualisation en ligne.

  • -resize "640x480>" ... provoque le redimensionnement de toutes les images à 640x480 (notez le ">" à la fin. Cela rend les images plus petites mais "pas" plus grandes ... et n'oubliez pas les guillemets; ceux-ci sont importants.

  • * ... et n'oubliez pas cela à la toute fin de la commande.

tg3793
la source
1

Je recommanderais phatch. Son interface graphique est beaucoup plus flexible que ce qu'imagemagick et nautilus ont à offrir et il a également une interface de ligne de commande, si vous avez besoin d'écrire un script. Vous pouvez l'installer avec

sudo apt-get install phatch
Kim
la source
1

Gimp est livré avec le mode batch. voir Mode batch GIMP .

lakshman
la source
0

J'ai créé un outil simple à utiliser: Picture Resize . Il utilise imagemagick derrière la scène. Une fois installé, il créera une icône sur votre bureau Linux. Vous pouvez faire glisser et déposer une ou plusieurs images, ou un dossier d'images dessus, et cela créera une copie redimensionnée de chaque image. La taille souhaitée peut être facilement modifiée en cliquant avec le bouton droit sur l'icône du bureau.

Tabish
la source
0

Si vous recherchez une interface graphique plutôt qu'un outil de ligne de commande, jetez un œil au BIR: https://github.com/agronick/BIR

entrez la description de l'image ici

Victor Lamoine
la source