如何创建IDWriteFontFace IDWriteTextFormat(How to creat

2019-09-21 03:55发布

我创建W8 C ++ / CX的DirectX应用程序,我试图用从自己的应用程序存储自定义字体文件。 我弄清楚如何使用IDWriteFactory :: CreateFontFileReference加载IDWriteFontFile从目录,然后如何从它创建IDWriteFontFace。

我不知道现在是如何使用IDWriteFontFace装载IDWriteTextFormat,如果有可能的。 我应该这样做虽然IDWriteFontCollection?

很抱歉,如果答案是非常愚蠢和琐碎,我很新的DirectX和学习在旅途中的一切。

Answer 1:

请参阅MSDN上DirectWrite的帮助主题自定义字体集合为如何在运行时加载自己的自定义字体必要的高级视图。 你如何做到这一点的猜测是错误的。

看来,对如何直接与Win7SDK DirectWrite的样品做船最好的样本。 看到的DirectWrite \ CustomFont的C ++样品 。

该过程不涉及获得或使用任何IDWriteFontFace类型。 事实上,你可以用一个唯一能做的IDWriteFontFace我能看到的是确定glyphindices

相反,你开始一个工厂,在所有的DirectX API的,然后与工厂,你想一个字体集合,和字体文件加载程序 ,并列举使用字体集字体。 创建一个文本格式的接口希望你自定义的字体集合,不是您的字体脸通。

获得字形信息的正确使用接口类型IDWritefontFace的样品被发现这里在CodeProject上。



Answer 2:

您不能创建IDWriteFontFace IDWriteTextFormat,您可以用功能IDWriteFactory创建IDWriteTextFormat例如:: CreateTextFormat。 IDWriteFontFace被用来描述字体的属性,而IDWriteTextFormat用于描述文本的属性。



文章来源: How to create IDWriteTextFormat from IDWriteFontFace