ImageMagick

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca
ImageMagick
software
Logo
Logo
Schermata di esempio
Schermata di esempio
GenereElaborazione digitale delle immagini
Visualizzatore di immagini
SviluppatoreImageMagick Studio LLC
Data prima versione1990
Ultima versione7.1.1-31 (21 aprile 2024)
Sistema operativoMultipiattaforma
LinguaggioC
LicenzaImageMagick License[1]
(licenza libera)
Sito webimagemagick.org

ImageMagick è un software libero multipiattaforma che fornisce una suite di strumenti per la creazione, modifica e visualizzazione di immagini bitmap.[2]

Storia[modifica | modifica wikitesto]

Venne creato nel 1987 da John Cristy quando lavorava presso la DuPont, per convertire immagini a 24 bit (16 milioni di colori) in immagini a 8 bit (256 colori), in modo che potessero essere visualizzate sulla maggior parte degli schermi. È stato pubblicato come freeware nel 1990 quando DuPont ha accettato di trasferire il copyright alla società ImageMagick Studio LLC, che è tuttora l'organizzazione che si occupa del progetto.

Nel maggio 2016, è stata scoperta una vulnerabilità attraverso la quale un utente malintenzionato può eseguire codice arbitrario su server che utilizzano l'applicazione per modificare le immagini caricate dall'utente. Gli esperti di sicurezza, inclusi i ricercatori di CloudFlare, hanno osservato l'uso effettivo della vulnerabilità nei tentativi di hacking attivo; il difetto di sicurezza era dovuto al fatto che il software utilizzava degli strumenti di backend senza prima controllare che i nomi dei percorsi e dei file fossero privi di comandi di shell impropri. La vulnerabilità non ha comunque influito sulle distribuzioni di ImageMagick che includevano una security policy configurata correttamente.

Descrizione[modifica | modifica wikitesto]

ImageMagick è intercompatibile con almeno un centinaio di formati di immagini[3] per applicare trasformazioni di traslazione, riflessione, rotazione, regolazione dei colori, applicazione di effetti speciali o disegno di testo, linee, poligoni, ellissi o curve di Bézier, ecc.[2] È utilizzabile sia attraverso interfaccia a riga di comando sia nativamente su diversi linguaggi di programmazione utilizzando apposite API.[4]

Esempi di utilizzo[modifica | modifica wikitesto]

Seguono alcuni esempi da riga di comando:[5]

Convertire un'immagine dal formato JPEG al PNG:

convert immagine.jpg risultato.png

Ridimensionare un'immagine alla dimensione di 300x200px:

mogrify -resize 300x200 immagine

Ridimensionare tutte le immagini con estensione .jpg presenti nella directory corrente ad una larghezza di 300px, calcolando l'altezza per mantenere le proporzioni:

mogrify -resize 300x *.jpg

Rimpicciolire un'immagine della metà e cambiarla di formato:

convert immagine.jpg -resize 50% risultato.png

API[modifica | modifica wikitesto]

Le interfacce supportate per vari linguaggi di programmazione sono:

Linguaggio Interfaccia
Ada
  • G2F
C
  • MagickWand
  • MagickCore
Ch[6]
  • ChMagick
COM+
  • ImageMagickObject
C++
  • Magick++
Java
  • JMagick
  • Im4java
LabVIEW
  • LVOOP ImageMagick
Lisp
  • CL-Magick
Neko/haXe
  • NMagick
.NET
  • MagickNet
Pascal
  • PascalMagick
Perl
  • PerlMagick
PHP
  • MagickWand for PHP
  • IMagick[7]
  • phMagick
Python
  • PythonMagickWand
  • PythonMagick
REALbasic
  • MBS Realbasic ImageMagick
Ruby
  • RMagick
  • MagickWand for Ruby
  • MiniMagick
  • QuickMagick
Tcl/Tk
  • TclMagick
RPC XML
  • RemoteMagick

Formati supportati[modifica | modifica wikitesto]

