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

■ DrawingGroup 엘리먼트의 BitmapEffect/OpacityMask 속성을 사용해 드로잉을 그리는 방법을 보여준다.

TestProject.zip
0.08MB

▶ MainWindow.xaml

<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">
    <Rectangle
        Width="300"
        Height="300">
        <Rectangle.Fill>
            <DrawingBrush>
                <DrawingBrush.Drawing>
                    <DrawingGroup>
                        <DrawingGroup>
                            <GeometryDrawing Brush="#66b5f314">
                                <GeometryDrawing.Geometry>
                                    <EllipseGeometry
                                        Center="50 50"
                                        RadiusX="50"
                                        RadiusY="50" />
                                </GeometryDrawing.Geometry>
                                <GeometryDrawing.Pen>
                                    <Pen
                                        Thickness="4"
                                        Brush="Black" />
                                </GeometryDrawing.Pen>
                            </GeometryDrawing>
                            <DrawingGroup.BitmapEffect>
                                <BlurBitmapEffect Radius="5" />
                            </DrawingGroup.BitmapEffect>
                        </DrawingGroup>
                        <DrawingGroup>
                            <ImageDrawing
                                Rect="50 50 100 100"
                                ImageSource="IMAGE\kiwi.png" />
                            <DrawingGroup.BitmapEffect>
                                <BevelBitmapEffect  />
                            </DrawingGroup.BitmapEffect>
                            <DrawingGroup.OpacityMask>
                                <RadialGradientBrush>
                                    <GradientStop Offset="0.55" Color="#00000000" />
                                    <GradientStop Offset="0.65" Color="#ff000000" />
                                    <GradientStop Offset="0.75" Color="#00000000" />
                                    <GradientStop Offset="0.80" Color="#ff000000" />
                                    <GradientStop Offset="0.90" Color="#00000000" />
                                    <GradientStop Offset="1.0"  Color="#ff000000" />
                                </RadialGradientBrush>
                            </DrawingGroup.OpacityMask>
                        </DrawingGroup>
                        <GeometryDrawing Brush="#66b5f314">
                            <GeometryDrawing.Geometry>
                                <EllipseGeometry
                                    Center="150 150"
                                    RadiusX="50"
                                    RadiusY="50" />
                            </GeometryDrawing.Geometry>
                            <GeometryDrawing.Pen>
                                <Pen
                                    Thickness="4"
                                    Brush="Black" />
                            </GeometryDrawing.Pen>
                        </GeometryDrawing>
                    </DrawingGroup>
                </DrawingBrush.Drawing>
            </DrawingBrush>
        </Rectangle.Fill>
    </Rectangle>
</Window>
728x90
반응형
그리드형(광고전용)
Posted by icodebroker

댓글을 달아 주세요