У меня есть TextBox в моей форме, и я рисую в нем строку, как показано ниже.Пользовательский текст чертежа C#
Font myFont = new Font("Arial",18F,FontStyle.Regular,GraphicsUnit.Point,128);
Graphics g = myTextBox.CreateGraphics();
Brush b = new SolidBrush(Color.Red);
g.DrawString("Item Drawn with DrawString",myFont ,b,new PointF(1,1));
Строка, отображаемая в текстовом поле. Затем я попытался под кодом
Font myFont = new Font("Arial",18F,FontStyle.Regular,GraphicsUnit.Point,128);
Graphics g = myTextBox.CreateGraphics();
TextRenderer.DrawText(g,"Item Drawn with DrawText",myFont,new Point(1,1),Color.Red);
Здесь проблема. Хотя два метода: g.DrawString()
и TextRenderer.DrawText()
используют тот же шрифт, есть разница в стиле шрифта. То есть некоторые символы отображаются по-разному. Если я использую «1» вместо «128» в шрифте, оба метода будут отображать символы как уникальные.
Если я изменю значение GdiCharSet(128)
в шрифте, то при использовании метода g.DrawString()
эффекта не будет. Мой вопрос: почему метод g.DrawString()
исключает значение GdiCharSet
?