C# 将不规则形状缩放为不规则边界

C# 将不规则形状缩放为不规则边界,c#,silverlight,xaml,C#,Silverlight,Xaml,我试图制作一个可重用的XAML图标。它由三部分组成 背景、挡板和图形路径对象。该形状为矩形,右上角被切下,挡板的形状与中间被切下的形状相同,边距为1 我需要的图形路径,以适应这里面有轻微的边缘 我希望它足够智能,可以自行调整大小,以适应嵌框的限制,而不管其形状如何。就像ClipToBounds一样,我不希望图形被剪裁——我希望它能够缩放 我最初认为设置边距会起作用,但是,设置图形的边距是基于矩形,而不是不规则的挡板形状;因此,具有更矩形形状的图形经常接触或过于靠近挡板右侧的切口 有人对我如何实现

我试图制作一个可重用的XAML图标。它由三部分组成

背景、挡板和图形路径对象。该形状为矩形,右上角被切下,挡板的形状与中间被切下的形状相同,边距为1

我需要的图形路径,以适应这里面有轻微的边缘

我希望它足够智能,可以自行调整大小,以适应嵌框的限制,而不管其形状如何。就像ClipToBounds一样,我不希望图形被剪裁——我希望它能够缩放

我最初认为设置边距会起作用,但是,设置图形的边距是基于矩形,而不是不规则的挡板形状;因此,具有更矩形形状的图形经常接触或过于靠近挡板右侧的切口

有人对我如何实现这种ScaleToBounds行为有什么想法吗

编辑:

有关此问题的示例,请参见所附图片。这两种图形都包含在带有边距的视口中。圆形图形是我希望在图形周围看到的理想边距。矩形图形太靠近挡板-我想让矩形图形等图形自身的比例稍微降低,这样它们就可以在挡板内有一些余量


根据您的描述判断,您是否尝试过将其嵌套在Stretch=Fill的ViewBox中?@ChrisW。是的,图形嵌套在视口框中。我在帖子中添加了一些图片和附加信息。谢谢。啊,好的。但你不想剪掉它?有没有担心四个边的边距都相等?这似乎可以归结为“ol方桩与圆孔类比”:/@克里斯。理想情况下,我希望有一个与背景形状相同的边界框。当边界框检测到图形超出边界时,它会将图形的宽度/高度设置为较小的尺寸,使其不再超出边界,并适合挡板的限制。