Color Modes - ImageMagick 圖像庫

影像格式



關於色彩空間支援的格式虛擬格式內建影像內建圖案嵌入式設定檔

ImageMagick 使用一個稱為 magick 的 ASCII 字串(例如 GIF)來識別檔案格式、充當格式的演算法、內建圖案和嵌入式設定檔類型。某些格式的支援會委派給程式庫或外部程式。安裝指南說明了在哪裡可以找到這些發行版以及所需的任何特殊配置選項。

若要取得系統支援的影像格式完整清單,請輸入

magick identify -list format 

在某些平台上,ImageMagick 會自動處理這些副檔名:.gz 表示 Zip 壓縮、.Z 表示 Linux 壓縮、.bz2 表示區塊壓縮,以及 .pgp 表示 PGP 加密。例如,名為 image.pnm.gz 的 PNM 影像會自動解壓縮。

關於色彩空間

大多數影像格式都採用 sRGB 色彩空間(例如 JPEG、PNG 等)。少數格式僅支援線性 RGB(例如 EXR、DPX、CIN、HDR)或僅支援線性灰階(例如 PGM)。少數格式支援 CMYK。還有一些格式也支援 LAB(即 CieLAB)(例如 TIFF、PSD、JPG、JP2)。若要判斷影像的色彩空間,請使用以下命令

$ magick identify -verbose image.jpg
Image: image.jpg
Format: JPEG (Joint Photographic Experts Group JFIF format)
...
Colorspace: sRGB 
或者使用適當的百分比編碼
$ magick image.jpg -print "%[colorspace]\n" null:
sRGB 

處理影像時,請注意色彩空間。許多影像處理演算法都採用線性 RGB 色彩空間。雖然您可以在 sRGB 色彩空間中獲得令人滿意的處理結果,但在線性 RGB 中(基本上是移除伽瑪函數的 sRGB)可能會獲得更好的結果。例如,

magick image.jpg -colorspace RGB -resize 50% -colorspace sRGB resize.jpg 

從 IM 6.7.8-2 開始,無論 Imagemagick 是否啟用 HDRI,都可以在 LAB 色彩空間中正常工作。基本上,A 和 B 通道以 50% 的灰階偏差儲存,以便處理格式所需的負值。

magick lab.tif -resize 50% resize.jpg 

同樣地,某些影像處理運算子直接在 LAB 空間中運作可能沒有意義,但 ImageMagick 允許這樣做,並且通常會傳回合理的結果。

支援的影像格式

ImageMagick 支援讀取超過 100 種主要檔案格式(不包括子格式)。下表概述了支援的影像格式。

