在图像上绘制矩形

Nic*_*ick 7 .net wpf image

我想在一个Image上绘制一些Rectangle.

例如,我有以下(白色和黑色)船舶配置文件,我想在特定位置的此配置文件上添加一些(黄色和红色)矩形:

在此输入图像描述

可能吗?我怎样才能做到这一点?

And*_*ndy 10

这是非常可能的,如果你知道你想突出你已经可以将所有控件中画布区域的X,Y,宽度和高度.

您可以在代码后面的矩形中设置属性,如下所示:

Rectangle rectangle = new Rectangle();
rectangle.SetValue(Canvas.LeftProperty, 10);
rectangle.SetValue(Canvas.TopProperty, 10);
rectangle.Width = 1000;
rectangle.Height = 50;
rectangle.Fill = new SolidColorBrush() { Color = Colors.Red, Opacity = 0.75f };

canvas.Children.Add(rectangle);
Run Code Online (Sandbox Code Playgroud)

如果你想在xaml中添加它们,你可以这样.

<Canvas>
    <Image Source="..."/>
    <Rectangle Canvas.Left="10" Canvas.Top="10" Width="1000" Height="50">
        <Rectangle.Fill>
           <SolidColorBrush Color="Red" Opacity="0.75"/>
        </Rectangle.Fill>
    </Rectangle>                        
</Canvas>
Run Code Online (Sandbox Code Playgroud)

  • @Andy知道如何用图像拉伸矩形,因为它不随图像拉伸 (2认同)