在 Linux 中使用ImageMagick命令列操作影像檔案
ImageMagick 可以安裝在 、Mac OS X、Windows系統中。下載連結為:
http://www.imagemagick.org/script/download.php
下面在Centos8中安裝ImageMagick:
[root@localhost ~]# wget https://download.imagemagick.org/ImageMagick/download/linux/CentOS/x86_64/ImageMagick-7.1.0-17.x86_64.rpm [root@localhost ~]# wget https://download.imagemagick.org/ImageMagick/download/linux/CentOS/x86_64/ImageMagick-libs-7.1.0-17.x86_64.rpm
下載到本地之後,使用yum命令安裝這兩個包:
[root@localhost ~]# yum localinstall ImageMagick-*
使用 convert 命令將影像從一種格式轉換為另一種格式非常容易。可以使用下面命令來轉換:
[root@localhost data]# convert penguins.jpg penguins.png
penguins.png 影像應該與原始 penguins.jpg 檔案看起來相同,但該檔案將具有指定的副檔名並且大小不同。convert 命令將使用你提供的檔名來確定最終想要的檔案型別並相應地修改影像。
如果懷疑轉換是否有問題,你可以隨時使用
od
命令檢查每個檔案的開頭。
[root@localhost data]# od -bc penguins.jpg |head -6 0000000 377 330 377 340 000 020 112 106 111 106 000 001 001 000 000 001 377 330 377 340 \0 020 J F I F \0 001 001 \0 \0 001 0000020 000 001 000 000 377 333 000 103 000 002 001 001 001 001 001 002 \0 001 \0 \0 377 333 \0 C \0 002 001 001 001 001 001 002 0000040 001 001 001 002 002 002 002 002 004 003 002 002 002 002 005 004 001 001 001 002 002 002 002 002 004 003 002 002 002 002 005 004 [root@localhost data]# [root@localhost data]# [root@localhost data]# od -bc penguins.png |head -6 0000000 211 120 116 107 015 012 032 012 000 000 000 015 111 110 104 122 211 P N G \r \n 032 \n \0 \0 \0 \r I H D R 0000020 000 000 001 016 000 000 000 375 010 002 000 000 000 302 242 016 \0 \0 001 016 \0 \0 \0 375 \b 002 \0 \0 \0 302 242 016 0000040 361 000 000 000 004 147 101 115 101 000 000 261 217 013 374 141 361 \0 \0 \0 004 g A M A \0 \0 261 217 \v 374 a
第一個檔案中顯示的“JFIF”字串和另一個檔案中顯示的“PNG”驗證操作是否按指示執行。這些是用於識別這兩種檔案格式的內部程式碼。
如果您想使用 convert 命令從數百個 .png 檔案生成數百個 .jpg 檔案,可以使用下面的 。根據要轉換的檔案數量,完成任務可能只需要幾秒鐘或幾分鐘的時間。
[root@localhost test]# vim batch_convert.sh #!/bin/bash for file in `ls *.jpg` do newfile=`echo $file | sed 's/jpg/png/'` convert $file $newfile done
轉換之前,下面的照片格式是jpg:
下面執行該
來修改圖片格式:
[root@localhost test]# ./batch_convert.sh
要旋轉檔案,需要在convert命令中輸入要旋轉多少度。下面兩個命令中的第一個將按順時針方向將影像旋轉 45 度。第二個使用 -flip 選項將其垂直翻轉。
[root@localhost data]# convert penguins.jpg -rotate 45 penguins_45.png [root@localhost data]# convert penguins.jpg -flip penguins_flip.png
垂直旋轉和180度旋轉是不一樣的,可以看下圖:
在此命令中,我們將兩個影像附加在一起以形成單個影像。
[root@localhost data]# convert penguins.jpg penguins_flip.png -append append_pengius.png
使用
-append
選項,將兩個圖片上下合併。如果使用
+append
選項,將兩個圖片左右合併:
[root@localhost data]# convert penguins.jpg penguins_flip.png +append append+pengius.png
可以使用
-resize
來調整比例,下面兩條命令是將圖片縮小65%,和放大到150%。
[root@localhost data]# convert penguins.jpg -resize 65% pen_65.jpg [root@localhost data]# convert penguins.jpg -resize 150% pen_150.jpg
使用 convert 命令,可以無需開啟影像編輯器進行修改影像檔案。convert命令包含在ImageMagick安裝包裡。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69901823/viewspace-2848977/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 在 Linux 命令列中使用 ls 列出檔案的技巧Linux命令列
- Linux檔案操作高頻使用命令Linux
- Linux常用檔案操作命令Linux
- 在Linux中,如何使用logrotate命令管理日誌檔案?Linuxlogrotate
- 在Linux命令列檢視影像的方法Linux命令列
- Linux常用命令:檔案操作命令Linux
- 在Linux中,如何使用grep命令查詢檔案中的內容?Linux
- Linux常用的文字檔案操作命令Linux
- 使用 Calcurse 在 Linux 命令列中組織任務Linux命令列
- 使用 xclip 在 Linux 命令列中複製貼上Linux命令列
- 在Linux上實現將檔案隱藏到影像中Linux
- Bash 單命令列解釋(1)--檔案操作命令列
- 在 Linux 命令列下使用“原力”Linux命令列
- Linux 命令列刪除指定副檔名檔案Linux命令列
- 如何使用Tar命令在Linux系統中解壓各種檔案格式Linux
- 使用 split 命令分割 Linux 檔案Linux
- Halcon影像和檔案操作
- 在 Linux 命令列中使用 tcpdump 抓包Linux命令列TCP
- 在Linux中,如何進行備份或歸檔檔案(tar 命令)?Linux
- 快速上手Linux核心命令(三):檔案和目錄操作命令Linux
- 在 Linux 命令列中轉換大小寫Linux命令列
- linux 檔案操作Linux
- linux伺服器目錄檔案的命令操作Linux伺服器
- 在 Linux中find命令使用技巧Linux
- 如何在 Linux 命令列操作 PDFLinux命令列
- linux 下MySQL命令列匯出csv檔案格式LinuxMySql命令列
- Windows Server 使用ICACLS在命令列給檔案賦予許可權WindowsServer命令列
- python 在命令列中選擇檔案路徑的互動程式Python命令列
- PHP怎麼使用命令列生成檔案?PHP命令列
- 4、Linux入門學習筆記 檔案操作命令Linux筆記
- 如何使用 Find 和 Locate 在 Linux 中搜尋檔案Linux
- 命令列中的常用操作命令列
- Linux檔案IO操作Linux
- 在 Linux 命令列中使用 nudoku 解決謎題Linux命令列
- 命令列生成jar檔案命令列JAR
- 在 Linux 中如何從命令列查詢 VirtualBox 版本Linux命令列
- 在 Linux 中如何移動檔案Linux
- Linux----12 檔案與檔案操作Linux