標籤 模式 說明 備註
AAI 讀/寫 AAI 沙丘影像
APNG 讀/寫 動畫可攜式網路圖形 注意,您必須使用明確的影像格式說明符來讀取 APNG (apng:myImage.apng) 影像序列,否則它會假設為 PNG 影像,並且只讀取第一個影格。您的執行路徑中必須有 ffmpeg 才能處理 APNG 影像。
ART 讀/寫 PFS: 1st Publisher 最初在 Macintosh (MacPaint?) 上使用的格式,後來用於 PFS: 1st Publisher 剪貼畫。
ARW 讀取 Sony 數位相機 Alpha 原始影像格式 設定 -define dng:use-camera-wb=true 可使用 Sony 相機的 RAW 嵌入式色彩設定檔。您也可以設定這些選項:use-auto-wbno-auto-brightoutput-color
AVI 讀取 Microsoft 音訊/視訊交錯
AVIF 讀/寫 從 AV1 視訊關鍵影格衍生的格式
AVS 讀/寫 AVS X 影像
BAYER 讀/寫 原始馬賽克樣本 使用 -size-depth 指定影像的寬度、高度和深度。如需指定單精度浮點格式,請使用 -define quantum:format=floating-point。將深度設為 32 表示單精度浮點數,設為 64 表示雙精度浮點數,設為 16 表示半精度浮點數。如需使用帶符號像素資料,請使用 -define quantum:format=signed
BPG 讀/寫 更好的可攜式圖形格式 使用 -quality 指定影像壓縮品質。為了滿足 BPG 的需求,品質參數會除以 2(例如 -quality 92 會指定 46 作為 BPG 壓縮率)。
BMP、BMP2、BMP3 讀/寫 Microsoft Windows 點陣圖 預設的 BMP 格式為版本 4。使用 BMP3 和 BMP2 分別寫入版本 3 和 2。使用 -define bmp:ignore-filesize 忽略檔案大小檢查。
BRF W 盲文點字格式 使用 6 點盲文點字模式(即 6x2 點矩陣)並列排列,以使用 BRF ASCII 盲文編碼重現影像。
CALS 讀取 持續獲取與生命週期支援類型 1 影像 指定於 MIL-R-28002 和 MIL-PRF-28002 中。美國軍方使用的標準藍圖歸檔格式,用於取代縮影膠片。
CIN 讀/寫 Kodak Cineon 影像格式 使用 -set 指定影像伽瑪值或黑白點(例如 -set gamma 1.7-set reference-black 95-set reference-white 685)。屬性包括 cin:file.create_date、cin:file.create_time、cin:file.filename、cin:file.version、cin:film.count、cin:film.format、cin:film.frame_id、cin:film.frame_position、cin:film.frame_rate、cin:film.id、cin:film.offset、cin:film.prefix、cin:film.slate_info、cin:film.type、cin:image.label、cin:origination.create_date、cin:origination.create_time、cin:origination.device、cin:origination.filename、cin:origination.model、cin:origination.serial、cin:origination.x_offset、cin:origination.x_pitch、cin:origination.y_offset、cin:origination.y_pitch、cin:user.data。
CIP W Cisco IP 電話影像格式
CMYK 讀/寫 原始青色、洋紅色、黃色和黑色樣本 使用 -size-depth 指定影像的寬度、高度和深度。如需指定單精度浮點格式,請使用 -define quantum:format=floating-point。將深度設為 32 表示單精度浮點數,設為 64 表示雙精度浮點數,設為 16 表示半精度浮點數。
CMYKA 讀/寫 原始青色、洋紅色、黃色、黑色和 Alpha 樣本 使用 -size-depth 指定影像的寬度、高度和深度。如需指定單精度浮點格式,請使用 -define quantum:format=floating-point。將深度設為 32 表示單精度浮點數,設為 64 表示雙精度浮點數,設為 16 表示半精度浮點數。
CR2 讀取 Canon 數位相機 RAW 影像格式 需要明確的影像格式,否則影像會被解讀為 TIFF 影像(例如 cr2:image.cr2)。
CRW 讀取 Canon 數位相機 RAW 影像格式
CUBE 讀取 一種查找表,其中包含數學指令,用於將一種顏色(根據 RGB 值)替換為另一種顏色。這就像是一種顏色分級預設集。這個過程是以像素為單位進行,具有非常高的準確性。 選擇級別,例如:cube:Vibrant.cube[8] 表示級別 8
CUR 讀取 Microsoft 游標圖示
CUT 讀取 DR Halo
DCM 讀取 醫學數位影像傳輸(DICOM)影像 醫學界用於 X 光等影像。ImageMagick 根據窗位(0028,1050)和窗寬(0028,1051)標籤設定初始顯示範圍。使用 -define dcm:display-range=reset 將顯示範圍設定為最小和最大像素值。使用 -define dcm:rescale=true 啟用對檔案中重新縮放斜率和截距設定的解讀。使用 -define dcm:window=centerXwidth 使用您自己的值覆寫檔案中的中心和寬度設定。
DCR 讀取 數位相機 RAW 影像檔案 使用 DCRAW 來利用 RAW 照片解碼器委託程式,例如 dcraw:IMG_2600.dng
DCX 讀/寫 ZSoft IBM PC 多頁 Paintbrush 影像
DDS 讀/寫 Microsoft Direct Draw Surface 使用 -define 指定壓縮方式(例如 -define dds:compression={dxt1, dxt5, none})。其他定義包括 dds:cluster-fit={true,false}dds:weight-by-alpha={true,false}dds:fast-mipmaps={true,false},並使用 dds:mipmaps 設定mipmap層數(使用 fromlist 使用影像列表)。
DEBUG W 原始像素偵錯檔案,可能僅對開發人員有用
DIB 讀/寫 Microsoft Windows 設備獨立點陣圖 DIB 是一種沒有 BMP 標頭的 BMP 檔案。用於支援複合格式(如 WMF)中的嵌入式影像。
DJVU 讀取
DMR 讀/寫 數位媒體儲存庫 需要 MagickCache 委託函式庫。支援的選項包括 dmr:path(儲存庫位置)、dmr:passkey(開啟數位媒體儲存庫的密鑰)、dmr:passphrase(選擇性地加密或解密媒體資源)和 dmr:ttl(存活時間);設定 dmr:meta(中繼資料)屬性以將資源儲存為中繼資料。
DNG 讀取 數位負片 需要明確的影像格式,否則影像會被解釋為 TIFF 影像(例如 dng:image.dng)。
DOT 讀取 圖形視覺化 使用 -define 指定佈局引擎(例如 -define dot:layout-engine=twopi)。
DPX 讀/寫 SMPTE 數位動態圖像交換 2.0 (SMPTE 268M-2003) 使用 -set 指定影像伽瑪值或黑白點(例如 -set gamma 1.7-set reference-black 95-set reference-white 685)。
EMF 讀取 Microsoft 增強型中繼檔 (32 位元) 僅適用於 Microsoft Windows。使用 -size 命令列選項指定最大寬度和高度。
EPDF 讀/寫 封裝式可攜式文件格式
EPI 讀/寫 Adobe 封裝式 PostScript 交換格式 需要 Ghostscript 才能讀取。
EPS 讀/寫 Adobe 封裝式 PostScript 需要 Ghostscript 才能讀取。
EPS2 W Adobe Level II 封裝式 PostScript 需要 Ghostscript 才能讀取。
EPS3 W Adobe Level III 封裝式 PostScript 需要 Ghostscript 才能讀取。
EPSF 讀/寫 Adobe 封裝式 PostScript 需要 Ghostscript 才能讀取。
EPSI 讀/寫 Adobe 封裝式 PostScript 交換格式 需要 Ghostscript 才能讀取。
EPT 讀/寫 帶有 TIFF 預覽的 Adobe 封裝式 PostScript 交換格式 需要 Ghostscript 才能讀取。
EXR 讀/寫 由 Industrial Light & Magic 開發的高動態範圍 (HDR) 檔案格式 如需此影像格式的詳細資訊,請參閱 高動態範圍影像。若要指定輸出色彩類型,請使用 -define exr:color-type={RGB,RGBA,YC,YCA,Y,YA,R,G,B,A}。使用 -sampling-factor 指定 YC(A) 的採樣率(例如 2x2 或 4:2:0)。需要 OpenEXR 委託函式庫。
FARBFELD 讀/寫 Farbfeld 無損影像格式 sRGB 16 位元 RGBA 無損影像格式
FAX 讀/寫 Group 3 TIFF 根據標準,此格式的固定寬度為 1728。請參閱 TIFF 格式。請注意,傳真機使用非正方形像素,其寬度是高度的 1.5 倍,但電腦顯示器使用正方形像素,因此傳真影像可能會看起來很窄,除非使用 100x150% 的調整大小規格明確調整其大小。
FITS 讀/寫 彈性影像傳輸系統 若要指定單精度浮點格式,請使用 -define quantum:format=floating-point。將深度設定為 64 以獲得雙精度浮點格式。
FL32 讀/寫 FilmLight 浮點影像格式
FLIF 讀/寫 免費無損影像格式
FPX 讀/寫 FlashPix 格式 FlashPix 選擇在單一檔案中以各種解析度儲存百萬和十億像素影像,這允許在網路瀏覽器中顯示時節省頻寬和快速顯示時間。需要 FlashPix SDK。使用 -define fpx:view 指定 FlashPix 檢視參數。
FTXT 讀/寫 以格式化文字讀寫多光譜通道
GIF 讀/寫 CompuServe 圖形交換格式 8 位元 RGB 擬似色彩,最多 256 個調色板項目。指定格式 GIF87 可寫入舊版 87a 格式。使用 -transparent-color 指定 GIF 透明色彩(例如 -transparent-color wheat)。
GPLT 讀取 Gnuplot 繪圖檔案 需要 gnuplot4.0.tar.Z 或更高版本。
GRAY 讀/寫 原始灰度樣本 使用 -size-depth 指定圖像寬度、高度和深度。要指定單精度浮點格式,請使用 -define quantum:format=floating-point。將深度設置為 32 表示單精度浮點數,64 表示雙精度浮點數,16 表示半精度浮點數。對於帶符號像素數據,請使用 -define quantum:format=signed。ImageMagick 支持掃描線填充。如果您的圖像沒有填充,您可以將其作為一維向量讀取並重新調整其形狀:magick -size 38700x1 -depth 1 gray:image.bin -reshape 180x215 image.png
GRAYA 讀/寫 原始灰度和 Alpha 樣本 使用 -size-depth 指定影像的寬度、高度和深度。如需指定單精度浮點格式,請使用 -define quantum:format=floating-point。將深度設為 32 表示單精度浮點數,設為 64 表示雙精度浮點數,設為 16 表示半精度浮點數。
HDR 讀/寫 輻射度 RGBE 圖像格式
HDR 讀/寫 輻射度 RGBE 圖像格式
HEIC 讀/寫 Apple 高效率圖像格式 將品質設置為 100 可產生無損 HEIC 圖像。需要 libheif 代理程式庫。可辨識的定義包括 heic:preserve-orientation={true,false}depth-image={true,false}heic:speedheic:chroma
HPGL 讀取 HP-GL 繪圖機語言 需要 hp2xx-3.4.4.tar.gz
HRZ 讀/寫 慢速掃描電視
HTML 讀/寫 具有客戶端圖像映射的超文本標記語言 也稱為 HTM。需要 html2ps 才能讀取。請注意,匯出客戶端圖像映射時,任何文件名中都不允許使用 \\xff 字符。
ICO 讀取 Microsoft 圖示 也稱為 ICON
INFO W 圖像的格式和特性
ISOBRL W ISO/TR 11548-1 點字 使用 8 點點字模式(即 8x2 點矩陣)的並列來重現圖像,使用 ISO/TR 11548-1 點字編碼。
ISOBRL6 W ISO/TR 11548-1 點字 6 點 使用 6 點點字模式(即 6x2 點矩陣)的並列來重現圖像,使用 ISO/TR 11548-1 點字編碼。
JBIG 讀/寫 聯合雙層圖像專家組文件交換格式 也稱為 BIEJBG。需要 jbigkit-1.6.tar.gz
JNG 讀/寫 多圖像網絡圖形 採用 PNG 風格包裝器且具有透明度的 JPEG。需要 libjpeg 和 libpng-1.0.11 或更高版本,建議使用 libpng-1.2.5 或更高版本。
JP2 讀/寫 JPEG-2000 JP2 文件格式語法 使用 -define 選項指定編碼選項。有關更多詳細信息,請參閱 JP2 編碼選項
JPT 讀/寫 JPEG-2000 代碼流語法 使用 -define 選項指定編碼選項。有關更多詳細信息,請參閱 JP2 編碼選項
J2C 讀/寫 JPEG-2000 代碼流語法 使用 -define 選項指定編碼選項。有關更多詳細信息,請參閱 JP2 編碼選項
J2K 讀/寫 JPEG-2000 代碼流語法 使用 -define 選項指定編碼選項。有關更多詳細信息,請參閱 JP2 編碼選項
JPEG 讀/寫 聯合圖像專家組 JFIF 格式 請注意,JPEG 是一種有損壓縮。此外,您無法使用 JPEG 創建黑白圖像,也無法保存透明度。

