本指南將向您展示如何使用Linux 命令行處理圖像。
您將了解如何根據文件大小和比例調整圖像大小。 您還將學習如何在多種文件類型之間進行轉換,例如從JPG到PNG或GIF到TIF 。
轉換命令
convert命令用於轉換圖像。 格式如下:
轉換[輸入選項]輸入文件[輸出選項]輸出文件。
如何調整圖像大小
如果您打算在網頁上添加圖片,並且希望圖片具有特定尺寸,那麼您可以使用一些CSS來調整圖片的大小。
實際上,盡可能將圖片作為正確尺寸上傳並將其插入到頁面中。
這當然只是一個例子,您可能想要調整圖像大小 。
要調整圖像大小,請使用以下命令
convert imagename.jpg -resize dimensions newimagename.jpg
例如,要將圖像轉換為800x600,您可以使用以下命令:
convert imagename.jpg -resize 800x600 newimagename.jpg
如果通過轉換為指定的尺寸,高寬比將會變差,圖像將被調整為最接近的比例。
要強制轉換為確切的大小,請使用以下命令:
convert imagename.jpg -resize 800x600! newimagename.jpg
您不必將高度和寬度指定為resize命令的一部分。
例如,如果您希望寬度為800,並且您不關心高度,則可以使用以下命令:
convert imagename.jpg -resize 800 newimagename.jpg
要將圖像調整為指定高度,請使用以下命令:
轉換imagename,jpg -resize x600 newimagename.jpg
如何從一種圖像格式轉換為另一種
如果你有一個JPG文件,並且你想把它轉換成PNG格式,那麼你可以使用下面的命令:
轉換image.jpg image.png
您可以組合許多不同的文件格式。 例如
轉換image.png image.gif
轉換image.jpg image.bmp
轉換image.gif image.tif
如何調整圖像的文件大小
有許多方法可以更改圖像的物理文件大小。
- 改變寬高比(使其更小)
- 更改文件格式
- 更改壓縮質量
縮小圖像的大小會使文件變小。 另外,使用包含壓縮格式(如JPG)的文件格式可以減少物理文件的大小。
最後調整質量將使物理文件的大小更小。
前兩節介紹瞭如何調整大小和文件類型。 要壓縮圖像,請嘗試以下命令:
convert imagename.jpg - quality 90 newimage.jpg
質量指定為百分比。 輸出文件越小,百分比越小,但最終的輸出質量顯然不是那麼好。
如何旋轉圖像
如果您以縱向拍攝了照片,但您希望將其作為橫向圖像,則可以使用以下命令旋轉圖像:
convert imagename.jpg -rotate 90 newimage.jpg
您可以指定任何角度進行旋轉。
例如,試試這個:
convert imagename.jpg -rotate 45 newimage.jpg
轉換命令行選項
有幾十個命令行選項可用於convert命令,如下所示:
選項按命令行順序處理。 您在命令行上指定的任何選項對於後面的一組圖像保持有效,直到該組由任何選項或-noop的出現終止。 一些選項僅影響圖像的解碼,而其他選項僅影響編碼。 後者可以出現在最後一組輸入圖像之後。
有關每個選項的更詳細說明,請參閱ImageMagick 。
-毗 | 將圖像合併到單個多圖像文件中 |
-affine | 繪製變換矩陣 |
-antialias | 消除像素混疊 |
-附加 | 追加一組圖像 |
-平均 | 平均一組圖像 |
-背景 | 背景顏色 |
-blur x | 用高斯算子模糊圖像 |
- 邊界 x | 用顏色邊框圍繞圖像 |
-邊框顏色 | 邊框顏色 |
-框 | 設置註記邊界框的顏色 |
-cache | 兆像素的內存可用於像素緩存 |
-渠道 | 頻道的類型 |
-木炭 | 模擬木炭圖紙 |
-chop x {+ - } {+ - } {%} | 從圖像內部刪除像素 |
-夾 | 應用裁剪路徑,如果有的話 |
-合併 | 合併一系列圖像 |
-colorize | 用筆的顏色著色圖像 |
-colors | 圖像中顏色的首選數量 |
-色彩空間 | 色彩空間的類型 |
-評論 | 用註釋標註圖像 |
-撰寫 | 圖像組成的類型 |
-壓縮 | 圖像壓縮的類型 |
-對比 | 增強或減少圖像對比度 |
-crop x {+ - } {+ - } {%} | 裁剪圖像的首選大小和位置 |
-週期 | 以數量替代圖像顏色映射 |
-debug | 啟用調試打印輸出 |
-deconstruct | 將圖像序列分解為組成部分 |
- 延遲 <1/100秒 | 暫停後顯示下一張圖像 |
密度 x | 圖像像素的垂直和水平分辨率 |
-深度 | 圖像的深度 |
-despeckle | 減少圖像中的斑點 |
-顯示 | 指定要聯繫的X服務器 |
-dispose | GIF處理方法 |
-dither | 將Floyd / Steinberg誤差擴散應用於圖像 |
-畫 | 使用一個或多個圖形基元對圖像進行註釋 |
-邊緣 | 檢測圖像中的邊緣 |
-emboss | 壓印圖像 |
-encoding | 指定字體編碼 |
-endian | 指定輸出圖像的字節順序(MSB或LSB) |
-提高 | 應用數字濾鏡來增強嘈雜的圖像 |
-equalize | 對圖像執行直方圖均衡 |
-填 | 填充圖形圖元時使用的顏色 |
-過濾 | 調整圖像大小時使用此類過濾器 |
-flatten | 壓扁一系列圖像 |
-flip | 創建一個“鏡像” |
-flop | 創建一個“鏡像” |
-font | 使用文本註釋圖像時使用此字體 |
-frame x ++ | 用裝飾性邊框圍繞圖像 |
-fuzz {%} | 這個距離內的顏色被認為是相等的 |
-gamma | 伽馬校正水平 |
-gaussian x | 用高斯算子模糊圖像 |
-geometry x {+ - } {+ - } {%} {@} {!} {<} {>} | 圖像窗口的首選大小和位置。 |
-重力 | 當註釋圖像時,方向原始傾向於。 |
-幫幫我 | 打印使用說明 |
-implode | 內爆關於中心的圖像像素 |
-意圖 | 在管理圖像顏色時使用這種類型的渲染意圖 |
-交錯 | 交錯方案的類型 |
-標籤 | 為圖像分配一個標籤 |
-水平 | 調整圖像對比度的水平 |
-list | 列表的類型 |
-循環 | 將Netscape循環擴展添加到您的GIF動畫中 |
-地圖 | 從這個圖像中選擇一組特定的顏色 |
-面具 | 指定剪貼蒙版 |
-matte | 如果圖像有一個,則存儲遮罩通道 |
-median | 對圖像應用中值濾鏡 |
-調製 | 改變圖像的亮度,飽和度和色調 |
-單色 | 將圖像轉換為黑白圖像 |
-變形 | 變形圖像序列 |
-鑲嵌 | 從圖像序列創建一個馬賽克 |
-否定 | 用互補色替換每個像素 |
-噪聲 | 添加或減少圖像中的噪點 |
-noop | NOOP(無選項) |
-normalize | 轉換圖像以跨越全部顏色值 |
-不透明 | 將此顏色更改為圖像中的筆顏色 |
-page x {+ - } {+ - } {%} {!} {<} {>} | 圖像畫布的大小和位置 |
-塗料 | 模擬油畫 |
-鋼筆 | 指定繪圖操作的筆顏色 |
性平 | 有效地確定圖像特徵 |
-pointsize | Postscript,OPTION1或TrueType字體的分值 |
-預習 | 圖像預覽類型 |
-處理 | 處理一系列圖像 |
-profile | 添加ICM,IPTC或通用配置文件到圖像 |
-質量 | JPEG / MIFF / PNG壓縮級別 |
- 升級 x | 使圖像邊緣變亮或變暗 |
- 區域x {+ - } {+ - } | 將選項應用於圖像的一部分 |
-resize x {%} {@} {!} {<} {>} | 調整圖像大小 |
-roll {+ - } {+ - } | 垂直或水平滾動圖像 |
-rotate {<} {>} | 將Paeth圖像旋轉應用於圖像 |
-樣品 | 使用像素採樣縮放圖像 |
-sampling_factor x | JPEG或MPEG-2編碼器和YUV解碼器/編碼器使用的採樣因子。 |
-規模 | 縮放圖像。 |
-現場 | 設置場景編號 |
-種子 | 偽隨機數發生器種子值 |
- 段 x | 分割圖像 |
-shade x | 使用遠處的光源遮擋圖像 |
-sharpen x | 銳化圖像 |
- x | 刮去圖像邊緣的像素 |
- 剪切 x | 沿X或Y軸剪切圖像 |
-size x {+ offset} | 圖像的寬度和高度 |
-solarize | 否定高於閾值水平的所有像素 |
-傳播 | 以隨機數量移動圖像像素 |
-行程 | 撫摸圖形圖元時使用的顏色 |
-strokewidth | 設置筆劃寬度 |
-漩渦 | 圍繞中心旋轉圖像像素 |
-質地 | 貼圖到圖像背景上的紋理名稱 |
-閾 | 閾值的形象 |
-瓦 | 填充圖形圖元時的平鋪圖像 |
-轉變 | 轉換圖像 |
-透明 | 在圖像中使該顏色透明 |
-treedepth | 用於顏色縮減算法的樹深度 |
-修剪 | 修剪圖像 |
-類型 | 圖像類型 |
-單位 | 圖像分辨率的類型 |
-unsharp x | 使用不清晰的蒙版運算符銳化圖像 |
-use_pixmap | 使用像素圖 |
-verbose | 打印有關圖像的詳細信息 |
-視圖 | FlashPix查看參數 |
-wave x | 沿著正弦波改變圖像 |
-寫 | 寫一個圖像序列[ convert,composite ] |
有關更多信息,請閱讀convert命令的手冊頁。