Xaml 在Windows窗体/WPF中使用SVG的库?

Xaml 在Windows窗体/WPF中使用SVG的库?,xaml,svg,inkscape,Xaml,Svg,Inkscape,有没有图书馆 允许将svg直接绘制到Windows窗体应用程序 到WPF应用程序 我画图形和设计一切,因为我喜欢这个程序。 然后我有了这些惊人的SVG,要么将它们导出到png(WinForm)以使用它们,要么将它们转换为xaml代码(WPF)(帮助我) 有没有办法直接使用我的SVG?哇,我想Inkscape支持另存为XAML。到目前为止我还没有意识到这一点 但这仍然不能解决我在WinForms中遇到的问题…是的,您可以使用from AB4D直接从XAML获取WPF 关于WinForms,删除了K

有没有图书馆

  • 允许将svg直接绘制到Windows窗体应用程序
  • 到WPF应用程序
  • 我画图形和设计一切,因为我喜欢这个程序。 然后我有了这些惊人的SVG,要么将它们导出到png(WinForm)以使用它们,要么将它们转换为xaml代码(WPF)(帮助我)

    有没有办法直接使用我的SVG?

    ,我想Inkscape支持另存为XAML。到目前为止我还没有意识到这一点

    但这仍然不能解决我在WinForms中遇到的问题…

    是的,您可以使用from AB4D直接从XAML获取WPF

    关于WinForms,删除了Kent Boogart示例的先前链接,因为该链接在2019年某个时候被删除

    抄袭

    要将WPF控件或WPF用户控件(本例中为wpfControl)宿主到Windows窗体应用程序中,请创建ElementHost类的实例,并将WPF控件/用户控件作为子控件添加到ElementHost实例中

    使用System.Windows.Forms.Integration;
    //程序集:WindowsFormsIntegration(在WindowsFormsIntegration.dll中)
    //...
    ElementHost ElementHost=新ElementHost();
    elementHost.Dock=DockStyle.None;
    elementHost.Child=wpfControl;
    
    现在,将ElementHost实例添加到windows窗体中的容器控件(例如此处的containerPanel)

    containerPanel.Controls.Add(elementHost);
    
    我个人讨厌微软的产品/开发工具中没有对SVG的本地支持。我发现了两个相当完整但仍不成熟的SVG库,它们在撰写本文时似乎很活跃,但肯定需要贡献者

    • WPF
    • WinForms

    IIRC两个库都输出一个图形对象,可通过Image类直接使用;你会发现,它们都很容易使用。

    如果你想直接将它们加载到WPF中,
    我从中获得了更好的结果:

    不幸的是,它还没有准备好,将要实现,希望它将在InkscapeSave的0.47版本中推出,因为XAML是在0.48(可能更早)中实现的。我想将此工具添加到列表中:我编写了它,因为我对其他工具不满意,当然它也是开源的。死链接修复了