c# Открыть векторный файл (svg) и нарисовать его в PictureBox
У меня есть файл .SVG формата. Свойство Image у PictureBox не принимает такой формат на вход. Как можно добавить это изображение?
p.s. пробовал реализовать через метод, который возвращал-бы bitmap (картинку загрузил в ресурсы проекта), но выдаёт ошибку (System.IO.FileNotFoundException: "The specified document cannot be found."). Скорее всего, это связано с тем, что я не совсем правильно загрузил этот файл в ресурсы
private Bitmap ConvertToBitmnap()
{
var svgDocument = SvgDocument.Open(Properties.Resources.image.ToString());
svgDocument.ShapeRendering = SvgShapeRendering.Auto;
return svgDocument.Draw(12, 12);
}
Ответы (1 шт):
Метод SvgDocument.Open() принимает значение string соответствующее именно файлу .svg, или stream содержащий сам код SVG.
В вашем случае, вы вызываете первый overload, и даёте ему значение "System.Byte[]". Так как файла с именем «System.Byte[]» не существует, то программа логично указывает, что файла нет.
Используйте GetManifestResourceStream. Загрузите картинку из ресурсов, и дальше используйте стрим, вызывая SvgDocument.Open().
