Как перевести SVG в PNG
SVG — это текстовое описание фигур, которое браузер каждый раз рисует заново под нужный размер. PNG — готовая сетка пикселей, увеличить её без потери резкости уже нельзя. Поэтому вопрос «какой размер» решается ДО конвертации, а не после: наш инструмент растеризует вектор в его собственном размере, а поле ограничения длинной стороны умеет только уменьшать. Хотите PNG шириной 2000 пикселей — впишите эти размеры в сам SVG.
Коротко о цифрах
- В каком размере рисуется растр
- в собственном размере, заданном в SVG
- Ограничение длинной стороны
- 4096, 2048 или 1024 — только уменьшение
- Файл без width и height
- может не открыться, имя попадёт в отчёт
- Прозрачность
- сохраняется в PNG, заливается белым в JPEG
- Что уходит в перекодировку
- один файл, без внешних стилей и картинок
Как задать размер до перевода
- Откройте .svg любым текстовым редактором: внутри обычный размеченный текст, а не двоичные данные.
- Найдите в первой строке тега svg атрибуты width и height.
- Поставьте нужные числа в пикселях, сохранив пропорции исходного viewBox, иначе рисунок растянется.
- Если атрибутов нет вовсе, добавьте их: файлу без собственного размера декодеру нечего измерять, и он может отказаться его открывать.
- Сохраните файл и загрузите его в конвертер изображений, выбрав формат PNG.
Что теряется при растеризации
- Масштабируемость. После перевода фигуры превращаются в пиксели, и увеличить логотип для баннера уже не выйдет — понадобится исходный вектор.
- Шрифты. Если в SVG текст оставлен текстом и шрифт задан по имени, рисоваться будет то, что найдётся в системе. Надёжнее заранее перевести надписи в кривые.
- Внешние ссылки. Картинки и стили, подключённые по адресу, в перекодировку не приезжают: на конвертацию уходит один файл.
- Редкие возможности. Фильтры, маски и сложные эффекты браузеры рисуют не одинаково, поэтому результат стоит просмотреть, а не принимать вслепую.
Какой формат выбрать на выходе
PNG — обычный выбор для логотипов и иконок: он без потерь и сохраняет прозрачный фон, который у векторных рисунков есть почти всегда. Ползунок качества при этом скрывается, потому что для формата без потерь он не значит ничего.
JPEG для векторной графики подходит плохо. Во-первых, прозрачность зальётся белым — инструмент назовёт такие файлы по именам. Во-вторых, у SVG сплошь резкие границы и плоские заливки, а это худший материал для сжатия с потерями: вокруг линий появится сероватая кайма.
Частые вопросы
Как получить PNG большого размера из маленького SVG?
Пропишите нужные width и height прямо в файле и повторите конвертацию. Инструмент растеризует вектор в его собственном размере и никогда не увеличивает картинку: дорисовать несуществующие детали невозможно, а вес за них платился бы настоящий.
Почему конвертер не открыл мой SVG?
Чаще всего у файла нет собственных размеров, и декодеру нечего измерять. Добавьте атрибуты width и height в корневой тег и попробуйте снова. Имя непрочитанного файла инструмент всегда называет в сообщении.
Текст в рисунке отобразился другим шрифтом. Почему?
Потому что SVG хранит только имя шрифта, а сам шрифт лежит в системе. Если нужного начертания нет, подставляется похожее. Переведите надписи в кривые в векторном редакторе до конвертации.
Можно ли из SVG сразу получить PDF?
Напрямую нет, но путь короткий: переведите вектор в PNG нужного размера, а затем соберите документ из картинок. Учтите, что в PDF попадёт уже растровое изображение с фиксированным разрешением.