如何使用路径在DrawingImage?(How to use Path in a DrawingI

2019-08-08 17:02发布

我有一些路径定义,我想转换成DrawingImage资源,但我必须失去了一些东西。

我想利用这样的:

<Path Stroke="DarkGoldenRod" StrokeThickness="3" 
      Data="M 100,200 C 100,25 400,350 400,175 H 280" />

与这样的使用方法:

<DrawingImage x:Key='icon'>
    <DrawingImage.Drawing>
      <DrawingGroup>
        <DrawingGroup.Children>
          <GeometryDrawing ... />
          . . .
        </DrawingGroup.Children>
      </DrawingGroup>
    </DrawingImage.Drawing>
</DrawingImage>

有什么建议?

-dk

Answer 1:

我挺不知道你想做什么?给托马斯的回答您的评论。

但是,Expression Design中可以有两种不同的方式WPF出口:

  1. 到资源字典其中艺术品变成DrawingBrush(ES),或
  2. 到帆布其中艺术品变成路径(S)和形状(或多个)。

该资源字典/ DrawingBrush的方法是非常相似,你的问题了,并且托马斯回答,用建议的答案。

我的建议是与Expression设计,设计图稿,然后保持。设计文件的保持,这样就可以导出到您所希望的任何格式......尤其是在稍后的时间点。

现在,我知道有很多艺术品被在Adobe Illustrator完成,然后使用表达式设计转换。 如果是这样的话,我会保持两个.AI文件和文件。设计,这样就可以随时重新修改您的作品和出口。

当然,这一切都是要解决这个问题,你不能导入XAML到Expression Design的问题(即它不支持往返的情况)。

有一件事我会提的是,有时不是那么容易,因为仅仅复制从Path.Data财产迷你路径语言到GeometryDrawing.Geometry财产......因为调整的情况(指那DrawingBrush(ES)通常设置为填充的地方,然后他们通常填充任何空间存在)。 因此,注意的!



Answer 2:

这应该工作:

<DrawingImage x:Key='icon'>
  <DrawingImage.Drawing>
    <DrawingGroup>
      <DrawingGroup.Children>
        <GeometryDrawing Geometry="M 100,200 C 100,25 400,350 400,175 H 280">
          <GeometryDrawing.Pen>
            <Pen Thickness="3" Brush="DarkGoldenRod"/>
          </GeometryDrawing.Pen>
        </GeometryDrawing>
      </DrawingGroup.Children>
    </DrawingGroup>
  </DrawingImage.Drawing>
</DrawingImage>


文章来源: How to use Path in a DrawingImage?
标签: wpf xaml drawing