greatsokol wrote:
> Извините, может быть я не в курсе глубинных процессов, но, если я инициализирую структуру типа LOGFONT перед передачей в диалог выбора фонта и указываю lfHeight=14, то далог, будучи показанным, показывает мне кегль равный 11 (не точное значение, но вобщем — отличное от ожидаемого).
Как ты определяешь кегль на диалоге?
Корректный метод определения: иметь на диалоге заглавную Х, померить ее высоту в пикселах (h), разделить на разрешение устройства дисплея, и разделить на 1/72 (размер пункта в дюймах).
Т.е., если высота буквы Х составляет 12 пикселов, разрешение монитора 96ppi, то размер шрифта Х в пунктах (кегль) есть:
12 / 96 * 72 = 9 пунктов.
Имей ввиду, что гарнитуры разных производителей по разному трактуют размер шрифта: у некоторых он включает внутренний интерлиньяж, у некоторых нет.
> Может быть кто-нибудь с этим уже боролся?
Я конкретно занимался device independent precise text layout (как в продуктах Adobe).
--
Maxim YegorushkinPosted via RSDN NNTP Server 1.9