代码之家  ›  专栏  ›  技术社区  ›  Nostromo

绘制特殊背景

wpf
  •  0
  • Nostromo  · 技术社区  · 7 年前

    • 水平彩色线条的高度为20像素,颜色相同,中间也有同样大小的间隙
    • 水平和垂直红线相互重叠的区域应该再次显示为白色,这样就可以得到一种方格图案

    1 回复  |  直到 7 年前
        1
  •  2
  •   Clemens    7 年前

    不知道差距应该有多大。但是,您可以这样调整画笔:

    <Window.Background>
        <DrawingBrush TileMode="Tile" ViewportUnits="Absolute" Viewport="0,0,100,100">
            <DrawingBrush.Drawing>
                <DrawingGroup>
                    <GeometryDrawing Brush="White">
                        <GeometryDrawing.Geometry>
                            <RectangleGeometry Rect="0,0,100,100"/>
                        </GeometryDrawing.Geometry>
                    </GeometryDrawing>
                    <GeometryDrawing
                        Geometry="M50,0 L50,40 M50,60 L50,100 M0,50 L40,50 M60,50 L100,50">
                        <GeometryDrawing.Pen>
                            <Pen Brush="Red" Thickness="20"/>
                        </GeometryDrawing.Pen>
                    </GeometryDrawing>
                </DrawingGroup>
            </DrawingBrush.Drawing>
        </DrawingBrush>
    </Window.Background>
    

    <Window.Background>
        <DrawingBrush TileMode="FlipXY" ViewportUnits="Absolute" Viewport="0,0,50,50">
            <DrawingBrush.Drawing>
                <DrawingGroup>
                    <GeometryDrawing Brush="White">
                        <GeometryDrawing.Geometry>
                            <RectangleGeometry Rect="0,0,50,50"/>
                        </GeometryDrawing.Geometry>
                    </GeometryDrawing>
                    <GeometryDrawing Geometry="M0,45 L40,45 M45,0 L45,40">
                        <GeometryDrawing.Pen>
                            <Pen Brush="Red" Thickness="10"/>
                        </GeometryDrawing.Pen>
                    </GeometryDrawing>
                </DrawingGroup>
            </DrawingBrush.Drawing>
        </DrawingBrush>
    </Window.Background>