Я пытаюсь вычислить ширину в пикселях столбцов Excel, как описано в этой публикации , используя официальную формулу из спецификации OpenXML. Однако, чтобы применить эту формулу, мне нужно знать Максимальная ширина цифры шрифта Normal , которая является шириной пикселя самой широкой цифровой цифры. Спецификация OpenXML дает этот пример в качестве пояснения:
На примере шрифта Calibri максимальная ширина цифры в 11 точек
размер 7 пикселей (при 96 dpi).
Я проверил, что это правильно, визуально изучив 11-точечную цифру Calibri, и она действительно имеет ширину 7 пикселей. Итак, я пытаюсь создать метод, который будет возвращать максимальную ширину цифры для любого шрифта / размера.
Я следовал рекомендациям, сформулированным в этом вопросе , но он не дает ожидаемых результатов.
Вот мой тестовый код:
var font = new Font("Calibri", 11.0f, FontStyle.Regular);
for (var i = 0; i < 10; i++)
{
Debug.WriteLine(TextRenderer.MeasureText(i.ToString(), font));
}
Это сообщает, что все цифры имеют ширину 15.
Есть предложения, пожалуйста?
Спасибо,
Тим