如何使用Directx在屏幕上绘制文本?

时间:2012-06-23 06:08:40

标签: c# .net directx

我在谷歌的论坛上搜索试图解决这个问题,但我不能。我已经做了一些关于绘制原始三角形,线条等的教程。我现在想要绘制文本,甚至可能是纹理文本/字体。完全陷入困境,有人可以发布一个片段,允许我在c#管理的directx中执行此操作吗?

2 个答案:

答案 0 :(得分:1)

using D3D = Microsoft.DirectX.Direct3D; 
private D3D.Font text;
private void InitializeFont() 
{ 
System.Drawing.Font systemfont = new System.Drawing.Font("Arial", 12f, FontStyle.Regular);
 text = new D3D.Font(device, systemfont); 
} 

有关详情,请点击此链接:Displaying text using DirectX

答案 1 :(得分:1)

如果您使用的是DirectX 9,@irsog发布的链接是一个很好的教程,我以前使用它并可以验证结果。如果您使用DirectX 10,我建议使用以下教程:

请注意,如果您使用DirectX 11,则会遇到一些麻烦。 Microsoft从DirectX 11中删除了Direct2D,因此您必须调用DirectX 10 API或创建自己的Font接口。这两个选项都在这里探讨:

How do you draw text in DirectX 11?