请问如何将svg中的path数据转换为图片显示在WPF中?

howze 2020-08-20 07:19:27
我从svg文件中取到了一个path数据,是这样的:


<path id="" transform="matrix(1 0 0 -1 0 841)" d="M429.84 611.38L410.76 592.1801L410.76 592.1801L423.24 579.7L423.24 579.7L442.32 598.9L442.32 598.9L429.84 611.38M458.88 526.9L474.72 542.74L474.72 542.74L463.56 553.9L463.56 553.9L450.96 541.42L450.96 541.42L445.92 546.46L445.92 546.46L458.52 558.9401L458.52 558.9401L448.08 569.38L448.08 569.38L434.28 555.46L434.28 555.46L429.24 560.5L429.24 560.5L461.4 592.78L461.4 592.78L466.44 587.74L466.44 587.74L452.52 573.7L452.52 573.7L462.84 563.38L462.84 563.38L475.44 575.98L475.44 575.98L480.6 570.9401L480.6 570.9401L468 558.34L468 558.34L479.16 547.1801L479.16 547.1801L495 563.02L495 563.02L500.04 557.86L500.04 557.86L463.92 521.86L463.92 521.86L458.88 526.9zM427.44 519.34L426.72 521.38L426.72 521.38L425.88 523.42L425.88 523.42L425.16 525.46L425.16 525.46L424.2 527.62L424.2 527.62L423.36 529.78L423.36 529.78L422.4 531.8201L422.4 531.8201L421.32 533.98L421.32 533.98L420.24 536.14L420.24 536.14L419.16 538.3L419.16 538.3L417.96 540.46L417.96 540.46L416.76 542.62L416.76 542.62L415.44 544.78L415.44 544.78L414.12 546.9401L414.12 546.9401L412.8 549.22L412.8 549.22L411.36 551.38L411.36 551.38L409.8 553.66L409.8 553.66L402.12 545.86L402.12 545.86L397.08 550.78L397.08 550.78L405.84 559.54L405.84 559.54L393.96 571.3L393.96 571.3L391.08 567.1L391.08 567.1L388.08 562.9L388.08 562.9L386.52 563.98L386.52 563.98L384.96 565.0601L384.96 565.0601L383.4 566.02L383.4 566.02L381.72 567.1L381.72 567.1L383.76 569.74L383.76 569.74L385.68 572.38L385.68 572.38L387.72 575.26L387.72 575.26L389.52 578.02L389.52 578.02L391.44 581.02L391.44 581.02L393.12 583.9L393.12 583.9L394.92 587.02L394.92 587.02L396.6 590.14L396.6 590.14L403.08 586.0601L403.08 586.0601L401.64 583.54L401.64 583.54L400.2 581.14L400.2 581.14L398.76 578.62L398.76 578.62L397.2 576.22L397.2 576.22L409.8 563.5L409.8 563.5L417.48 571.1801L417.48 571.1801L422.4 566.26L422.4 566.26L414.72 558.58L414.72 558.58L424.8 548.5L424.8 548.5L424.32 553.3L424.32 553.3L427.44 552.7L427.44 552.7L431.16 551.98L431.16 551.98L435.6 551.02L435.6 551.02L440.88 549.8201L440.88 549.8201L441.24 542.86L441.24 542.86L433.2 544.9L433.2 544.9L426.84 546.58L426.84 546.58L461.88 511.54L461.88 511.54L457.8 507.46L457.8 507.46L421.56 543.8201L421.56 543.8201L422.76 541.78L422.76 541.78L423.96 539.86L423.96 539.86L425.04 537.9401L425.04 537.9401L426.24 536.02L426.24 536.02L427.2 534.1L427.2 534.1L428.28 532.1801L428.28 532.1801L429.24 530.38L429.24 530.38L430.2 528.46L430.2 528.46L431.04 526.66L431.04 526.66L431.88 524.86L431.88 524.86L432.6 523.1801L432.6 523.1801L433.32 521.38L433.32 521.38L434.04 519.7L434.04 519.7L434.64 517.9L434.64 517.9L435.24 516.22L435.24 516.22L435.84 514.66L435.84 514.66L431.64 516.9401L431.64 516.9401L427.44 519.34zM401.4 593.26L428.88 620.74L428.88 620.74L454.8 594.82L454.8 594.82L450.6 590.62L450.6 590.62L447.48 593.74L447.48 593.74L428.4 574.54L428.4 574.54L431.52 571.42L431.52 571.42L427.32 567.22L427.32 567.22L401.4 593.26z" stroke="none" fill="#C0C0C0" fill-rule="evenodd" />


这是svg文件中的一个线条,我想单独把他绘制出来,并显示在wpf的image里或者listbox里,这个有什么办法吗?谢谢!
...全文
4227 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
晨易夕 2020-08-24
  • 打赏
  • 举报
回复
引用 10 楼 howze 的回复:
这是一个方法,我也尝试成功了,算是比较靠谱的答案,但是还是在想有没有别的路子,因为后续还要把图片保存下载,所以想一步到位的
图片保存可以使用RenderTargetBitmap直接将Canvas控件保存到本地就可以了。
howze 2020-08-21
  • 打赏
  • 举报
回复
引用 2 楼 desperaso 的回复:
参考下 http://bbs.cskin.net/thread-16138-1-1.html
这个没用哦
howze 2020-08-21
  • 打赏
  • 举报
回复
引用 3 楼 xingeddx 的回复:
使用Blend打开呢,再另存呢
手动的肯定没问题啊 我是想问怎么用代码实现哇
xingeddx 2020-08-21
  • 打赏
  • 举报
回复
使用Blend打开呢,再另存呢
desperaso 2020-08-21
  • 打赏
  • 举报
回复
参考下
http://bbs.cskin.net/thread-16138-1-1.html
howze 2020-08-21
  • 打赏
  • 举报
回复
引用 7 楼 晨易夕 的回复:
如果仅仅在WPF中显示,我倒建议直接使用path数据绘制到Canvas控件里去。
这是一个方法,我也尝试成功了,算是比较靠谱的答案,但是还是在想有没有别的路子,因为后续还要把图片保存下载,所以想一步到位的
assky124 2020-08-21
  • 打赏
  • 举报
回复
https://github.com/vvvv/SVG 直接用这个库转成图片,不过我觉得这个库性能不是很好,稍微有点慢
晨易夕 2020-08-21
  • 打赏
  • 举报
回复
引用 7 楼 晨易夕 的回复:
如果仅仅在WPF中显示,我倒建议直接使用path数据绘制到Canvas控件里去。
就像这样
晨易夕 2020-08-21
  • 打赏
  • 举报
回复
如果仅仅在WPF中显示,我倒建议直接使用path数据绘制到Canvas控件里去。
欧皇神降术 2020-08-21
  • 打赏
  • 举报
回复
svg里面的data 可以直接扔到wpf path 的data里面
https://blog.csdn.net/qq_29198233/article/details/106841010
howze 2020-08-20
  • 打赏
  • 举报
回复
看来这块大家研究的比较少?

111,120

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