Здравствуйте, Marty, Вы писали:
M>Здравствуйте!
M>Меня не устраивает GDI+ по скорости, вот, думаю, на что переползти — наверное Direct2D? Помимо рисования примитивов я хочу рисовать буквы системными шрифтами, на любых в идеале языках. Как там с этим? Или, может что-то ещё попробовать?
Да, Direct2D. А специально для текста у них есть DirectWrite (DWrite):
https://learn.microsoft.com/en-us/windows/win32/directwrite/direct-write-portal
DirectWrite, a DirectX API, provides these features and more.
A device-independent text layout system that improves text readability in documents and in UI.
High-quality, sub-pixel, Microsoft ClearType text rendering that can use GDI, Direct2D, or application-specific rendering technology.
Hardware-accelerated text, when used with Direct2D.
Support for multi-format text.
Support for the advanced typography features of OpenType fonts.
Support for the layout and rendering of text in all supported languages.
GDI-compatible layout and rendering.
Несколько раз доводилось работать с технологиями DirectX, результатами остался вполне доволен.
Хотя, надо признать, повозиться тоже пришлось изрядно — это все специфика DirectX, соответствующая терминология и концепции, там на первых порах
можно утонуть в количестве информации. Но оно того стоит. Кстати, в DirectWrite есть пара очень классных вещей, которым нет эквивалентов в GDI/GDI+.
Например "greyscale antialiasing", когда сглаживание шрифтов выполняется манипуляциями не с RGB, а с оттенками серого. Визуально выглядит лучше
(отправляю в гугл с запросом: "cleartype vs greyscale") и, насколько я знаю, отрисовывается быстрее.
M>Самому возится с отрисовкой шрифтов неохота, хочу TextOut(pos, hFont, "Text")
Да, там примерно так все и делается. Правда, после некоторой подготовки и двух-трехнедельного "курения мануалов"