cerca
ImageMagick
modifica cronologia stampa login logout

Wiki

Tools

Categorie

Help

edit SideBar

Return to ImageMagick  (Edit)

Utenti.ImageMagick History

Hide minor edits - Show changes to markup

Added lines 49-57:

Dividere un immagine in frames (o tiles)

Supponiamo di avere un'immagine, contenente al suo interno diversi frames di animazione. Potrebbe insorgere in noi il desiderio di avere una singola immagine per ogni frame.

Per ottenere ciò con ImageMagick, si fa così:

 convert immaginesorgente.jpg -crop 256x256 finale.png

256x256 rappresentano le dimensioni del singolo frame, e ci pensa ImageMagick a suddividere tutto quanto etc. Se le dimensioni dell'immagine non sono multipli esatti di 256, gli ultimi frames saranno più piccoli.

Added lines 46-48:

Mantenere l'orientamento di una fotografia

Quando si scatta, spesso nei dati EXIF sono contenute anche informazioni relative all'orientamento della foto stessa, ovvero se va girata in verticale o in orizzontale. ImageMagick nella conversione può tenere conto di questi dati attraverso il comando -auto-orient.

Added lines 1-48:

(:title ImageMagick:)

 :: ImageMagick ::

Che cos'è?

ImageMagick è una collezione di programmi da linea di comando che permettono di lavorare sulle immagini.

Sembra strano lavorare su immagini senza vederle, ma in realtà l'utilità c'è: automatizzare una serie di operazioni su una lunga serie di files!

Premetto che non ne so molto, e che questa pagina serve un po' come pagina per gli appunti.

Come si usa

Ci sono due comandi principali: convert e mogrify. Non chiedetemi l'origine del nome mogrify.

convert legge un'immagine, applica i comandi che specifichiamo e salva il risultato in un'altra immagine. mogrify invece legge un'immagine, applica i comandi e la sovrascrive.

In generale, la linea di comando è fatta così:

 convert file-in-input comandi file-in-output

ImageMagick si prende la briga di convertire l'immagine nel formato specificato dall'estensione di file-in-output. Legge praticamente tutto e salva praticamente in tutti i formati.

Esempi pratici

...visto che sono quelli che ci servono di più:)

Ridimensionare un'immagine

Si usa il comando -resize:

 convert image.jpg -resize 34% risultato.png

Ci sono diversi modi per specificare il ridimensionamento:

  • indicare una percentuale: -resize 45%
  • indicare delle dimensioni: -resize 640x480
  • indicare solo la larghezza, l'altezza è calcolata automaticamente: -resize 640

Poi ci sono altre cose che investigherò meglio

Applicare un'operazione ad una serie di files

Supponiamo di voler convertire tutti i files con un certo nome. Con ImageMagick è piuttosto semplice. Faccio subito un esempio così si chiarisce bene la faccenda:

 convert 'DSC*.jpg' -resize 26.44% risultato.png

ImageMagick è abbastanza furbo da fare queste due cose:

  • legge tutti i files che la quasi-regexp 'DSC*.jpg' accetta;
  • automaticamente modifica il nome risultato.png: risultato-0.png per il primo file convertito, risultato-1.png per il secondo e così via.

Tuttavia, per strani motivi, il modo migliore di convertire in serie è scrivere così:

 convert 'DSC*.jpg[40%]' risultato.png

La differenza tra questa scrittura e quella precedente è che adesso i files vengono convertiti man mano che si leggono, mentre quell'altra prima li legge tutti e poi li converte. O una cosa del genere.


Guide