技术开发 频道

用WPF制作党旗和党徽

我们先用WPF制作一个常旗.

先看制作出来的效果:


XAML代码:
<Viewbox Width="578.947266" Height="348.085449"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Canvas Width="578.947266" Height="348.085449">
<Path Fill="#ffff0000" Data=" M 0.000000,348.085449 L 578.947266,348.085449 L 578.947266,0.000000 L 0.000000,0.000000 L 0.000000,348.085449 Z"/>
<Path Fill="#ffffff00" Data=" M 130.505371,30.992188 C 172.251465,47.226563 197.551758,98.037109 175.624023,138.939453 L 122.915527,84.966309 L 143.366699,64.515137 L 130.505371,51.444336 C 123.759277,58.401367 112.585449,59.666016 104.994629,56.714355 L 64.726074,98.037109 L 87.916992,121.018555 L 102.675293,105.416504 L 155.595703,159.390137 C 129.663086,174.146973 93.820801,169.297363 67.256348,141.469238 L 55.027344,154.541504 C 58.401367,159.812012 61.774414,164.450195 65.569336,168.876953 C 65.569336,169.297363 64.304199,170.143555 64.304199,170.143555 C 63.460449,170.143555 62.618164,169.720215 62.196289,169.720215 C 55.448730,169.720215 49.966797,175.833984 49.966797,182.794434 C 49.966797,189.749023 55.448730,195.442383 62.196289,195.442383 C 69.154297,195.442383 75.057129,189.749023 75.057129,182.794434 C 75.057129,181.947754 74.635254,181.107422 74.635254,180.684082 L 76.321289,178.365234 C 107.103516,199.237305 140.203613,201.977051 176.045898,180.052246 L 190.592773,195.442383 L 211.044434,174.993652 L 196.286133,159.812012 C 238.874512,94.032227 181.737793,29.306641 130.505371,30.992188 Z"/>
</Canvas>
</Viewbox>
下篇将制作一个富有立体感的WPF绘制党徽.


够漂亮吧!:)

照例贴出XAML代码:

<Viewbox Width="348.553711" Height="345.027832"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Canvas Width="348.553711" Height="345.027832">

<Canvas>
<Path Data=" M 166.979980,0.072754 C 177.454590,3.563965 187.428711,7.196777 197.354980,12.048828 C 186.879883,8.557129 177.160156,4.276855 166.979980,0.072754">
<Path.Fill>
<LinearGradientBrush MappingMode="Absolute" StartPoint="206.919434,656.222168" EndPoint="195.395905,676.181519">
<LinearGradientBrush.GradientStops>
<GradientStop Offset="0.000000" Color="#ffff0000"/>
<GradientStop Offset="0.490000" Color="#ffffff00"/>
<GradientStop Offset="1.000000" Color="#ffff0000"/>
</LinearGradientBrush.GradientStops>
<LinearGradientBrush.Transform>
<MatrixTransform Matrix="1.000000,0.000000,-0.000000,-1.000000,-18.876953,672.458496" />
</LinearGradientBrush.Transform>
</LinearGradientBrush>
</Path.Fill>
</Path>


<Path Data=" M 260.534180,223.114746 C 265.394531,224.793457 270.254883,226.472168 275.115723,228.150879 C 254.294922,206.899902 233.473145,185.648926 212.652344,164.397461 C 199.968262,151.451660 187.284180,138.505371 174.600098,125.559570 C 171.822266,122.724121 169.043945,119.888672 166.266113,117.053223 C 163.188477,113.912598 155.187012,113.056641 151.009277,111.680664 C 187.517578,148.825195 224.025879,185.970215 260.534180,223.114746">
<Path.Fill>
<LinearGradientBrush MappingMode="Absolute" StartPoint="268.759766,438.768555" EndPoint="195.437637,565.766174">
<LinearGradientBrush.GradientStops>
<GradientStop Offset="0.000000" Color="#ffff0000"/>
<GradientStop Offset="0.490000" Color="#ffffff00"/>
<GradientStop Offset="1.000000" Color="#ffff0000"/>
</LinearGradientBrush.GradientStops>
<LinearGradientBrush.Transform>
<MatrixTransform Matrix="1.000000,0.000000,-0.000000,-1.000000,-18.876953,672.458496" />
</LinearGradientBrush.Transform>
</LinearGradientBrush>
</Path.Fill>
</Path>


<Path Data=" M 151.009277,111.680664 C 153.096680,112.368164 164.743164,117.559570 165.968750,116.333984 C 170.215820,112.087402 174.462891,107.840332 178.709473,103.593262 C 188.511719,93.791504 198.313965,83.989746 208.115723,74.187988 C 206.027832,73.500000 194.381836,68.308105 193.156250,69.533691 C 188.909180,73.780762 184.662598,78.027344 180.415039,82.274414 C 170.613281,92.076660 160.811035,101.878418 151.009277,111.680664">
<Path.Fill>
<LinearGradientBrush MappingMode="Absolute" StartPoint="213.973145,552.619629" EndPoint="182.885605,606.464844">
<LinearGradientBrush.GradientStops>
<GradientStop Offset="0.000000" Color="#ffff0000"/>
<GradientStop Offset="0.490000" Color="#ffffff00"/>
<GradientStop Offset="1.000000" Color="#ffff0000"/>
</LinearGradientBrush.GradientStops>
<LinearGradientBrush.Transform>
<MatrixTransform Matrix="1.000000,0.000000,-0.000000,-1.000000,-18.876953,672.458496" />
</LinearGradientBrush.Transform>
</LinearGradientBrush>
</Path.Fill>
</Path>

0
相关文章