如何使用Linux轉換圖像

本指南將向您展示如何使用Linux 命令行處理圖像。

您將了解如何根據文件大小和比例調整圖像大小。 您還將學習如何在多種文件類型之間進行轉換,例如從JPGPNGGIFTIF

轉換命令

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

如何調整圖像的文件大小

有許多方法可以更改圖像的物理文件大小。

  1. 改變寬高比(使其更小)
  2. 更改文件格式
  3. 更改壓縮質量

縮小圖像的大小會使文件變小。 另外,使用包含壓縮格式(如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命令的手冊頁。