博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[C#绘图]在半透明矩形上绘制字符串
阅读量:7170 次
发布时间:2019-06-29

本文共 1352 字,大约阅读时间需要 4 分钟。

首先要绘制一个半透明的矩形,用到的方法当然是FillRectangle()。这个函数在调用的时候除了要指明要绘制的矩形外,还要指明填充矩形的背景色。具体的方法就是在绘制矩形的时候传给它一个画刷Brush,对这个画刷指定颜色。带有透明度的颜色就是Color.FromArgb(int32,int32,int32,int32)。

具体代码:

private void Form1_Paint(object sender, PaintEventArgs e)
{
    //获取画布的绘制指针
    Graphics g = e.Graphics;
    //红色笔绘制一个矩形
    Rectangle rc = new Rectangle(10, 10, 100, 100);
    g.DrawRectangle(new Pen(Color.Red), rc);
    //利用带透明度的画刷填充矩形
    SolidBrush sb = new SolidBrush(Color.FromArgb(80, 255, 255, 0));
    g.FillRectangle(sb, rc);
}

使用指定StringFormat的格式化特性,用指定的Brush和Font对象在指定的矩形绘制指定的文本字符串。

代码:

private void Form1_Paint(object sender, PaintEventArgs e){    //获取画布的绘制指针    Graphics g = e.Graphics;    //红色笔绘制一个矩形    Rectangle rc = new Rectangle(10, 10, 100, 100);    g.DrawRectangle(new Pen(Color.Red), rc);    //利用带透明度的画刷填充矩形    SolidBrush sb = new SolidBrush(Color.FromArgb(80, 255, 255, 0));    g.FillRectangle(sb, rc);    //在前面的矩形中绘制字符串    string drawString = "35℃";    //创建字符串的绘制字体和画刷    Font drawFont = new Font("Arial", 16);    SolidBrush drawBrush = new SolidBrush(Color.Red);    //设置字符串格式    StringFormat drawFormat = new StringFormat();    drawFormat.Alignment = StringAlignment.Center;    //在矩形中绘制字符串,并且使用drawFormat的性质    g.DrawString(drawString, drawFont, drawBrush, rc, drawFormat);}

 提示:上面个的摄氏度符号是在搜狗输入法中打出来的。

程序执行效果:

转载于:https://www.cnblogs.com/stemon/p/4263154.html

你可能感兴趣的文章
更新windows SID工具,对于虚拟机复制很有用
查看>>
安装TOMCAT
查看>>
-bash: lsof: command not found 解决方法
查看>>
《.NET应用架构设计:原则、模式与实践》新书博客--试读-2.1.2 设计原则实战
查看>>
大家技术探讨
查看>>
使用Myeclipse自带的xFire来实现WebService
查看>>
《UNIX环境高级编程》apue.h 头文件的问题
查看>>
系统分析师证书求挂靠,请联系qq 369681392
查看>>
ubuntu中root与user相互切换
查看>>
(转载)Http 请求处理流程
查看>>
GetVersion和GetVersionEx
查看>>
软工实践第一次作业
查看>>
php采集利器snoopy应用技巧
查看>>
我的友情链接
查看>>
安装虚拟机shell脚本
查看>>
去除数组中除第一个负数的所有负数
查看>>
哪些因素导致Python运行效率低?python入门编程
查看>>
[Python]第一个爬虫练习
查看>>
提高Python代码效率的方法
查看>>
zabbix使用msmtp&&mutt搭建邮件告警服务
查看>>