【发布时间】:2017-09-20 04:46:16
【问题描述】:
有没有办法在 UWP 应用的 xaml 图像控件中显示 SVG 图像(来自 URL)
例如
<Image Source={Binding image_source}>
其中image_source 是图像的绝对路径。图片为 png 或 svg 格式。
我的解决方案可以使用任何常见的图形格式(jpg、png、gif),但当图形是 svg 格式时什么也不显示。
我看过大量关于将 svg 转换为其他东西的文章,但这些信息来自一个不是我的网络服务,我怀疑它会被其他人使用。将大量图像更改为 png 或其他我怀疑的选项。
在我的应用程序中,图像位于列表视图中。
我看过有关转换器的文章并内置了对 svg 的支持,但它们似乎都不起作用。除了手动转换文件(不是一个选项)之外,我还没有在这里或任何地方找到任何有工作解决方案的人的文章
任何帮助将不胜感激。
【问题讨论】:
-
看看igrali.com/2015/12/24/how-to-render-svg-in-xaml-windows-10-uwp 或者this 我认为你可以将.svg 转换为可以在UWP 中轻松显示的位图
-
我标记了@Hannes 评论,因为这可能是一个很好的解决方案。我个人更喜欢像往常一样只使用 image.Source = 并且它可以工作。 (该答案可能会这样做,但示例并未表明会这样做)。这是我的建议。制作一个自定义图像控件,其工作方式与具有 Source 依赖属性的图像一样。只需检查 svg 类型的源并显示 XAML(很容易转换)或显示带有源的图像。这种方式在使用时的界面上与典型的图像没有区别。
-
SvgImageSource 是创作者更新 docs.microsoft.com/en-us/uwp/api/… 中的一项新功能。对于早期版本,您需要将其转换或显示在 WebView 中
标签: c# svg visual-studio-2015 uwp