需要 jpegsrc.v8c.tar.gz。您可以分別設定亮度和色度的品質縮放比例(例如 -quality 90,70)。您可以選擇性地定義 DCT 方法,例如要指定浮點數方法,請使用 -define jpeg:dct-method=float。預設情況下,我們會計算最佳霍夫曼編碼表。指定 -define jpeg:optimize-coding=false 以使用預設的霍夫曼表。指定 -define jpeg:arithmetic-coding=true 以啟用霍夫曼優化。另外兩個選項包括 -define jpeg:block-smoothing-define jpeg:fancy-upsampling。使用 -define jpeg:sampling-factor 設定採樣因子。您可以使用 jpeg:size 調整影像大小,例如 -define jpeg:size=128x128。要限制最大檔案大小,請使用 jpeg:extent,例如 -define jpeg:extent=400KB。要定義一個或多個自訂量化表,請使用 -define jpeg:q-table=filename。這些值會乘以 -quality 參數除以 100.0。要避免讀取特定的關聯影像設定檔,請使用 -define profile:skip=name(例如 profile:skip=ICC)。
JXR 讀/寫 JPEG 擴展範圍 需要 jxrlib 代理程式庫。將 JxrDecApp 和 JxrEncApp 應用程式放在您的執行路徑中。

JSON W JavaScript 物件表示法,一種輕量級的資料交換格式 使用以下定義包含有關影像的其他屬性:-define json:locate-define json:limit-define json:moments-define json:features。使用 -define json:version 指定 JSON 模型結構描述版本。目前的版本是 1.0。任何低於 1.0 的版本都會傳回包含拼寫錯誤標籤的原始 JSON 輸出。
JXL 讀/寫 JPEG XL 影像編碼系統 需要 JPEG XL 代理程式庫。使用 -define jxl:effort=integer 設定努力程度,並使用 -define jxl:decoding-speed=integer 設定解碼速度。要指定單精度浮點數格式,請使用 -define quantum:format=floating-point。將深度設定為 32 表示單精度浮點數,16 表示半精度浮點數。
KERNEL W 形態學核心格式 適用於形態學核心的格式
MAN 讀取 Linux 參考手冊頁面 需要安裝 GNU groff 和 Ghostcript。
MAT 讀取 MATLAB 影像格式
MIFF 讀/寫 Magick 多光譜影像檔案格式 此格式會保留 ImageMagick 已知的所有影像屬性。要指定單精度浮點數格式,請使用 -define quantum:format=floating-point。將深度設定為 32 表示單精度浮點數,64 表示雙精度浮點數,16 表示半精度浮點數。
MONO 讀/寫 最低有效位元組優先順序的雙階點陣圖
MNG 讀/寫 多圖像網絡圖形 一種類似 PNG 的影像格式,支援多個影像、動畫和透明 JPEG。需要 libpng-1.0.11 或更新版本,建議使用 libpng-1.2.5 或更新版本。0 的畫面間延遲會產生一個畫面,每個額外的圖層都合成在頂部。對於動畫,請務必指定非零延遲。
M2V 讀/寫 Motion Picture Experts Group 檔案交換格式(版本 2) 需要 ffmpeg
MPEG 讀/寫 Motion Picture Experts Group 檔案交換格式(版本 1) 需要 ffmpeg
MPC 讀/寫 Magick Pixel Cache 影像檔案格式 最高效的數據處理模式是「一次寫入,多次讀取」模式。影像是從來源生成或複製而來,然後隨著時間的推移對影像像素進行各種分析。MPC 支援此模式。MPC 是原生 內存中 的 ImageMagick 未壓縮文件格式。此文件格式與 ImageMagick 用於表示內存中影像的格式相同,並且通過將文件直接映射到內存中來讀取。MPC 格式不可移植,不適合作為歸檔格式。它適合作為高性能影像處理的中間格式。MPC 格式需要兩個文件來支持一個影像。影像屬性寫入副檔名為 .mpc 的文件,而影像像素則寫入副檔名為 .cache 的文件。
MPO 讀取 多圖片物件
MPR 讀/寫 Magick 永久註冊表 此格式允許您寫入和讀取內存中的影像。文件名是註冊表項。影像會一直存在,直到您明確刪除它或程序退出。例如,讓我們使用 MPR 來創建一個棋盤格
magick \( -size 15x15 canvas:black canvas:white -append \) \
  \( +clone -flip \) +append -write mpr:checkers +delete \
  -size 240x240 tile:mpr:checkers -delete registry:checkers board.png 
MRW 讀取 Sony (Minolta) Raw 影像文件 設置 -define dng:use-camera-wb=true 以使用 Sony 相機的 RAW 內嵌色彩配置文件。
MSL 讀/寫 Magick 腳本語言 MSL 是 conjure 工具程序支持的基於 XML 的腳本語言。MSL 需要 libxml2 代理庫。
MTV 讀/寫 MTV 光線追踪影像格式
MVG 讀/寫 Magick 向量圖形。 原生 ImageMagick 向量圖元文件格式。一個包含 magick-draw 選項可接受的向量繪圖命令的文本文件。
NEF 讀取 Nikon 數位單眼相機 Raw 影像文件
ORF 讀取 Olympus 數位相機 Raw 影像文件
ORA 讀取 基於分層點陣圖的開放交換格式
OTB 讀/寫 無線點陣圖
P7 讀/寫 Xv 的 Visual Schnauzer 縮略圖格式
PALM 讀/寫 Palm 點陣圖
PAM W 常見的二維點陣圖格式
CLIPBOARD 讀/寫 Windows 剪貼板 僅在 Microsoft Windows 下可用。
PBM 讀/寫 可移植點陣圖格式(黑白)
PCD 讀/寫 Photo CD 寫入的最大分辨率為 768x512 像素,因為更大的影像需要霍夫曼壓縮(不支持)。使用 -bordercolor 指定邊框顏色(例如 -bordercolor black)。
PCDS 讀/寫 Photo CD 使用 sRGB 色彩表解碼。
PCL W HP 頁面控制語言 使用 -define 指定適合頁面選項(例如 -define pcl:fit-to-page=true)。
PCX 讀/寫 ZSoft IBM PC 畫筆文件
PDB 讀/寫 Palm 數據庫 ImageViewer 格式
PDF 讀/寫 可移植文檔格式 需要使用 Ghostscript 才能閱讀。默認情況下,ImageMagick 會將頁面大小設置為 MediaBox。然而,有些 PDF 文件的 CropBox 或 TrimBox 比 MediaBox 小,並且 CropBox 或 TrimBox 外可能包含空白、註冊標記或裁切標記。若要強制 ImageMagick 使用 CropBox 或 TrimBox 而不是 MediaBox,請使用 -define(例如 -define pdf:use-cropbox=true-define pdf:use-trimbox=true)。使用 -density 可以改善 PDF 轉譯的外觀(例如 -density 300x300)。若要指定從 Postscript 直接轉換為 PDF,請使用 -define delegate:bimodel=true。使用 -define pdf:fit-page=true 可以縮放至頁面大小。若要在發生錯誤時立即停止處理,請將 -define pdf:stop-on-error 設置為 true。若要將頁面方向偏好設置為由右至左,請嘗試 -define pdf:page-direction=right-to-left。默認情況下,PDF 會使用「螢幕」來列印註解和影像。請使用 -define pdf:printed=true 來改用印表機選項。使用 -alpha remove 可以移除透明度。寫入 PDF 時,默認會包含縮圖。使用 -define pdf:thumbnail=true 可以產生縮圖。若要在轉譯時啟用插值,請使用 -define pdf:interpolate=true
PEF 讀取 Pentax 電子檔案 需要明確的影像格式,否則影像會被解釋為 TIFF 影像(例如 pef:image.pef)。
PES 讀取 Embrid 刺繡格式
PFA 讀取 Postscript Type 1 字體(ASCII) 以檔案形式開啟會返回預覽影像。
PFB 讀取 Postscript Type 1 字體(二進制) 以檔案形式開啟會返回預覽影像。
PFM 讀/寫 可攜式浮點映射格式
PGM 讀/寫 可攜式灰度圖格式(灰階)
PHM 讀/寫 可攜式浮點映射格式 16 位元半精度
PICON 讀/寫 個人圖示
PICT 讀/寫 Apple Macintosh QuickDraw/PICT 檔案
PIX 讀取 Alias/Wavefront RLE 影像格式
PNG 讀/寫 可攜式網路圖形 需要 libpng-1.0.11 或更新版本,建議使用 libpng-1.2.5 或更新版本。PNG 規範不支援每英吋像素單位,僅支援每公分像素。若要避免讀取特定的關聯影像描述檔,請使用 -define profile:skip=名稱(例如 profile:skip=ICC)。使用 -define png:chunk-malloc-max= 可以設置最大區塊大小。
PNG8 讀/寫 可攜式網路圖形 8 位元索引,可選擇二進制透明度
PNG00 讀/寫 可攜式網路圖形 如果可能,PNG 會繼承原始影像的子格式
PNG24 讀/寫 可攜式網路圖形 不透明或二進制透明 24 位元 RGB
PNG32 讀/寫 可攜式網路圖形 不透明或透明 32 位元 RGBA
PNG48 讀/寫 可攜式網路圖形 不透明或二進制透明 48 位元 RGB
PNG64 讀/寫 可攜式網路圖形 不透明或透明 64 位元 RGB
PNM 讀/寫 可攜式任意映射 PNM 是一系列支援可攜式點陣圖 (PBM)、灰度圖 (PGM) 和像素圖 (PPM) 的格式。pnm 本身沒有關聯的檔案格式。如果 PNM 被用作輸出格式說明符,則 ImageMagick 會自動選擇最適合表示影像的格式。默認情況下會寫入格式的二進制版本。使用 -compress none 可以寫入格式的 ASCII 版本。
POCKETMOD 讀/寫 Pocketmod 個人記事本格式 用法範例:magick -density 300 pages?.pdf pocketmod:organize.pdf
PPM 讀/寫 可攜式像素圖格式(彩色)
PS 讀/寫 Adobe PostScript 檔案 需要 Ghostscript 才能讀取。要強制 ImageMagick 遵循裁剪框,請使用 -define(例如 -define eps:use-cropbox=true)。使用 -density 可以改善 Postscript 轉譯的外觀(例如 -density 300x300)。使用 -alpha remove 可以移除透明度。要指定從 PDF 直接轉換為 Postscript,請使用 -define delegate:bimodel=true
PS2 讀/寫 Adobe Level II PostScript 檔案 需要 Ghostscript 才能讀取。
PS3 讀/寫 Adobe Level III PostScript 檔案 需要 Ghostscript 才能讀取。
PSB 讀/寫 Adobe 大型文件格式
PSD 讀/寫 Adobe Photoshop 多光譜點陣圖檔案 使用 -define psd:alpha-unblend=off 可以停用合併影像中的 Alpha 色板混合。使用 -define psd:additional-info=all|selective 可以將額外資訊從輸入的 PSD 檔案傳輸到輸出的 PSD 檔案。「selective」選項會保留所有與影像幾何形狀無關的額外資訊。「all」選項僅應在影像的幾何形狀未變更時使用。當要將非簡單圖層(例如調整圖層)從輸入的 PSD 檔案傳輸到輸出的 PSD 檔案時,此選項非常有用。此定義從 Imagemagick 6.9.5-8 版開始提供。使用 -define psd:preserve-opacity-mask=true 可以保留圖層的不透明遮罩,並在儲存影像時將其新增回圖層。
PTIF 讀/寫 Pyramid 編碼的 TIFF 多解析度 TIFF,包含從原始影像縮小到圖示大小的連續版本。使用 -define ptif:pyramid 可以指定金字塔的最小底數和層級,例如 64x4。
PWP 讀取 Seattle File Works 多影像檔案
QOI 讀/寫 Quite OK 影像格式 快速、無失真的影像壓縮。
RAD 讀取 Radiance 影像檔案 需要安裝 Radiance 軟體套件中的 ra_ppm
RAF 讀取 Fuji CCD-RAW 圖形檔案
RAW 讀取 原始資料
RGB 讀/寫 原始紅色、綠色和藍色樣本 使用 -size-depth 指定影像的寬度、高度和深度。如需指定單精度浮點格式,請使用 -define quantum:format=floating-point。將深度設為 32 表示單精度浮點數,設為 64 表示雙精度浮點數,設為 16 表示半精度浮點數。
RGB565 讀取 5-6-5 格式的原始紅色、綠色、藍色像素 使用 -size 可以指定影像的寬度和高度。
RGBA 讀/寫 原始紅色、綠色、藍色和 Alpha 樣本 使用 -size-depth 指定影像的寬度、高度和深度。如需指定單精度浮點格式,請使用 -define quantum:format=floating-point。將深度設為 32 表示單精度浮點數,設為 64 表示雙精度浮點數,設為 16 表示半精度浮點數。
RGF 讀/寫 LEGO Mindstorms EV3 機器人圖形檔案
RLA 讀取 Alias/Wavefront 影像檔案
RLE 讀取 Utah 遊程編碼影像檔案
SCT 讀取 Scitex 連續色調圖片
SFW 讀取 Seattle File Works 影像
SGI 讀/寫 Irix RGB 影像
SHTML W 超文字標記語言用戶端影像地圖 用於根據 montage 的輸出或支援分塊影像的格式(例如 MIFF)寫入 HTML 可點擊影像地圖。
SID, MrSID 讀取 多解析度無縫影像 需要 mrsidgeodecode 命令列工具程式,用於解壓縮 MG2 或 MG3 SID 影像檔案。
SPARSE-COLOR W 純文字檔案 -sparse-color 選項相容的格式。僅列出非完全透明的像素。
STRIMG 讀/寫 字串到影像以及反向轉換
SUN 讀/寫 SUN 光柵檔案
SVG 讀/寫 可縮放向量圖形 根據預設,如果 ImageMagick 的執行路徑中有 inkscape,則會使用它來渲染 SVG;否則會使用 RSVG。如果兩者皆不可用,ImageMagick 會改用其內部 SVG 渲染器(稱為 MSVG)。預設解析度為 96 dpi。使用 -size 命令列選項來指定最大寬度和高度。(由於 Inkscape 方面的限制,Inkscape 渲染器目前會忽略 -size)。SVG 標準預期會在透明背景上繪製。設定 -background none 以符合標準。如果您想替換實體並且信任 SVG 來源,請啟用此選項:-define svg:substitute-entities=true。如果您想渲染非常大的 SVG 並且信任來源,請啟用此選項:-define svg:parse-huge=true。如果已安裝 RSVG 且您想使用 RSVG 渲染 SVG,請在檔名前面加上 rsvg:。如果您想使用 MSVG 渲染 SVG,請在檔名前面加上 msvg:
文字 讀取 文字檔案 需要明確的格式說明符才能讀取,例如 text:README.txt。
TGA 讀/寫 Truevision Targa 影像 也稱為 ICBVDAVST 格式。使用 -define tga:preserve-orientation=true 來保留影像方向。
TIFF 讀/寫 標記影像檔案多光譜格式 也稱為 TIF。需要 tiff-v3.6.1.tar.gz 或更高版本。使用 -define 指定每條線的列數(例如 -define tiff:rows-per-strip=8)。要定義區塊幾何,請使用例如 -define tiff:tile-geometry=128x128。要指定 帶正負號 格式,請使用 -define quantum:format=signed。要指定單精度浮點數格式,請使用 -define quantum:format=floating-point。將深度設定為 64 以獲得雙精度浮點數格式。使用 -define quantum:polarity=min-is-black-define quantum:polarity=min-is-white 切換雙階影像的光度解釋。使用例如 -define tiff:alpha=unassociated 將額外樣本指定為關聯或非關聯 Alpha。使用 -define tiff:fill-order=msb|lsb 設定填充順序。使用 -define tiff:endian=msb|lsb 設定 TIFF 位元組順序。使用 -define tiff:exif-properties=false 跳過讀取 EXIF 屬性。使用 -define tiff:gps-properties=false 跳過讀取 GPS 屬性。您可以設定許多 TIFF 軟體屬性,包括文件名稱、主機電腦、藝術家、時間戳記、製造商、型號、軟體和版權。例如,-set tiff:software "My Company"。如果要忽略某些 TIFF 標籤,請使用此選項:-define tiff:ignore-tags=以逗號分隔的標籤 ID 列表。從 6.9.1-4 版本開始,支援讀取 TIFF 檔案中的 Photoshop 圖層,可以使用 -define tiff:ignore-layers=true 來停用此功能。要保留來源影像的壓縮,請使用:-define tiff:preserve-compression=true
TIM 讀取 PSX TIM 檔案
TTF 讀取 TrueType 字型檔案 需要 freetype 2。開啟為檔案會傳回預覽影像。如果您不想在將字元外框縮放到裝置像素後提示它們(例如 -set type:hinting off),請使用 -set
TXT 讀/寫 多光譜原始文字檔案 使用 -define 指定色彩一致性(例如 -define txt:compliance=css)。
UBRL W Unicode 點字 使用 8 點點字樣式的並列(因此為 8x2 點矩陣)來重現影像,使用 Unicode 點字編碼。
UBRL6 W Unicode 6 點點字 使用 6 點點字樣式的並列(因此為 6x2 點矩陣)來重現影像,使用 Unicode 點字編碼。
UHDR 讀/寫 Ultra HDR 需要 libultrahdr 委託函式庫。
UIL W X-Motif UIL 表格
UYVY 讀/寫 交錯 YUV 原始影像 使用 -size-depth 命令列選項來指定寬度和高度。使用 -sampling-factor 來設定所需的子採樣(例如 -sampling-factor 4:2:2)。
VICAR 讀/寫 VICAR 光柵檔案格式
VIDEO 讀/寫 各種影片格式,例如 APNG、AVI、MP4、WEBM 等。有關這些定義的描述,請參閱 definesvideo:intermediate-formatvideo:pixel-formatvideo:vsync 定義,它們可能會影響這些影片格式的操作。
VIFF 讀/寫 Khoros 視覺化影像檔案格式
WBMP 讀/寫 無線點陣圖 僅支援未壓縮的單色影像。
WDP 讀/寫 JPEG 擴展範圍 需要 jxrlib 代理程式庫。將 JxrDecApp 和 JxrEncApp 應用程式放在您的執行路徑中。
WEBP 讀/寫 Weppy 影像格式 需要 WEBP 代理程式庫。需要多工代理程式庫才能讀取動畫 Webp 影像容器。使用 -define 選項指定編碼選項。如需更多詳細資訊,請參閱 WebP 編碼選項
WMF 讀取 Windows 中繼檔 需要 libwmf。預設情況下,會使用中繼檔標頭中指定的尺寸來渲染 WMF 檔案。使用 -density 選項調整輸出解析度,進而調整輸出大小。預設輸出解析度為 72DPI,因此 -density 144 會產生兩倍於預設大小的影像。使用 -background color 指定 WMF 背景顏色(預設為白色),或使用 -texture filename 指定背景紋理影像。
WPG 讀取 Word Perfect 圖形檔案
X 讀/寫 從 X11 伺服器顯示或匯入影像,或將影像匯出或顯示到 X11 伺服器 使用 -define 從根視窗取得影像(例如 -define x:screen=true)。設定 x:silent=true 可在匯入影像時關閉提示音。
XBM 讀/寫 X Window 系統點陣圖,僅限黑白 由 X Window 系統用於儲存單色圖示。
XCF 讀取 GIMP 影像
XPM 讀/寫 X Window 系統像素圖 也稱為 PM。由 X Window 系統用於儲存彩色圖示。
XWD 讀/寫 X Window 系統視窗傾印 由 X Window 系統用於儲存/顯示螢幕傾印。
X3F 讀取 Sigma 相機 RAW 影像檔案
YAML W 人類可讀的資料序列化語言 使用以下定義包含有關影像的其他屬性:-define yaml:locate-define yaml:limit-define yaml:moments-define yaml:features。使用 -define yaml:version 指定 JSON 模型結構描述版本。目前版本為 1.0。
YCbCr 讀/寫 原始 Y、Cb 和 Cr 樣本 使用 -size-depth 指定影像寬度、高度和深度。
YCbCrA 讀/寫 原始 Y、Cb、Cr 和 Alpha 樣本 使用 -size-depth 指定影像寬度、高度和深度。
YUV 讀/寫 CCIR 601 4:1:1 使用 -size-depth 命令列選項來指定寬度、高度和深度。使用 -sampling-factor 來設定所需的子採樣(例如 -sampling-factor 4:2:2)。

