c# - 如何在WPF中将来自url的svg显示为图像源
问题描述
在 WPF 中,我将 uri 用作列表中项目的 ImageSource,它工作正常,除了 url 是 .svg url。
我试过使用Svg。它可以工作,但图像搞砸了,我不得不在本地下载文件。
我还尝试使用SharpVectors,但不了解如何使其工作,并且使用文档无处可去。
这是我的原始代码,适用于 png、gif 和 jpg:
return new BitmapImage(new Uri(url, UriKind.Absolute));
如果还想有一个不需要我先在本地下载文件而是直接使用 Stream 或 uri 的解决方案。
解决方案
我可以推荐 CefSharp.Wpf 来显示 SVG 的图像。它是封装为 WPF 或 Windows 控件的铬引擎。
我成功地使用它来播放相当复杂的 SVG 动画。这将使您可以在不下载的情况下显示在线图像。
有关更多详细信息和示例,请参阅: GitHub CefSharp 它以 NuGet 包的形式提供。唯一的缺点可能是内存占用和维护浏览器引擎进程的必要性,但除此之外它是完美的。
推荐阅读
- javascript - 在 Azure Functions / Javascript 中反序列化 DeepObject 查询字符串键
- react-router - 从子节点获取父路由路径(react-router-V6)
- java - 密钥交换后的 Netty StreamCorruptedException
- flutter - 比较两个 json 对象列表并从 dart 中的第一个 json 对象列表中删除公共对象
- c# - 我可以在 VS 2019 中构建 .NET Core 3.1 应用程序并在 Ubuntu 上使用 mono 运行吗?
- javascript - NodeJS/Express 如何同时处理多个 CPU 绑定请求
- node.js - 使用 ec2 实例 T2 micro 流式传输视频
- asp.net - 从 Signtool 中删除 URL
- java - 如何使用 Java API 访问 YouTube 观看次数
- node.js - 带有聊天记录的安全消息系统