为什么我的D3D9字体质量很差

时间:2017-09-11 22:20:11

标签: c++ fonts directx directx-9

我有一个问题。我尝试使用DirectX 9在我的屏幕上绘图,但出于某种原因所有字体(使用圆边)我尝试使用的质量很差,这还包括从下载的字体互联网,我不知道我做错了什么,或者我是否只是偏执狂。

图片:

2 fonts, Windows font and custom internet font

500倍变焦: with 500x zoom

我的创建字体代码:

D3DXCreateFont(pDevice, 30, 0, FW_BOLD, 1, 0, DEFAULT_CHARSET, OUT_DEFAULT_PRECIS, DEFAULT_QUALITY, DEFAULT_PITCH | FF_DONTCARE, "Roboto", &pFont);

我尝试了很多东西,比如:

FW_BOLD to FW_SEMIBOLD
DEFAULT_QUALITY to ANTIALIASED_QUALITY

但没有显示结果。

我的DrawString函数:

void D3D9Draw::String(int x, int y, DWORD Flag, int FontID, D3DCOLOR Color, std::string String, ...)
{
    char Buffer[256];

    va_list args;
    va_start(args, String);
    vsprintf_s(Buffer, String.c_str(), args);
    va_end(args);

    if (FontID >= (int)m_Font.size())
        FontID = 0;

    RECT Rect = { x, y, x, y };
    m_Font[FontID]->DrawText(NULL, Buffer, -1, &Rect, Flag | DT_NOCLIP, Color);
}
顺便说一句,抱歉我的坏人。

0 个答案:

没有答案