分享最新优惠信息
购买主机更加划算

Linux系统中将SVG文件转换为PNG格式几种方法整理

SVG(可缩放矢量图形)文件通常用于徽标、图标和插图,因为它们可以在不损失质量的情况下调整大小。但是,有时候可能需要将SVG文件转换为PNG(便携式网络图形)格式,以便更好地兼容网站或应用程序。

在Linux操作系统中,有几种方法可以轻松完成这种转换,既可以使用命令行工具,也可以使用图形应用程序,本文简单整理一些常见的方法。

SVG转换为PNG

1、使用Inkscape

Inkscape是一个功能强大的开源矢量图形编辑器,支持SVG格式,可以轻松将SVG文件转换为PNG格式。如果系统上没有安装Inkscape ,可以根据您的Linux发行版使用以下命令进行安装:

sudo apt install inkscape [Debian、Ubuntu和Mint] 
sudo yum install inkscape [RHEL/CentOS/Fedora和Rocky/AlmaLinux] 
sudo emerge -a sys-apps/inkscape [Gentoo Linux] 
sudo apk add inkscape [Alpine Linux] 
sudo pacman -S inkscape [Arch Linux] 
sudo zypper install inkscape [OpenSUSE]     
sudo pkg install inkscape [FreeBSD]

安装后可以使用以下命令将SVG文件转换为PNG:

inkscape input.svg --export-type=png --export-filename=output.png --export-dpi=300

2、使用ImageMagick

ImageMagick是一个多功能工具,可以从命令行在不同格式之间转换图像,包括将SVG转换为PNG 。如果系统上没有安装ImageMagick,则可以根据Linux发行版使用以下命令进行安装:

sudo apt install imagemagick [Debian、Ubuntu和Mint] 
sudo yum install ImageMagick [RHEL/CentOS/Fedora和Rocky/AlmaLinux] 
sudo emerge -a sys-apps/imagemagick [Gentoo Linux] 
sudo apk add imagemagick [Alpine Linux] 
sudo pacman -S imagemagick [Arch Linux] 
sudo zypper install imagemagick [OpenSUSE]     
sudo pkg install imagemagick [FreeBSD]

安装ImageMagick之后,可以通过运行以下命令将SVG文件转换为PNG:

convert input.svg output.png

如果想为输出PNG文件设置自定义分辨率,请使用-density选项:

convert -density 300 input.svg output.png

3、使用rsvg-convert(librsvg的一部分

rsvg-convert是一个命令行工具,是librsvg包的一部分,它是轻量级的,专为转换SVG文件而设计。如果系统上未安装rsvg-convert:,可以根据Linux发行版使用以下命令进行安装:

sudo apt install librsvg2-bin [Debian、Ubuntu和Mint] 
sudo yum install librsvg2-tools [RHEL/CentOS/Fedora和Rocky/AlmaLinux] 
sudo emerge -a gnome-base/librsvg [Gentoo Linux] 
sudo apk add librsvg [Alpine Linux] 
sudo pacman -S librsvg [Arch Linux] 
sudo zypper install librsvg2-tools [OpenSUSE]     
sudo pkg install librsvg2 [FreeBSD]

一旦安装了rsvg-convert,可以通过运行以下命令将SVG文件转换为PNG:

rsvg-convert -o output.png input.svg

可以使用-w(width)或-h(height)指定输出图像的宽度或高度:

rsvg-convert -w 800 -h 600 -o output.png input.svg

4、SVG到PNG的批量转换

如果你有多个SVG文件并想一次将它们全部转换为PNG,则可以使用简单的shell循环。

使用Inkscape:

for file in *.svg; do
  inkscape "$file" --export-type=png --export-filename="${file%.svg}.png"
done

使用ImageMagick:

for file in *.svg; do
  convert "$file" "${file%.svg}.png"
done

此循环将把当前目录中的所有.svg转换为.png格式。

小结

在Linux中将SVG转换为PNG是一项简单的任务,可以使用各种工具完成。无论喜欢Inkscape之类的图形工具、 ImageMagick的灵活性,还是rsvg-convert之类的快速命令行工具,Linux都提供了几种简单的方法来实现此转换,有需要的小伙伴可以试试这些方法。

未经允许不得转载:惠主机 » Linux系统中将SVG文件转换为PNG格式几种方法整理