Я недавно разрабатывал свою собственную библиотеку GUI.Окно создается с использованием Win32 API, а затем внутри него создается Direct2D RenderTarget.Все рисование (кнопки, метки и т. Д.) Происходит внутри RenderTarget.Все хорошо, за исключением качества текста.Когда я смотрю на кнопки Visual Studio, например, текст выглядит настолько четким по сравнению с методом DirectWrite DrawTextW ().
Вот пример изображения:
Я использую DirectWrite для непосредственного рисования текста.`
ID2D1SolidColorBrush* brush;
RenderTarget->CreateSolidColorBrush(D2D1::ColorF(red, green, blue, alpha), &brush);
IDWriteTextFormat* format;
HRESULT h = WriteFactory->CreateTextFormat(std::wstring(font.begin(), font.end()).c_str(), NULL, fontWeight,
fontStyle, DWRITE_FONT_STRETCH_NORMAL, fontSize, L"", &format);
// Center the text horizontally and vertically.
format->SetTextAlignment(textAllignment);
format->SetParagraphAlignment(DWRITE_PARAGRAPH_ALIGNMENT_CENTER);
// Draw text
RenderTarget->DrawTextW(std::wstring(text.begin(), text.end()).c_str(), std::wstring(text.begin(), text.end()).size(), format, D2D1::RectF(xPos, yPos, xPos+width, yPos+height), brush);
brush->Release();
format->Release();
`
Мне было просто интересно, это то, что я должен просто принять и двигаться дальше, или я должен что-то настроить с DWriteFactory?