• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

[C#绘图]在半透明矩形上绘制字符串

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

首先要绘制一个半透明的矩形,用到的方法当然是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);
}

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

程序执行效果:


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
c#运用this.invoke()在多线程时对UI进行修改发布时间:2022-07-10
下一篇:
C#实例之简单聊天室(状态管理)发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap