wpf制作公章、圆形环绕字
使用 WPF 制作 公章,主要使用到的知识点有:缩放变换,旋转变换的知识。下面附上xaml代码。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 | <Grid > <!--背景图片,可有可无--> <Grid.Background> <LinearGradientBrush> <GradientStop Color= "Blue" Offset= "0" /> <GradientStop Color= "yellow" Offset= "0.5" /> <GradientStop Color= "Red" Offset= "1" /> </LinearGradientBrush> </Grid.Background> <Grid.Resources> <!--定义label的样式--> <Style TargetType= "{x:Type Label}" > <Setter Property= "RenderTransformOrigin" > <Setter.Value> <Point X= "0.5" Y= "2.5" /> </Setter.Value> </Setter> <Setter Property= "Width" Value= "56" /> <Setter Property= "Height" Value= "50" /> <Setter Property= "FontSize" Value= "30" /> <Setter Property= "Foreground" Value= "#ffff0000" /> <Setter Property= "VerticalAlignment" Value= "Top" /> <Setter Property= "RenderTransform" > <Setter.Value> <TransformGroup> <ScaleTransform ScaleX= "0.6" ScaleY= "1" /> <!--绑定到Tag上,用于旋转的角度--> <RotateTransform Angle= "{Binding Tag,RelativeSource={RelativeSource AncestorType=Label}}" /> </TransformGroup> </Setter.Value> </Setter> </Style> </Grid.Resources> <!--外侧圆圈--> <Ellipse Margin= "0,1,0,0" Height= "250" Fill= "{x:Null}" Stroke= "#FFFF0000" x:Name= "EllipseBorder" HorizontalAlignment= "Center" VerticalAlignment= "Top" Width= "250" StrokeThickness= "1" /> <!--中间的五角星--> <Path StrokeThickness= "1.000000" Stroke= "{x:Null}" Fill= "#FFFF0000" Data= "F1 M 55.467773,1.628906 L 68.130859,40.893066 L 109.385742,40.802734 L 75.957031,64.979004 L 88.791016,104.187500 L 55.467773,79.865234 L 22.144531,104.187500 L 34.978516,64.979004 L 1.549805,40.802734 L 42.804688,40.893066 L 55.467773,1.628906 Z" HorizontalAlignment= "Center" RenderTransformOrigin= "0.5,0.5" VerticalAlignment= "Center" > <Path.RenderTransform> <TransformGroup> <ScaleTransform ScaleX= "0.68" ScaleY= "0.68" /> <SkewTransform AngleX= "0" AngleY= "0" /> <RotateTransform Angle= "0" /> <TranslateTransform X= "0" Y= "0" /> </TransformGroup> </Path.RenderTransform> </Path> <!--下面是一堆文字和角度--> <Label Content= "我" Tag= "10" /> <Label Content= "是" Tag= "30" /> <Label Content= "一" Tag= "50" /> <Label Content= "只" Tag= "70" /> <Label Content= "快" Tag= "90" /> <Label Content= "乐" Tag= "110" /> <Label Content= "的" Tag= "130" /> <Label Content= "小" Tag= "150" /> <Label Content= "黄" Tag= "170" /> <Label Content= "鸭" Tag= "190" /> <Label Content= "黄" Tag= "210" /> <Label Content= "黄" Tag= "230" /> <Label Content= "黄" Tag= "250" /> <Label Content= "黄" Tag= "270" /> <Label Content= "黄" Tag= "290" /> <Label Content= "黄" Tag= "310" /> <Label Content= "~" Tag= "330" /> <Label Content= "~" Tag= "350" /> </Grid> |
大致效果已经出来了,其它美化就要你们自己动手啦~
效果图:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异