虛擬影像格式

ImageMagick 支援許多影像格式規格,這些規格指的是透過演算法準備的影像,或輸入/輸出目標。下表列出了這些虛擬影像格式

標籤 模式 說明 備註
ASHLAR W 以連續不規則路線排列的影像序列 預設情況下,畫布大小和邊框寬度會根據您提供的影像集合自動調整為合理值。您可以透過在檔名後方附加參數來明確設定畫布大小和邊框寬度,例如 ashlar:canvas.png[1024x768+4+4]。預設情況下,對齊方式為沿著左邊緣。使用 -define ashlar:best-fit=true 可沿著左右邊緣對齊。您可以使用例如 -label %f 的方式為影像區塊加上標籤。預設情況下,所有影像區塊都會呈現在單一畫布上。例如,使用 -define ashlar:tiles=50 可讓每個畫布最多呈現 50 個區塊。
CANVAS(畫布) 讀取 指定顏色的畫布影像 可用於建立純色 畫布 影像。使用 -size-depth 指定影像寬度、高度和深度。畫布顏色規格範例包括 canvas:redcanvas:#FF0000
如果未指定顏色,則會產生「白色」畫布影像。如果未指定 -size,則會產生指定顏色的單一像素影像。
CAPTION(標題) 讀取 影像標題 使用 -define caption:split=true 可在文字需要自動換行以符合畫布時將其斷行
CLIP(剪裁) 讀/寫 影像的剪裁路徑
CLIPBOARD 讀/寫 Clipboard(剪貼簿)
FRACTAL(碎形) 讀取 電漿碎形影像
GRADIENT(漸層) 讀取 從一種陰影逐漸過渡到另一種陰影 使用指定的影像大小傳回已渲染的線性或徑向由上到下 漸層影像
HALD 讀取 身分 Hald CLUT 影像 像這樣選擇層級:hald:[8] 表示層級 8。
HISTOGRAM(直方圖) W 影像的直方圖 直方圖包含影像中唯一顏色的影像註解。如果您不需要唯一顏色清單,請使用 -define histogram:unique-colors=false 來放棄這個耗時的作業。
INLINE(內嵌) 讀/寫 Base64 編碼的內嵌影像 內嵌影像看起來類似於 inline:data:;base64,/9j/4AAQSk...knrn//2Q==。如果內嵌影像超過 5000 個字元,請從檔案中參照它(例如 inline:inline.txt)。您也可以寫入 Base64 編碼的影像。將 MIME 類型嵌入檔名中,例如 magick myimage inline:jpeg:myimage.txt
LABEL(標籤) 讀取 文字影像格式 將所需的文字指定為檔名(例如 label:"這是一個標籤")。
MAP(映射) 讀/寫 色圖強度和索引 設定 -depth 以設定強度的樣本大小;如果顏色 > 256,則索引為 16 位元。
MASK(遮罩) 讀/寫 灰階影像遮罩。如果來源影像有多個遮罩,則會發出一系列遮罩。
MATTE(消光) W MATTE 格式 僅限寫入。
NULL(空值) 讀/寫 空影像 用於使用 montage 建立空白區塊(使用 NULL:)。在評估影像讀取效能時,也可用作輸出格式。
PANGO 讀取 影像標題 您可以使用以下定義來設定標題配置:-define pango:auto-dir=true/false-define pango:ellipsize=start/middle/end-define pango:gravity-hint=natural/strong/line-define pango:hinting=none/auto/full-define pango:indent=點數-define pango:justify=true/false-define pango:language=en_US/etc-define pango:markup=true/false-define pango:single-paragraph=true/false-define pango:wrap=word/char/word-char-define pango:align=left/center/right
PLASMA(電漿) 讀取 電漿碎形影像
PREVIEW(預覽) W 顯示影像增強、效果或特效的預覽 建立在參數範圍內準備的影像預覽蒙太奇,以協助選擇參數。透過 -preview 選項指定所需的預覽類型)。
PRINT(列印) W 將影像傳送到您的電腦印表機 Linux 使用者可以設定 PRINTER(給 'lpr' 使用)或 LPDEST(給 'lp' 使用)環境變數來選擇想要的印表機。
掃描(SCAN) 讀取 從掃描器裝置導入圖像 需要 SANE。請將裝置名稱和路徑指定為檔名(例如 scan:'hpaio:/usb/Officejet_6200_series?serial=CN4ATCE3G20453')。
徑向漸變(RADIAL_GRADIENT) 讀取 從一種色調到另一種色調的漸進徑向過渡 使用指定的圖像大小,返回一個從上到下渲染的徑向 漸變圖像
掃描預設裝置(SCANX) 讀取 從預設掃描器裝置導入圖像
螢幕截圖(SCREENSHOT) 讀取 顯示電腦顯示器內容的圖像。在 Windows 下,如果您有多個顯示器,它會為每個顯示器返回一個螢幕截圖。
隱寫術圖像(STEGANO) 讀取 隱寫術圖像 使用 -size 命令列選項指定隱寫術圖像的寬度、高度和偏移量
平鋪(TILE) 讀取 平鋪圖像 通過平鋪圖像來創建圖像的平鋪版本。使用 -size 指定平鋪圖像的大小。平鋪會在圖像背景上合成,因此會響應 -compose 選項。圖像的指定方式類似於 TILE:image.miff
唯一(UNIQUE) W 僅將唯一的像素寫入圖像文件。
視覺化圖像目錄(VID) 讀/寫 視覺化圖像目錄 用於創建一組圖像的縮略圖目錄(平鋪縮略圖),這些圖像可用於通過 display 程序選擇要查看的圖像,或保存到 MIFFSHTML 文件中。
視窗(WIN) 讀/寫 從電腦螢幕選擇圖像或將圖像顯示到電腦螢幕 僅在 Microsoft Windows 下支持。
X 讀/寫 從 X 伺服器螢幕選擇圖像或將圖像顯示到 X 伺服器螢幕 另請參閱 importdisplay 程序。
畫布(XC) 讀取 指定顏色的畫布影像 'canvas:' 虛擬文件格式的向後兼容別名,用於創建純色 畫布 圖像。

內建圖像

ImageMagick 包含許多內建(嵌入式)圖像,可以像引用圖像文件一樣引用它們。magick: 格式標籤可以通過語法 magick:name 使用來請求嵌入式圖像(例如 magick:logo)。為了向後兼容,圖像規格 GRANITE:LOGO:NETSCAPE:ROSE: 也可用於請求具有這些名稱的圖像。

標籤 模式 說明 備註
花崗岩(GRANITE) 讀取 128x128 花崗岩紋理圖案 GRANITE
標誌(LOGO) 讀取 ImageMagick 標誌,640x480 Logo
網景(NETSCAPE) 讀取 使用 Netscape 216 (6x6x6) 顏色立方體中的顏色的圖像,216x144 最常與 magickmagick mogrify 程序一起使用,並使用 -map 選項創建 網頁安全 圖像。
玫瑰(ROSE) 讀取 玫瑰圖片,70x46 ROSE
巫師(WIZARD) 讀取 ImageMagick 巫師,480x640 Logo

內建圖案

ImageMagick 包含許多內建(嵌入式)圖案,可以像引用圖像文件一樣引用它們。pattern: 格式標籤可以通過語法 pattern:name 使用來請求嵌入式圖案(例如 pattern:checkerboard)。圖案大小由 -size 命令列選項控制。