Lettura e scrittura[modifica | modifica wikitesto]

  • 8BIM (formato proprietario Adobe Photoshop)
  • APP1 (formato proprietario Adobe Photoshop)
  • AVS (immagine AVS X)
  • BIE (Joint Bi-level Image Experts Group interchange format)
  • BMP (Windows bitmap)
  • CIN (Kodak Cineon Image Format)
  • CMYK (campionatura grezza ciano, magenta, giallo e nero)
  • CMYKA (campionatura grezza ciano, magenta, giallo, nero e canale alpha)
  • DCX (ZSoft IBM PC Paintbrush multipagina)
  • DIB (Windows bitmap)
  • DPX (Digital Picture Exchange)
  • EPDF (immagina incapsulata in PDF)
  • EPI (Adobe Encapsulated PostScript Interchange format)
  • EPS (Adobe Encapsulated PostScript)
  • EPSF (Adobe Encapsulated PostScript)
  • EPSI (Adobe Encapsulated PostScript Interchange format)
  • EPT (Adobe Encapsulated PostScript with TIFF preview)
  • FAX (Group 3 FAX)
  • FITS (Flexible Image Transport System)
  • FPX (FlashPix Format)
  • G3 (Group 3 FAX)
  • GIF (CompuServe graphics interchange format)
  • GIF87 (CompuServe graphics interchange format (version 87a))
  • GRAY (Raw gray samples (8 or 16 bits, depending on the image depth))
  • H (Internal format)
  • HTML (HTML con mappa immagine)
  • ICB (Truevision Targa image)
  • ICM (ICC Color Profile)
  • IPTC (IPTC Newsphoto)
  • JBG (Joint Bi-level Image experts Group interchange format)
  • JBIG (Joint Bi-level Image experts Group interchange format)
  • JNG (Multiple-image Network Graphics)
  • JP2 (JPEG-2000 JP2 File Format Syntax)
  • JPC (JPEG-2000 Code Stream Syntax)
  • JPEG (Joint Photographic Experts Group JFIF format)
  • JPG (Joint Photographic Experts Group JFIF format)
  • LOGO (ImageMagick Logo)
  • M2V (MPEG-2 Video Stream)
  • MAP (Colormap intensities (8 or 16 bits, depending on the image depth) and indices (8 or 16 bits, depending n whether colors exceeds 256).)
  • MIFF (Magick Image File Format)
  • MNG (Multiple-image Network Graphics)
  • MONO (Bi-level bitmap in least-significant- -byte-first order)
  • MPEG (MPEG-1 Video Stream)
  • MPG (MPEG-1 Video Stream)
  • MSL (Magick Scripting Language)
  • MTV (MTV Raytracing image format)
  • MVG (Magick Vector Graphics)
  • OTB (On-the-air bitmap)
  • P7 (Xv thumbnail format)
  • PAL (16bit/pixel interleaved YUV)
  • PALM (Palm Pixmap format)
  • PBM (Portable bitmap format (black and white))
  • PCD (Photo CD)
  • PCDS (Photo CD)
  • PCT (Apple Macintosh QuickDraw/PICT)
  • PCX (ZSoft IBM PC Paintbrush)
  • PDB (Palm Database ImageViewer Format)
  • PDF (Portable Document Format)
  • PGM (Portable graymap format (gray scale))
  • PICON (Personal Icon)
  • PICT (Apple Macintosh QuickDraw/PICT)
  • PM (X Window system pixmap (color))
  • PNG (Portable Network Graphics)
  • PNM (Portable anymap)
  • PPM (Portable pixmap format (color))
  • PS (Adobe PostScript)
  • PS2 (Adobe PostScript livello II)
  • PS3 (Adobe PostScript livello III)
  • PSD (Adobe Photoshop bitmap)
  • PTIF (Pyramid encoded TIFF)
  • RAS (SUN Rasterfile)
  • RGB (Raw red, green, and blue samples (8 or 16 bits, depending on the image depth))
  • RGBA (Raw red, green, blue, and matte samples (8 or 16 bits, depending on the image depth))
  • ROSE (70x46 Truecolor test image)
  • SGI (Irix RGB image)
  • SUN (SUN Rasterfile)
  • SVG (Scalable Vector Graphics)
  • TEXT (Raw text)
  • TGA (Truevision TGA image)
  • TIF (Tagged Image File Format)
  • TIFF (Tagged Image File Format)
  • TXT (Raw text)
  • UYVY (16bit/pixel interleaved YUV)
  • VDA (Truevision Targa image)
  • VICAR (VICAR rasterfile format)
  • VID (Visual Image Directory)
  • VIFF (Khoros Visualization image)
  • VST (Truevision Targa image)
  • WBMP (Wireless Bitmap (level 0) image)
  • X (X Image)
  • XBM (X Window system bitmap (black and white))
  • XPM (X Window system pixmap (color))
  • XV (Khoros Visualization image)
  • XWD (X Window system window dump (color))
  • YUV (CCIR 601 4:1:1)

