如何在Windows 8 / WinRT中将SVG文件转换为XAML

如何在 Windows 8 / WinRT中将SVG文件转换为XAML.我是这个XAML / SVG环境的新手.所以任何人请帮助我在Windows 8中实现相同.我需要解析这个svg文件,需要通过代码在页面中显示内容.
对我而言,最简单的方法是:

>在免费矢量绘图工具Inkscape中打开.svg文件
>另存为“Microsoft XAML(* .xaml)”

此外,您可能需要在转换后更新结果输出文件,因为并非所有XAML处理引擎都支持将字符串转换为数字(如接受的答案为Why does this Xaml Path crash silverlight?所述).所以,例如,如果你有这样的话:

<Path Fill="#FFEDEDED" StrokeThickness="1" Stroke="#FFA3A3A3" Opacity="0.7" 
                VerticalAlignment="Center" HorizontalAlignment="Center" >
    <Path.Data>
        <PathGeometry Figures="m 1 2 l 4.0525 5.2361 l 4.0527 -5.2361 z "/>
    </Path.Data>
</Path>

那么您将需要将其更改为:

<Path Fill="#FFEDEDED" StrokeThickness="1" Stroke="#FFA3A3A3" Opacity="0.7" 
            VerticalAlignment="Center" HorizontalAlignment="Center"
            Data="m 1 2 l 4.0525 5.2361 l 4.0527 -5.2361 z" />

– 要么 –

您可以使用一种不同的方式将Convert SVG to XAML的xaml导出,由Tim Heuer在问题Convert SVG to XAML的接受回答中描述,因为这两种方式产生不同的xaml输出:

Method (yes, superhack):

  • Use Inkscape to save as PDF

  • Rename the Filename extension from PDF to AI

  • Use Expression Design to open AI document

  • Export to Silverlight Canvas

更新(2015-08-25)

我发现自己使用第二个(“hack”)方式越来越多,而不是首先(更直接)的一个,因为它创建了更多的“可预期的”XAML,就像我所说的那样.

相关文章
相关标签/搜索