C# Graphics.DrawString加背景色

请问怎么加背景色呢?因为是在一张有点儿乱的图片上DrawString,如果只写文字,背景是透明的的话看起来很费劲,可不可以给文字加上背景色写?因为事先不知道文字有多长,最... 请问怎么加背景色呢?
因为是在一张有点儿乱的图片上DrawString,如果只写文字,背景是透明的的话看起来很费劲,可不可以给文字加上背景色写?

因为事先不知道文字有多长,最好不要用Graphics.FillPolygon之类的先画个方框再写之类的方法。
展开
 我来答
dkxpsg
2009-07-23 · TA获得超过1627个赞
知道小有建树答主
回答量:592
采纳率:0%
帮助的人:1042万
展开全部
你在绘制字符串之前可以使用Graphics的MeasureString方法测量它的尺寸再绘制一个相应大小的矩形就行了,如下
Graphics g = this.CreateGraphics();
Font font = new Font("宋体", 9f);
PointF pointF = new PointF(10, 10);
SizeF sizeF = g.MeasureString("Hello World!", font);
g.FillRectangle(Brushes.White, new RectangleF(pointF, sizeF));
g.DrawString("Hello World!", font, Brushes.Black, pointF);
g.Dispose();
font.Dispose();
博思aippt
2024-07-20 广告
博思AIPPT是基于ai制作PPT的智能在线工具,它提供了4种AI制作PPT的方式,包括AI生成大纲、AI直接生成PPT、文本生成PPT、AI提炼文档生成PPT,一站式集成多种AI生成PPT的方式,可满足办公用户的不同需求和使用场景。ai生... 点击进入详情页
本回答由博思aippt提供
MaricKing
2009-07-23
知道答主
回答量:9
采纳率:0%
帮助的人:0
展开全部
文字的长度不知道,可以让它是个变量,变量.Length 就可以知道长度了。然后再把要写文字的部分填充了。最后在DrawString();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式