Sola lettura[modifica | modifica wikitesto]

  • AFM (Adobe font metrics)
  • ART (PF1: 1st Publisher)
  • AVI (Audio/Visual Interleaved)
  • CUT (DR Halo)
  • DCM (Digital Imaging and Communications in Medicine image)
  • DPS (Display PostScript)
  • DPX (Digital Moving Picture Exchange)
  • FILE (Uniform Resource Locator)
  • FTP (Uniform Resource Locator)
  • GRADIENT (Gradual passing from one shade to another)
  • GRANITE (Granite texture)
  • HTTP (Uniform Resource Locator)
  • ICO (Microsoft icon)
  • ICON (Microsoft icon IMPLICIT)
  • LABEL (Text image format)
  • MPR (Magick Persistent Registry)
  • MSL (Magick Scripting Language)
  • NETSCAPE (Netscape 216 color cube)
  • NULL (Constant image of uniform color)
  • PDB (Pilot Image Format)
  • PFA (Adobe Type 1 font file)
  • PFB (Adobe Type 1 font file)
  • PFM (Adobe Type 1 font file)
  • PIX (Alias/Wavefront RLE image format)
  • PLASMA (Plasma fractal image)
  • PWP (Seattle Film Works)
  • RLA (Alias/Wavefront image)
  • RLE (Utah Run length encoded image)
  • SCT (Scitex HandShake)
  • SFW (Seattle Film Works)
  • STEGANO (Steganographic image)
  • SVG (Scalable Vector Graphics)
  • TILE (Tile image with a texture)
  • TIM (PSX TIM)
  • TTF (TrueType font)
  • WMF (Windows Metafile)
  • WPG (WordPerfect Graphics)
  • XC (Constant image uniform color)
  • XCF (GIMP image)

Note[modifica | modifica wikitesto]

  1. ^ (EN) ImageMagick: License, su imagemagick.org. URL consultato il 18 marzo 2016.
    «the license is compatible with the GPL V3»
  2. ^ a b (EN) ImageMagick: Convert, Edit, Or Compose Bitmap Images, su imagemagick.org. URL consultato il 17 marzo 2017.
  3. ^ (EN) ImageMagick: Formats, su imagemagick.org. URL consultato il 17 marzo 2016.
  4. ^ (EN) ImageMagick: Application Program Interfaces, su imagemagick.org. URL consultato il 17 marzo 2016 (archiviato dall'url originale il 19 marzo 2016).
  5. ^ (EN) Examples of ImageMagick Usage Examples, su imagemagick.org. URL consultato il 17 marzo 2016.
  6. ^ (EN) Ch -- an embeddable interpreter, su softintegration.com. URL consultato il 18 marzo 2016.
  7. ^ (EN) Image Processing (ImageMagick), su php.net. URL consultato il 18 marzo 2016.

Bibliografia[modifica | modifica wikitesto]

Voci correlate[modifica | modifica wikitesto]

Altri progetti[modifica | modifica wikitesto]

Collegamenti esterni[modifica | modifica wikitesto]