C# 使用DrawString方法复制标签
我需要在Infragistics工具栏上画一个字符串,我不能使用标签,因为它的背景实际上不是透明的 我已经设法使用DrawString方法按需要覆盖文本,但问题是文本与标签不相似。它更厚,有别名,而且出于某种原因是黑色的 我应该如何更改im代码以使用DrawString方法复制标签的外观相同字体、大小、前景色 以及守则:C# 使用DrawString方法复制标签,c#,.net,winforms,drawstring,C#,.net,Winforms,Drawstring,我需要在Infragistics工具栏上画一个字符串,我不能使用标签,因为它的背景实际上不是透明的 我已经设法使用DrawString方法按需要覆盖文本,但问题是文本与标签不相似。它更厚,有别名,而且出于某种原因是黑色的 我应该如何更改im代码以使用DrawString方法复制标签的外观相同字体、大小、前景色 以及守则: FontFamily fontFamily = new FontFamily("Microsoft Sans Serif"); Font fon
FontFamily fontFamily = new FontFamily("Microsoft Sans Serif");
Font font = new Font(
fontFamily,
17,
FontStyle.Regular,
GraphicsUnit.Pixel);
SolidBrush solidBrush = new SolidBrush(SystemColors.ControlText);
drawParams.Graphics.TextRenderingHint = TextRenderingHint.AntiAlias;
drawParams.Graphics.DrawString("String Drawn with DrawString method", font, solidBrush, textEditorLoc.X, textEditorLoc.Y + 25);
尝试使用类:
同时将TextRenderingHint保留为系统默认值,并使用与label相同的字体大小。尝试使用类:
同时将TextRenderingHint保留为系统默认值,并使用与标签相同的字体大小。标签的标准文本大小为8,25点,或大约11像素。17像素的大小导致文本大小为13磅 试试这个
FontFamily fontFamily = new FontFamily("Microsoft Sans Serif");
Font font = new Font(
fontFamily,
8.25f,
FontStyle.Regular,
GraphicsUnit.Point);
SolidBrush solidBrush = new SolidBrush(SystemColors.ControlText);
e.Graphics.DrawString("String Drawn with DrawString", font, solidBrush, textEditorLoc.X, textEditorLoc.Y + 25);
标签的标准文本大小为8,25点或大约11像素。17像素的大小导致文本大小为13磅 试试这个
FontFamily fontFamily = new FontFamily("Microsoft Sans Serif");
Font font = new Font(
fontFamily,
8.25f,
FontStyle.Regular,
GraphicsUnit.Point);
SolidBrush solidBrush = new SolidBrush(SystemColors.ControlText);
e.Graphics.DrawString("String Drawn with DrawString", font, solidBrush, textEditorLoc.X, textEditorLoc.Y + 25);
我也有类似的问题。DrawString方法与DataGridView中的PaintCells不同。字体变薄了。TextRenderer.DrawString解决了这个问题。我也遇到了类似的问题。DrawString方法与DataGridView中的PaintCells不同。字体变薄了。TextRenderer.DrawString解决了这个问题。