请耐心等待,我是Uniscribe的新手,所以我希望这不是一个愚蠢的问题,但我无法在其他任何地方找到解决方案。所以,这里......
我正在尝试使用Uniscribe API来减少字体的宽度;也就是说,给定特定高度的特定字体,我希望能够通过某个用户定义的百分比减少每个字符的宽度(以及所有相关的间距)。
通过获取当前字体的LOGFONT
结构并将lfWidth
字段调整为其原始值的百分比,我已成功实现了此功能,而无需调用任何Uniscribe函数。我意识到这只是一个平均字符宽度,但它似乎有所需的结果。
然而,当我尝试使用Uniscribe做同样的事情时,我注意到lfWidth
字段在调用ScriptShape()
后被重置为0。因此,所有渲染文本都使用其原始宽度输出。我无法解释为什么这样做或者该做些什么来解决它。
是否有人知道我是否有可能做我想做的事情?