实例118-绘图技术-绘制公章

2023-11-06 06:20

本文主要是介绍实例118-绘图技术-绘制公章,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本节描述绘图中的公章的绘制。

本例程序下载地址:https://download.csdn.net/download/chongxing01/12266063

公章图片如下:

这个项目所要应用的技术如下:

1.在画板中绘制文本,如图中的“专用章”。

2.在画板中绘制圆形,如图中的圆。

3.旋转并移动坐标系,绘制文本,如图中的文本“C#绘图技术之绘图专用章”,逐个文本旋转绘制。

       private void button1_Click(object sender, EventArgs e){int tem_Line = 0;//记录圆的直径int circularity_W = 4;//设置圆画笔的粗细Var_Font = new Font("Arial", center_r/12, FontStyle.Bold);//定义字符串的字体样式tem_Line = center_r;rect = new Rectangle(circularity_W, circularity_W, tem_Line - circularity_W * 2, tem_Line - circularity_W * 2);//设置圆的绘制区域Font star_Font = new Font("Arial", center_r/4, FontStyle.Regular);//设置星号的字体样式string star_Str = "★";Graphics g = this.panel1.CreateGraphics();//实例化Graphics类g.SmoothingMode = SmoothingMode.AntiAlias;//消除绘制图形的锯齿g.Clear(Color.White);//以白色清空panel1控件的背景Pen myPen = new Pen(Color.Red, circularity_W);//设置画笔的颜色g.DrawEllipse(myPen, rect); //绘制圆 SizeF Var_Size = new SizeF(rect.Width, rect.Width);//实例化SizeF类Var_Size = g.MeasureString(star_Str, star_Font);//对指定字符串进行测量//要指定的位置绘制星号g.DrawString(star_Str, star_Font, myPen.Brush, new PointF((rect.Width / 2F) + circularity_W - Var_Size.Width / 2F, rect.Height / 2F - Var_Size.Width / 2F));Var_Size = g.MeasureString("专用章", Var_Font);//对指定字符串进行测量//绘制文字g.DrawString("专用章", Var_Font, myPen.Brush, new PointF((rect.Width / 2F) + circularity_W - Var_Size.Width / 2F, rect.Height / 2F + Var_Size.Height * 2));string tempStr = "C#绘图技术之绘制专用章";int len = tempStr.Length;//获取字符串的长度float angle = 180 + (180 - len * 20) / 2;//设置文字的旋转角度for (int i = 0; i < len; i++)//将文字以指定的弧度进行绘制{//将指定的平移添加到g的变换矩阵前g.TranslateTransform((tem_Line + circularity_W / 2) / 2 + (float)(Math.Cos(angle * Math.PI / 180) * tem_Line/2.3),(tem_Line + circularity_W / 2) / 2 + (float)(Math.Sin(angle * Math.PI / 180) * tem_Line/2.3));g.RotateTransform(angle+90);//将指定的旋转用于g的变换矩阵   Brush myBrush = Brushes.Red;//定义画刷g.DrawString(tempStr.Substring(i, 1), Var_Font, myBrush, 0, 0);//显示旋转文字g.ResetTransform();//将g的全局变换矩阵重置为单位矩阵angle += 20;//设置下一个文字的角度}}

具体参考注释!

 

这篇关于实例118-绘图技术-绘制公章的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/354924

相关文章

java图像识别工具类(ImageRecognitionUtils)使用实例详解

《java图像识别工具类(ImageRecognitionUtils)使用实例详解》:本文主要介绍如何在Java中使用OpenCV进行图像识别,包括图像加载、预处理、分类、人脸检测和特征提取等步骤... 目录前言1. 图像识别的背景与作用2. 设计目标3. 项目依赖4. 设计与实现 ImageRecogni

Java操作ElasticSearch的实例详解

《Java操作ElasticSearch的实例详解》Elasticsearch是一个分布式的搜索和分析引擎,广泛用于全文搜索、日志分析等场景,本文将介绍如何在Java应用中使用Elastics... 目录简介环境准备1. 安装 Elasticsearch2. 添加依赖连接 Elasticsearch1. 创

使用C#代码计算数学表达式实例

《使用C#代码计算数学表达式实例》这段文字主要讲述了如何使用C#语言来计算数学表达式,该程序通过使用Dictionary保存变量,定义了运算符优先级,并实现了EvaluateExpression方法来... 目录C#代码计算数学表达式该方法很长,因此我将分段描述下面的代码片段显示了下一步以下代码显示该方法如

使用Python绘制蛇年春节祝福艺术图

《使用Python绘制蛇年春节祝福艺术图》:本文主要介绍如何使用Python的Matplotlib库绘制一幅富有创意的“蛇年有福”艺术图,这幅图结合了数字,蛇形,花朵等装饰,需要的可以参考下... 目录1. 绘图的基本概念2. 准备工作3. 实现代码解析3.1 设置绘图画布3.2 绘制数字“2025”3.3

使用Python绘制可爱的招财猫

《使用Python绘制可爱的招财猫》招财猫,也被称为“幸运猫”,是一种象征财富和好运的吉祥物,经常出现在亚洲文化的商店、餐厅和家庭中,今天,我将带你用Python和matplotlib库从零开始绘制一... 目录1. 为什么选择用 python 绘制?2. 绘图的基本概念3. 实现代码解析3.1 设置绘图画

Oracle Expdp按条件导出指定表数据的方法实例

《OracleExpdp按条件导出指定表数据的方法实例》:本文主要介绍Oracle的expdp数据泵方式导出特定机构和时间范围的数据,并通过parfile文件进行条件限制和配置,文中通过代码介绍... 目录1.场景描述 2.方案分析3.实验验证 3.1 parfile文件3.2 expdp命令导出4.总结

Python绘制土地利用和土地覆盖类型图示例详解

《Python绘制土地利用和土地覆盖类型图示例详解》本文介绍了如何使用Python绘制土地利用和土地覆盖类型图,并提供了详细的代码示例,通过安装所需的库,准备地理数据,使用geopandas和matp... 目录一、所需库的安装二、数据准备三、绘制土地利用和土地覆盖类型图四、代码解释五、其他可视化形式1.

如何用Python绘制简易动态圣诞树

《如何用Python绘制简易动态圣诞树》这篇文章主要给大家介绍了关于如何用Python绘制简易动态圣诞树,文中讲解了如何通过编写代码来实现特定的效果,包括代码的编写技巧和效果的展示,需要的朋友可以参考... 目录代码:效果:总结 代码:import randomimport timefrom math

MySQL的索引失效的原因实例及解决方案

《MySQL的索引失效的原因实例及解决方案》这篇文章主要讨论了MySQL索引失效的常见原因及其解决方案,它涵盖了数据类型不匹配、隐式转换、函数或表达式、范围查询、LIKE查询、OR条件、全表扫描、索引... 目录1. 数据类型不匹配2. 隐式转换3. 函数或表达式4. 范围查询之后的列5. like 查询6

Python开发围棋游戏的实例代码(实现全部功能)

《Python开发围棋游戏的实例代码(实现全部功能)》围棋是一种古老而复杂的策略棋类游戏,起源于中国,已有超过2500年的历史,本文介绍了如何用Python开发一个简单的围棋游戏,实例代码涵盖了游戏的... 目录1. 围棋游戏概述1.1 游戏规则1.2 游戏设计思路2. 环境准备3. 创建棋盘3.1 棋盘类