Я использую этот код для рисования текста в панели:Графика в C# (.NET)
Graphics g = panel1.CreateGraphics();
g.DrawString(...);
Так что я хочу знать, какой размер входной текст будет при визуализации на панели.
Я использую этот код для рисования текста в панели:Графика в C# (.NET)
Graphics g = panel1.CreateGraphics();
g.DrawString(...);
Так что я хочу знать, какой размер входной текст будет при визуализации на панели.
Используйте g.MeasureString()
, чтобы получить ширину строки в грапическом контексте.
// Set up string.
string measureString = "Measure String";
Font stringFont = new Font("Arial", 16);
// Measure string.
SizeF stringSize = new SizeF();
stringSize = e.Graphics.MeasureString(measureString, stringFont);
Вы также можете использовать TextRenderer.MeasureText, которые иногда проще в использовании, чем MeasureString.
Но это точно, если вы используете TextRenderer.DrawText – Eric
Ницца, это ново для меня. – Finglas
Несколько моментов, которые я хотел бы очистить: 1) = new SizeF(); здесь нет необходимости; 2) Хорошей практикой является удаление шрифтов (и многих других графических объектов), таких как stringFont.Dispose() или использование инструкции «using». – Zenya