Drawtext给出“?”对于一些土耳其语字符

时间:2019-06-21 08:13:21

标签: c# c++ directx-9 drawtext

我使用c#Graphics.DrawString方法在图像上绘制文本叠加层。即使操作系统没有土耳其语软件包,它也可以绘制土耳其语字符。但是由于性能问题,我现在使用DirectX-9进行绘制。如果操作系统具有土耳其语语言包,则DirectX会绘制土耳其语字符,但如果没有,则不会绘制。

即使操作系统没有土耳其语软件包,是否可以通过DirectX绘制土耳其语字符?

字符串通过包装器从c#到c ++。

drawStringWrapper(System::String^ text)
{
   char* textPtr = (char*)System::Runtime::InteropServices::Marshal::StringToHGlobalAnsi(text).ToPointer();
   drawStringD3DX(textptr);
}

这是我创建字体的方式,

D3DXCreateFont(dev,fontSize,0,FW_NORMAL,1,false,TURKISH_CHARSET,OUT_DEFAULT_PRECIS,DEFAULT_QUALITY, DEFAULT_PITCH | FF_MODERN, L"Arial", &d3dxFont);

我尝试了ANSI_CHARSETDEFAULT_CHARSET。我也尝试了不同的字体,例如:L"Generic Sans Serif"

0 个答案:

没有答案