標籤 模式 說明 備註
磚塊(BRICKS) 讀取 磚塊圖案,16x16 BRICKS
棋盤(CHECKERBOARD) 讀取 棋盤圖案,30x30 CHECKERBOARD
圓圈(CIRCLES) 讀取 圓圈圖案,16x16 CIRCLES
交叉影線(CROSSHATCH) 讀取 交叉影線圖案,8x4 CROSSHATCH
30 度交叉影線(CROSSHATCH30) 讀取 線條呈 30 度角的交叉影線圖案,8x4 CROSSHATCH30
45 度交叉影線(CROSSHATCH45) 讀取 線條呈 45 度角的交叉影線圖案,8x4 CROSSHATCH45
魚鱗(FISHSCALES) 讀取 魚鱗圖案,16x8 FISHSCALES
灰色 0%(GRAY0) 讀取 0% 強度的灰色,32x32 GRAY0
灰色 5%(GRAY5) 讀取 5% 強度的灰色,32x32 GRAY5
灰色 10%(GRAY10) 讀取 10% 強度的灰色,32x32 GRAY10
灰色 15%(GRAY15) 讀取 15% 強度的灰色,32x32 GRAY15
灰色 20%(GRAY20) 讀取 20% 強度灰階,32x32 GRAY20
GRAY25 讀取 25% 強度灰階,32x32 GRAY25
GRAY30 讀取 30% 強度灰階,32x32 GRAY30
GRAY35 讀取 35% 強度灰階,32x32 GRAY35
GRAY40 讀取 40% 強度灰階,32x32 GRAY40
GRAY45 讀取 45% 強度灰階,32x32 GRAY45
GRAY50 讀取 50% 強度灰階,32x32 GRAY50
GRAY55 讀取 55% 強度灰階,32x32 GRAY55
GRAY60 讀取 60% 強度灰階,32x32 GRAY60
GRAY65 讀取 65% 強度灰階,32x32 GRAY65
GRAY70 讀取 70% 強度灰階,32x32 GRAY70
GRAY75 讀取 75% 強度灰階,32x32 GRAY75
GRAY80 讀取 80% 強度灰階,32x32 GRAY80
GRAY85 讀取 85% 強度灰階,32x32 GRAY85
GRAY90 讀取 90% 強度灰階,32x32 GRAY90
GRAY95 讀取 95% 強度灰階,32x32 GRAY95
GRAY100 讀取 100% 強度灰階,32x32 GRAY100
六邊形 讀取 六邊形圖案,30x18 HEXAGONS
水平線 讀取 水平線圖案,8x4 HORIZONTAL
水平線2 讀取 水平線圖案,8x8 HORIZONTAL2
水平線3 讀取 水平線圖案,9x9 HORIZONTAL3
水平鋸齒 讀取 水平鋸齒圖案,16x8 HORIZONTALSAW
HS_BDIAGONAL 讀取 反向對角線圖案(45 度斜率),8x8 HS_BDIAGONAL
HS_CROSS 讀取 十字線圖案,8x8 HS_CROSS
HS_DIAGCROSS 讀取 對角線交叉圖案(45 度斜率),8x8 HS_DIAGCROSS
HS_FDIAGONAL 讀取 正向對角線圖案(45 度斜率),8x8 HS_FDIAGONAL
HS_HORIZONTAL 讀取 水平線圖案,8x8 HS_HORIZONTAL
HS_VERTICAL 讀取 垂直線圖案,8x8 HS_VERTICAL
LEFT30 讀取 正向對角線圖案(30 度斜率),8x4 LEFT0
LEFT45 讀取 正向對角線圖案(45 度斜率),8x8 LEFT45
LEFTSHINGLE 讀取 左側屋瓦圖案,24x24 LEFTSHINGLE
八邊形 讀取 八邊形圖案,16x16 OCTAGONS
RIGHT30 讀取 反向對角線圖案(30 度),8x4 RIGHT30
RIGHT45 讀取 反向對角線圖案(30 度),8x8 RIGHT45
RIGHTSHINGLE 讀取 右側屋瓦圖案,24x24 RIGHTSHINGLE
SMALLFISHSCALES 讀取 小魚鱗圖案,8x8 SMALLFISHSCALES
垂直線 讀取 垂直線圖案,8x8 VERTICAL
垂直線2 讀取 垂直線圖案,8x8 VERTICAL2
垂直線3 讀取 垂直線圖案,9x9 VERTICAL3
垂直磚塊 讀取 垂直磚塊圖案,16x16 VERTICALBRICKS
VERTICALLEFTSHINGLE 讀取 垂直左側屋瓦圖案,24x24 VERTICALLEFTSHINGLE
VERTICALRIGHTSHINGLE 讀取 垂直右側屋瓦圖案,24x24 VERTICALRIGHTSHINGLE
VERTICALSAW 讀取 垂直鋸齒圖案,8x16 VERTICALSAW

內嵌圖像設定檔

ImageMagick 提供了许多格式标识符,用于添加、删除和保存支持内嵌配置文件的图像的内嵌配置文件。可以包含内嵌配置文件的图像类型有 TIFF、JPEG 和 PDF。

標籤 模式 說明 備註
8BIM 讀/寫 Photoshop 资源格式(二进制)
8BIMTEXT 讀/寫 Photoshop 资源格式(ASCII) 8BIM 格式的 ASCII 表示形式。
APP1 讀/寫 原始应用程序信息
APP1JPEG 讀/寫 原始 JPEG 二进制数据 JPEG 包装器中的配置文件。
ICC 讀/寫 国际色彩联盟颜色配置文件 也称为 ICM。要读取,请在 magick 中使用 -profile 选项。
IPTC 讀/寫 IPTC 新闻图片(二进制) 要读取,请在 magick 中使用 -profile 选项
IPTCTEXT 讀/寫 IPTC 新闻图片(ASCII) IPTC 格式的 ASCII 表示形式。