在 Ubuntu 上使用命令行將 PNG 轉換為 JPEG,將 JPEG 轉換為 PNG

在 Linux 中,我們可以使用一些命令行工具將圖像文件格式從 PNG 轉換為 JPG 以及從 JPG 轉換為 PNG。 這將有助於壓縮圖像大小並更快地加載圖像。

有不同的命令行工具可用於此類目的。 其中一些工具是 Convert,它是 ImageMagick 工具的成員。 Mogrify 命令也可用於轉換此類圖像格式。

首先,使用以下命令安裝所需的包:

                      $ sudo apt install imagemagick
                    

在這裡,我們將使用命令行轉換工具。 轉換命令的基本語法如下:

                      $ convert [input-option] input-file [output-option] output-file
                    

下面討論將 PNG 轉換為 JPG 和將 JPG 轉換為 PNG 的不同方法:

如何使用“ls”和“xargs”命令將 PNG 轉換為 JPG

這裡的“ls”命令將列出所有 jpg 圖像,xargs 幫助構建和執行轉換命令。

將 JPG 轉換為 PNG

                      $ ls -1 *.jpg | xargs -n 1 bash -c 'convert "$0" "${0%.jpg}.png"'
                    

將 PNG 轉換為 JPG

                      $ ls -1 *.png | xargs -n 1 bash -c 'convert "$0" "${0%.png}.jpg"'
                    

這裡,

-1 = 此標誌通知“ls”每行列出 1 個圖像

-n = 用於指定參數的最大數量。 這裡使用 1。

-c = 告訴 bash 運行給定的命令。

${0%.jpg}.png = 用於設置新轉換圖像的名稱,% 符號用於刪除舊文件擴展名。

您可能會注意到,我們已經使用上述命令成功地將 png 格式轉換為 jpg 格式。 您還可以使用上述命令將 jpg 轉換為 png。

如何使用 Shell 腳本將 PNG 轉換為 JPG

我們將編寫一個小腳本來將 png 更改為 jpg,反之亦然。 這樣的腳本看起來會更清晰。 例如:

                      #!/bin/bash

for image in *.png; do

convert "$image" "${image%.png}.jpg"

echo "image $image converted to ${image%.png}.jpg"

done

exit 0
                    

現在將其保存為 test.sh 並運行如下命令使其可執行。 現在轉到保存圖像的目錄並運行腳本。

您還可以將 jpg 轉換為 png,只需在上面的腳本中稍作改動即可。

                      $ sudo chmod +x test.sh
                    
                      $ ./test.sh
                    

您可能會注意到,我們已經使用上述命令成功地將 png 格式轉換為 jpg 格式。 您還可以通過交換 .png 和 .jpg 擴展名將 jpg 轉換為 png。

如何通過減小圖像大小將 JPG 轉換為 PNG

要通過減小圖像大小將圖像格式從 jpg 轉換為 png,請運行以下命令。

例如:

                      $ convert test.jpg -resize 40% test.png
                    

在這裡,您可能會注意到我們已將 jpg 轉換為 png 並縮小了圖像尺寸。

結論:

在本文中,我們學習瞭如何使用有用的命令行工具(例如命令行轉換工具)將圖像擴展名從 png 轉換為 jpg,反之亦然。 謝謝!

相關文章