Преобразование SVG в PNG с примерами кода

Чтобы преобразовать файл SVG (масштабируемая векторная графика) в формат PNG (переносимая сетевая графика), вы можете использовать различные методы. Вот несколько популярных с примерами кода:

Метод 1. Использование внешней библиотеки, например CairoSVG (Python)

import cairosvg
input_file = "input.svg"
output_file = "output.png"
cairosvg.svg2png(url=input_file, write_to=output_file)

Метод 2: использование Inkscape (командная строка)
Inkscape — популярный редактор векторной графики с открытым исходным кодом, который можно использовать через командную строку для преобразования SVG в PNG.

inkscape -z -e output.png input.svg

Метод 3: использование ImageMagick (командная строка)
ImageMagick — это мощный инструмент командной строки для манипулирования изображениями, который поддерживает преобразование SVG в PNG.

convert input.svg output.png

Метод 4: использование JavaScript и элемента (браузер)
Вы можете использовать JavaScript и элемент для прямого преобразования SVG в PNG в веб-браузере.

var svg = document.querySelector("svg");
var canvas = document.createElement("canvas");
canvas.width = svg.width.baseVal.value;
canvas.height = svg.height.baseVal.value;
var ctx = canvas.getContext("2d");
var data = new XMLSerializer().serializeToString(svg);
var img = new Image();
img.onload = function () {
  ctx.drawImage(img, 0, 0);
  var pngData = canvas.toDataURL("image/png");
  // Use or save the PNG data as needed
};
img.src = "data:image/svg+xml;base64," + btoa(data);