我使用CreateTextLayout
和CreateTextFormat
使用DirectWrite(C ++)绘制文本,文本是混合希伯来语/英语,有没有办法为拉丁语和希伯来语使用不同的字体/字体大小字符?
感谢。
答案 0 :(得分:1)
使用IDWriteTextFormat
创建CreateTextFormat
时,可以在第一个参数中传递字体系列的名称,并可以在第六个参数中更改字体的大小。
您可以从MSDN获取CreateTextFormat
参数。
Here是Microsoft Windows字体系列的列表,您可以在那里找到拉丁语和希伯来语字体系列。
答案 1 :(得分:0)
我最终调用IDWriteFont::HasCharacter
来构建文本范围,其中所有字符都使用相同的字体(希伯来语或拉丁语)。
如果该文本范围使用希伯来字体,我在其上调用textLayout->SetFontSize
以增加字体大小。
这相当于预期字体回调DirectWrite
会做,这是自动的,无法自定义。