Как настроить ширину шрифта с помощью Uniscribe API
Пожалуйста, потерпите меня, я новичок в Uniscribe, поэтому надеюсь, что это не глупый вопрос, но я не смог найти решение где-либо еще. Итак, здесь идет...
Я пытаюсь использовать Uniscribe API, чтобы уменьшить ширину шрифта; то есть, учитывая конкретный шрифт определенной высоты, я хотел бы иметь возможность уменьшить ширину каждого символа (и все соответствующие интервалы) на некоторый определенный пользователем процент.
Я успешно достиг этого без вызова каких-либо функций Uniscribe, получив LOGFONT
структура для текущего шрифта и корректировки lfWidth
поле в процентах от его первоначального значения. Я понимаю, что это всего лишь средняя ширина символа, но, похоже, он дал желаемый результат.
Однако, когда я пытаюсь сделать то же самое с помощью Uniscribe, я заметил, что lfWidth
поле обнуляется после 0 обращений к ScriptShape()
, В результате весь визуализированный текст выводится с использованием его исходной ширины. Я затрудняюсь объяснить, почему это или что нужно сделать, чтобы обойти это.
У кого-нибудь есть идеи, возможно ли сделать то, что я пытаюсь сделать?