Strumento di ridimensionamento delle immagini per Ubuntu


Risposte:


14

Prova a utilizzare ImageMagick . Innanzitutto installalo:

$ sudo apt-get install imagemagick

Quindi puoi creare un piccolo script bash per convertirli nelle tue 6 dimensioni:

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

Salvare lo script come, ad esempio convert.sh, ed eseguire:

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

Modifica: ho modificato lo script per essere sicuro di non sovrascrivere i file durante il ridimensionamento, ma di rinominarli in ad es. DSC01258_640x480.JPG e utilizzare convert anziché invece mogrifypoiché i file vengono effettivamente rinominati. Ho anche disinfettato un po 'le variabili, non fa male.

Ho testato lo script con file png e ha funzionato bene. Dovrebbe funzionare con tutti i tipi di formati di immagine supportati da 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

10

Se installi ImageMagick come accennato da Sathya, c'è un bel frontend GUI per rendere più facile il ridimensionamento chiamato nautilus-image-converter.

Per installarlo:

sudo apt-get install nautilus-image-converter

Riavvia nautilus (o disconnettiti e accedi nuovamente). Aggiungerà "Ridimensiona immagini" e "Ruota immagini" al menu di scelta rapida, come mostrato qui:

testo alternativo

Basta evidenziare tutte le immagini che si desidera ridimensionare, fare clic con il tasto destro, selezionare Ridimensiona immagini e si otterrà questa interfaccia:

testo alternativo

Utilizzare l'opzione "Aggiungi" e aggiungere un nome personalizzato alle immagini ridimensionate. Potresti voler aggiungere dimensioni come 1024x768 O puoi fare 6 copie delle tue immagini in diverse cartelle, quindi utilizzare l' opzione di ridimensionamento delle immagini in posizione sulle immagini in ciascuna cartella per sovrascriverle con nuove immagini che hanno dimensioni diverse. Il ridimensionamento delle immagini sul posto sovrascriverà sempre le immagini selezionate, quindi fai attenzione a ciò che selezioni!


6

È possibile utilizzare ImageMagick: installare prima ImageMagick

sudo apt-get install imagemagick

Quindi, cd nella posizione in cui si trovano le tue immagini:

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

Quindi, crea le directory in base al tuo formato immagine

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

Copia le immagini nella directory in cui desideri trasformare

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

Successivamente, cambia la directory nell'altra directory

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

Quindi, utilizzare uno strumento chiamato mogrifyfornito dalla libreria ImageMagick per ridimensionare

mogrify -resize 640×480! *.jpg

Questo ridimensionerà tutto a 640*480, !dice di forzare le proporzioni.

Non conosco gli script di Bash, quindi non è così automatico.


2

Dovrebbero esserci davvero diversi riferimenti allo mogrifystrumento nel convertmanuale. ... Ho cercato per circa quarantacinque minuti, ma è stato solo quando mi sono imbattuto in un altro post che sono stato in grado di iniziare a guardare nella giusta direzione.

A beneficio di altri, questa linea ha fatto esattamente ciò di cui avevo bisogno. Ci sono voluti da una cinquantina di JPG da 2meg a 3meg (nella stessa directory) e li hanno fatti scendere da 80 a 120 kb. E ovviamente ha lasciato tutti i loro nomi "esattamente" uguali.

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

E, ancora a beneficio degli altri:

  • *.jpg ... esegue il comando mogrify su tutti i JPG nella directory.

  • -quality 75 ... riduce la qualità jpg al 75%, il che è abbastanza per la visualizzazione online.

  • -resize "640x480>" ... fa sì che tutte le immagini vengano ridimensionate a 640x480 (notare ">" alla fine. Ciò rende le immagini più piccole ma "non" più grandi ... e non dimenticare le virgolette; quelle sono importanti.

  • * ... e non dimenticarlo alla fine del comando.


1

Consiglierei Phatch. La sua GUI è molto più flessibile di ciò che imagemagick e nautilus hanno da offrire e ha anche un'interfaccia a riga di comando, se è necessario scrivere uno script. Puoi installarlo con

sudo apt-get install phatch


0

Ho creato uno strumento semplice da usare: Picture Resize . Usa imagemagick dietro la scena. Una volta installato, creerà un'icona sul desktop di Linux. Puoi trascinare e rilasciare una o più immagini o una cartella di immagini su di essa e creerà una copia ridimensionata di ogni immagine. Le dimensioni desiderate possono essere facilmente modificate facendo clic con il tasto destro sull'icona del desktop.


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.