Файлы SVG (Scalable Vector Graphics) обычно используются для логотипов, иконок и иллюстраций, поскольку их размер можно изменять без потери качества.
Однако иногда необходимо преобразовать файлы SVG в формат PNG для лучшей совместимости с веб-сайтами или приложениями.
В Linux есть несколько способов легко выполнить это преобразование, используя как инструменты командной строки, так и графические приложения.
1. Использование Inkscape
Inkscape – это мощный редактор векторной графики с открытым исходным кодом, который поддерживает формат SVG и может быть легко использован для преобразования файлов SVG в формат PNG.
Если Inkscape не установлен в вашей системе, вы можете установить его с помощью следующих команд в зависимости от дистрибутива Linux:
sudo apt install inkscape [On Debian, Ubuntu and Mint] sudo yum install inkscape [On RHEL/CentOS/Fedora and Rocky/AlmaLinux] sudo emerge -a sys-apps/inkscape [On Gentoo Linux] sudo apk add inkscape [On Alpine Linux] sudo pacman -S inkscape [On Arch Linux] sudo zypper install inkscape [On OpenSUSE] sudo pkg install inkscape [On 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 [On Debian, Ubuntu and Mint] sudo yum install ImageMagick [On RHEL/CentOS/Fedora and Rocky/AlmaLinux] sudo emerge -a sys-apps/imagemagick [On Gentoo Linux] sudo apk add imagemagick [On Alpine Linux] sudo pacman -S imagemagick [On Arch Linux] sudo zypper install imagemagick [On OpenSUSE] sudo pkg install imagemagick [On 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 [On Debian, Ubuntu and Mint] sudo yum install librsvg2-tools [On RHEL/CentOS/Fedora and Rocky/AlmaLinux] sudo emerge -a gnome-base/librsvg [On Gentoo Linux] sudo apk add librsvg [On Alpine Linux] sudo pacman -S librsvg [On Arch Linux] sudo zypper install librsvg2-tools [On OpenSUSE] sudo pkg install librsvg2 [On FreeBSD]
После установки rsvg-convert вы можете конвертировать SVG-файл в PNG, выполнив следующую команду:
rsvg-convert -o output.png input.svg
Вы можете указать ширину или высоту выходного изображения, используя -w
(ширина) или -h
(высота):
rsvg-convert -w 800 -h 600 -o output.png input.svg
4. Пакетное преобразование SVG в PNG
Если у вас есть несколько SVG-файлов и вы хотите конвертировать их все в PNG одновременно, вы можете использовать простой цикл оболочки.
Использование 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
.
Заключение
Преобразование SVG в PNG в Linux – это простая задача, которую можно решить с помощью различных инструментов. Независимо от того, предпочитаете ли вы графический инструмент, такой как Inkscape, гибкость ImageMagick или быстрый инструмент командной строки, такой как rsvg-convert, Linux предоставляет несколько простых методов для этого преобразования.
Комментарии (0)