첨부 실행 코드는 나눔고딕코딩 폰트를 사용합니다.
728x90
반응형
728x170

■ DrawingBrush 엘리먼트의 Transform/RelativeTransform 속성을 사용하는 방법을 보여준다.

TestProject.zip
0.01MB

▶ MainWindow.xaml

<Window Name="window" x:Class="TestProject.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Width="800"
    Height="600"
    Title="TestProject"
    FontFamily="나눔고딕코딩"
    FontSize="16">
    <StackPanel
        HorizontalAlignment="Center"
        VerticalAlignment="Center"
        Orientation="Horizontal">
        <Rectangle
            Margin="10"
            Width="100"
            Height="100"
            StrokeThickness="1"
            Stroke="Black">
            <Rectangle.Fill>
                <DrawingBrush
                    Viewport="0 0 0.5 0.5"
                    TileMode="Tile">
                    <DrawingBrush.Drawing>
                        <DrawingGroup>
                            <DrawingGroup.Children>
                                <GeometryDrawing
                                    Brush="Gray"
                                    Geometry="M 0 0.1 L 0.1 0 1 0.9 0.9 1 z" />
                                <GeometryDrawing
                                    Brush="Gray"
                                    Geometry="M 0.9 0 L 1 0.1 0.1 1 0 0.9 z" />
                                <GeometryDrawing
                                    Brush="#ffff00"
                                    Geometry="M 0.25 0.25 L 0.5 0.125 0.75 0.25 0.5 0.5 z" />
                                <GeometryDrawing
                                    Brush="Black"
                                    Geometry="M 0.25 0.75 L 0.5 0.875 0.75 0.75 0.5 0.5 z" />
                                <GeometryDrawing
                                    Brush="#ff0000"
                                    Geometry="M 0.25 0.75 L 0.125 0.5 0.25 0.25 0.5 0.5 z" />
                                <GeometryDrawing
                                    Brush="MediumBlue"
                                    Geometry="M 0.75 0.25 L 0.875 0.5 0.75 0.75 0.5 0.5 z" />
                            </DrawingGroup.Children>
                        </DrawingGroup>
                    </DrawingBrush.Drawing>
                </DrawingBrush>
            </Rectangle.Fill>
        </Rectangle>
        <Rectangle
            Margin="10"
            Width="100"
            Height="100"
            StrokeThickness="1"
            Stroke="Black">
            <Rectangle.Fill>
                <DrawingBrush
                    Viewport="0 0 0.5 0.5"
                    TileMode="Tile">
                    <DrawingBrush.Transform>
                        <SkewTransform
                            AngleX="45"
                            AngleY="0" />
                    </DrawingBrush.Transform>
                    <DrawingBrush.Drawing>
                        <DrawingGroup>
                            <DrawingGroup.Children>
                                <GeometryDrawing
                                    Brush="Gray"
                                    Geometry="M 0 0.1 L 0.1 0 1 0.9 0.9 1 z" />
                                <GeometryDrawing
                                    Brush="Gray"
                                    Geometry="M 0.9 0 L 1 0.1 0.1 1 0 0.9 z" />
                                <GeometryDrawing
                                    Brush="#ffff00"
                                    Geometry="M 0.25 0.25 L 0.5 0.125 0.75 0.25 0.5 0.5 z" />
                                <GeometryDrawing
                                    Brush="Black"
                                    Geometry="M 0.25 0.75 L 0.5 0.875 0.75 0.75 0.5 0.5 z" />
                                <GeometryDrawing
                                    Brush="#ff0000"
                                    Geometry="M 0.25 0.75 L 0.125 0.5 0.25 0.25 0.5 0.5 z" />
                                <GeometryDrawing
                                    Brush="MediumBlue"
                                    Geometry="M 0.75 0.25 L 0.875 0.5 0.75 0.75 0.5 0.5 z" />
                            </DrawingGroup.Children>
                        </DrawingGroup>
                    </DrawingBrush.Drawing>
                </DrawingBrush>
            </Rectangle.Fill>
        </Rectangle>
        <Rectangle
            Margin="10"
            Width="100"
            Height="100"
            StrokeThickness="1"
            Stroke="Black">
            <Rectangle.Fill>
                <DrawingBrush
                    Viewport="0 0 0.5 0.5"
                    TileMode="Tile">
                    <DrawingBrush.RelativeTransform>
                        <RotateTransform
                            CenterX="0.5"
                            CenterY="0.5"
                            Angle="45" />
                    </DrawingBrush.RelativeTransform>
                    <DrawingBrush.Drawing>
                        <DrawingGroup>
                            <DrawingGroup.Children>
                                <GeometryDrawing
                                    Brush="Gray"
                                    Geometry="M 0 0.1 L 0.1 0 1 0.9 0.9 1 z" />
                                <GeometryDrawing
                                    Brush="Gray"
                                    Geometry="M 0.9 0 L 1 0.1 0.1 1 0 0.9 z" />
                                <GeometryDrawing
                                    Brush="#ffff00"
                                    Geometry="M 0.25 0.25 L 0.5 0.125 0.75 0.25 0.5 0.5 z" />
                                <GeometryDrawing
                                    Brush="Black"
                                    Geometry="M 0.25 0.75 L 0.5 0.875 0.75 0.75 0.5 0.5 z" />
                                <GeometryDrawing
                                    Brush="#ff0000"
                                    Geometry="M 0.25 0.75 L 0.125 0.5 0.25 0.25 0.5 0.5 z" />
                                <GeometryDrawing
                                    Brush="MediumBlue"
                                    Geometry="M 0.75 0.25 L 0.875 0.5 0.75 0.75 0.5 0.5 z" />
                            </DrawingGroup.Children>
                        </DrawingGroup>
                    </DrawingBrush.Drawing>
                </DrawingBrush>
            </Rectangle.Fill>
        </Rectangle>
    </StackPanel>
</Window>
728x90
반응형
그리드형(광고전용)
Posted by icodebroker

댓글을 달아 주세요