Об этом инструменте
SVG (масштабируемая векторная графика) описывает изображения как набор геометрических примитивов — путей, фигур, текста, градиентов — которые масштабируются до любого размера без потери качества. PNG хранит одну прямоугольную пиксельную сетку с фиксированным разрешением. Преобразование SVG в PNG — это этап растеризации: инструкции рисования SVG оцениваются для выбранного размера пикселя, а полученное растровое изображение кодируется как PNG. Результат выглядит четким при указанном вами размере, но при увеличении становится пиксельным.
Этот конвертер визуализирует SVG, используя встроенный в браузер механизм SVG. SVG загружается в элемент Image, рисуется на холсте HTML5 с выбранными выходными размерами и экспортируется в формате PNG через Canvas.toBlob. Поскольку растеризацию выполняет браузер, сложные функции SVG — градиенты, фильтры, маски, анимация в виде статического кадра — отображаются так же, как на реальной веб-странице.
Самым важным решением при преобразовании SVG в PNG является целевой размер. SVG не зависит от разрешения, поэтому выбор размера PNG, соответствующего фактическому использованию, позволяет избежать избыточной подготовки (огромные файлы для значков размером с миниатюру) и недостаточной подготовки (размытый вывод при дальнейшем масштабировании). Общие целевые значения: 32×32 или 64×64 для значков, 256×256 или 512×512 для логотипов, 1024×1024 для основной графики, 2048×2048 для ресурсов Retina-качества.
Зачем конвертировать SVG в PNG
SVG прекрасно подходит для Интернета и современных инструментов дизайна, но ужасен для многих других контекстов. Почтовые клиенты отображают SVG непоследовательно; некоторые блокируют его как угрозу безопасности. Старое офисное программное обеспечение, некоторые CMS, сторонние сервисы и почти все конвейеры фотопечати вообще не поддерживают SVG. Преобразование в PNG создает общепринятый растр, который выглядит одинаково в выбранном размере.
PNG также надежно встраивается в офисные документы, слайды и PDF-файлы независимо от средства визуализации SVG получателя. Для логотипов и графики, которые должны одинаково отображаться на многих платформах, PNG является более безопасным выбором, даже несмотря на то, что он теряет независимость от разрешения, которая в первую очередь делает SVG привлекательным.
Как использовать
Выберите целевой размер, выполните рендеринг. Браузер выполняет растеризацию.
- Загрузите SVG-файл: Перетащите SVG в область загрузки или щелкните, чтобы просмотреть. Поддерживаются файлы размером до 50 МБ, хотя типичные файлы SVG имеют размер менее 1 МБ. Лучше всего работают автономные SVG; SVG, которые ссылаются на внешние изображения через xlink:href на удаленные URL-адреса, могут отображаться неполными.
- Выберите выходной размер: По умолчанию используются собственные размеры viewBox SVG, но вы можете переопределить их на любой размер в пикселях. Выберите размер, который соответствует вашему фактическому использованию — избегайте создания PNG-файлов 4K для значков, которые будут отображаться с разрешением 32×32.
- Рендеринг: Браузер анализирует SVG, рисует его на холсте требуемых размеров и экспортирует холст в формате PNG. Сложные SVG с фильтрами или большим количеством путей могут занять некоторое время; простые значки отображаются мгновенно.
- Загрузите PNG: Сохраните файл. Прозрачность в SVG (все, что находится за пределами нарисованных фигур) сохраняется как альфа-канал в PNG.
Общие случаи использования
Технические детали
SVG (рекомендация W3C) — это векторный формат на основе XML с элементами для контуров, основных фигур (прямоугольник, круг, эллипс, линия, многоугольник, полилиния), текста, градиентов (linearGradient, радиальный градиент), фильтров, масок и контуров обрезки. Браузер анализирует XML, создает DOM, применяет CSS и растрирует результат во время рендеринга страницы.
Этот преобразователь загружает SVG в HTMLImageElement (который запускает обычный путь рендеринга SVG как изображения в браузере), а затем рисует его на холсте с помощью drawImage. Холст экспортируется в формате PNG с помощью Canvas.toBlob('image/png'). Точные пиксели на выходе соответствуют тому, что SVG будет отображать в том же размере на вкладке браузера.
Крайние случаи: SVG с использованием ForeignObject не всегда поддерживается при использовании через элемент Image. SVG, ссылающийся на внешние ресурсы (xlink:href на другой домен), может не загружаться из-за CORS. Анимации SMIL и анимации на основе JavaScript отображаются только как начальный кадр.
Часто задаваемые вопросы
- Потеряет ли качество мой SVG при преобразовании в PNG?
- Преобразование вектора в растр означает, что изображение становится пиксельным и больше не может масштабироваться бесконечно. Выберите высокое разрешение, чтобы PNG выглядел четко при предполагаемом размере экрана.
- Для чего используется формат PNG?
- PNG (Portable Network Graphics) в основном используется для прозрачной графики, снимков экрана, логотипов и значков.
- Есть ли какие-либо ограничения, о которых следует знать?
- Поддерживаются файлы размером до 50 МБ. Обработка очень больших или сложных файлов может занять больше времени. Все преобразования происходят в вашем браузере, поэтому скорость обработки зависит от вашего устройства.
- Сохраняются ли мои изображения конфиденциальными во время конвертации?
- Да. Ваши файлы SVG обрабатываются полностью в вашем браузере с использованием Canvas API и JavaScript. Ничего не загружается ни на один сервер — файл передается напрямую с вашего устройства в конвертер и обратно на ваше устройство.
- Текст отображается как текст или как пути?
- Текст растрируется в виде пикселей в выходном PNG. Вывод больше не доступен для поиска или выбора. Если ваш SVG использует шрифты, недоступные в браузере, текст может отображаться с использованием резервного шрифта; преобразуйте текст в пути в SVG перед рендерингом для гарантированного внешнего вида.
- Загружен ли мой SVG на сервер?
- Нет. Анализ и рендеринг SVG происходят в вашем браузере; Кодирование PNG происходит в вашем браузере. Файл не покидает ваше устройство.
- Почему мой конвертированный PNG пуст?
- Распространенные причины: SVG ссылается на внешние изображения, которые не удалось загрузить из-за CORS; SVG использует функции, не поддерживаемые путем рендеринга элемента изображения (foreignObject, определенные фильтры); SVG имеет нульмерный viewBox. Откройте SVG непосредственно в браузере, чтобы убедиться, что он отображается перед преобразованием.
- Могу ли я преобразовать SVG в PNG с помощью скрипта?
- Да — для пакетных заданий настройка Node.js с использованием Sharp или Puppeteer преобразует SVG в PNG с такой же точностью, как в браузере. Этот инструмент предназначен для разовых преобразований в браузере без какой-либо установки.
Related Articles
File FormatsImage Format Guide: JPG vs PNG vs WebP vs SVG Explained
Learn the differences between popular image formats, when to use each one, and how to convert between them for optimal quality and file size.
8 min readFile FormatsThe Complete Guide to PDF Conversion: Methods, Tools, and Best Practices
Everything you need to know about converting PDFs to other formats and vice versa. Covers PDF to Word, Excel, PNG, and more.
10 min readFile FormatsDocument Formats Explained: Word, PDF, TXT, and When to Use Each
Understand the differences between document formats like DOCX, PDF, TXT, RTF, and ODT. Learn which format to use for different purposes and how to convert between them.
8 min readFile FormatsAudio and Video Formats Explained: MP3, MP4, WAV, WebM, and Beyond
Understand the differences between audio and video formats, codecs, containers, and how to choose the right format for your needs.
9 min readPrivacy & SecurityHow to Convert Files Online Safely: Privacy and Security Guide
Understand the risks of online file conversion and learn how browser-based tools keep your data private. A guide to safe file handling.
7 min readPrivacy & TechnologyWhy Browser-Based Tools Are the Future: No Installs, No Uploads, No Risk
Discover why browser-based tools are replacing desktop software and cloud uploads. Learn how client-side processing keeps your files private while delivering powerful functionality.
7 min read