Как конвертировать SVG в BMP? - PullRequest
       84

Как конвертировать SVG в BMP?

0 голосов
/ 30 октября 2019

На этот вопрос можно было ответить на нескольких сайтах. Однако у меня возникают проблемы с его корректной работой.

Моя цель - преобразовать файл SVG в BMP с помощью командной строки. Ниже приводится содержание простого файла SVG. Обратите внимание, что разрешение должно быть 912x1140px. Таким образом, результирующий файл BMP должен иметь размер 912x1140px, как определено в SVG.

<?xml version="1.0" encoding="utf-8" ?>
<svg baseProfile="full" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:xlink="http://www.w3.org/1999/xlink" width="912px" height="1140px" preserveAspectRatio="none" viewBox="0,0,9.855,6.1614"><defs />
<rect fill="#FFF" height="100%" width="100%" x="0" y="0" />
<rect x="4" y="2.5" width="1.0" height="1.0" fill="#000" />
</svg>

Когда я использую GIMP с использованием графического интерфейса пользователя, результирующий файл BMP является правильным, как и ожидалось, с размером 912x1140px. Размер файла ~ 3,96 МБ. Однако я должен использовать графический интерфейс, чтобы открыть файл SVG и вручную преобразовать его в BMP. Я предпочитаю использовать командную строку, потому что у меня есть пакет SVG-файлов, которые я хочу преобразовать.

Когда я использую ImageMagick для преобразования, результирующий файл BMP изменяется до 855x1069px вместо того, чтобы оставаться в 912x1140px. Результирующий файл BMP ~ 3.48MB: convert myfile.svg myfile.bmp

Когда я использую rsvg-convert, результирующий файл BMP имеет правильный размер 912x1140, но его размер составляет около 7KB. Я не уверен, что rsvg-convert даже поддерживает формат BMP, потому что согласно docs , BMP не указан в качестве формата поддержки. Таким образом, это приводит меня к вопросу, является ли конвертированный файл BMP даже правильным. rsvg-convert -o myfile.bmp myfile.svg

Когда я использую командную строку Inkscape, результирующий файл BMP имеет правильное разрешение 912x1140, но размер составляет около 6,51 КБ. Я не уверен, что это правильно, так как файл BMP, созданный с использованием GIMP, приводит к размеру файла 3,96 МБ. Во-вторых, в графическом интерфейсе Inkscape нет параметров для экспорта в BMP. Кроме того, по умолчанию используется 32 бита. Я хочу, чтобы он был 24-битной глубиной. inkscape -z myfile.svg -e myfile.bmp

...