DirectWrite:拉丁语和复杂脚本使用不同的字体
DirectWrite: Use Different Font for Latin and Complex Script
我使用CreateTextLayout
和CreateTextFormat
用DirectWrite(C++)绘制文本,文本是希伯来语/英语混合的,有没有办法对拉丁语和希伯来语字符使用不同的字体/字号?
谢谢。
使用CreateTextFormat
创建IDWriteTextFormat
时,可以在第一个参数中传递字体家族的名称,也可以在第六个参数中更改字体的大小。
您可以从MSDN获取CreateTextFormat
参数。
以下是Microsoft Windows字体系列的列表,您可以在其中找到拉丁语和希伯来语字体。
我最终调用了IDWriteFont::HasCharacter
来构建所有字符都使用相同字体(希伯来语或拉丁语)的文本范围。
如果该文本范围使用希伯来文字体,我会对其调用textLayout->SetFontSize
来增加字体大小。
这相当于预期了DirectWrite
将执行的字体回调,这是自动的,不能自定义。
相关文章:
- 在C++中测量postscript字体宽度
- 如何通过cpp程序运行shell脚本
- 在程序中编写脚本来编写和编译代码
- 如何在Directwrite中获得给定字体的可用OpenType功能
- 如何在c++中使用system()来运行包含空格的python脚本
- 在cygwin中运行c++脚本时发生错误
- 如何将真正的字符串从python c-api转换为python脚本
- 用于将C++代码转换为 Web 程序集的脚本未终止
- 如何使用C++初始化向量;脚本化值不是数组、指针或矢量错误
- 在原子中使用犰狳与脚本
- 我适合在我的构建系统中使用 shell 脚本而不是AX_CHECK_COMPILE_FLAG吗?
- CANoe - 无法在 CAPL 脚本中打开.dll
- 在从Qt调用的Python脚本中导入OpenCV崩溃
- 将数组/向量发送到 c++ 脚本的 cython 示例
- SetCurrentConsoleFontEx() 不适用于自定义安装的字体
- 脚本的多重定义::LState
- C++ wxWidgets:在创建小部件后设置字体
- 从C++应用获取PowerShell脚本输出
- C++ wxWidgets:更改大小器的字体
- DirectWrite:拉丁语和复杂脚本使用不同的字体