Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net SvgDocument.Draw()对象引用未设置为对象的实例_Vb.net_Svg - Fatal编程技术网

Vb.net SvgDocument.Draw()对象引用未设置为对象的实例

Vb.net SvgDocument.Draw()对象引用未设置为对象的实例,vb.net,svg,Vb.net,Svg,我环顾了Stackoverflow和互联网,但没有找到一篇可以帮助我解决问题的帖子 我的问题是,在下面代码段的第行 Dim bm As Bitmap = SvgDoc.Draw() 我得到的对象引用未设置为对象的实例 Protected Function SvgToPng(ByVal svg As String) As Byte() svg = svg.Replace("url(""#lineArea"")", "url('#lineArea')") Dim byteArra

我环顾了Stackoverflow和互联网,但没有找到一篇可以帮助我解决问题的帖子

我的问题是,在下面代码段的第行

Dim bm As Bitmap = SvgDoc.Draw()
我得到的对象引用未设置为对象的实例

Protected Function SvgToPng(ByVal svg As String) As Byte()
    svg = svg.Replace("url(""#lineArea"")", "url('#lineArea')")

    Dim byteArray = Encoding.UTF8.GetBytes(svg)
    Dim str As New MemoryStream(byteArray)
    Dim svgDoc = SvgDocument.Open(str)
    scaleSvgDoc(svgDoc, 7)
    Dim bm As Bitmap = svgDoc.Draw()
    Dim out As New MemoryStream
    bm.Save(out, ImageFormat.Png)
    Return out.ToArray
End Function
我有多个按钮,在不同的菜单下访问这个方法。我的问题是,对于这些菜单中的一个,我得到的问题如上所述,但我没有得到它的休息。 我已经检查了SvgDocstrbyteArray都已设置,工作的和不工作的唯一区别是SvgString(在本例中为svg

有人能帮我吗


编辑:我使用的是SVG渲染引擎库。

我对这个库不太了解,我假设您使用的是SVG渲染引擎?但是我注意到有一个方法SvgDocument.OpenAsBitmap。为什么不直接打开位图,然后更改为您想要的任何图像格式?

没有发布SVG字符串,因为它们渴望发布。从源代码中可以看出,它已实现为“返回null”。根据。