К сожалению, Microsoft решила удалить поддержку собственного текста из своего DirectX API.Теперь вы можете либо использовать DirectWrite, а затем, как вы сказали, выполнить рендеринг в GDI или D2D, что несколько неуклюже, или, в качестве альтернативы, создать свой собственный класс обработки шрифтов и использовать его (что я и выбрал для своего проекта).).
Существует хороший учебник по созданию собственного класса обработки шрифтов, здесь: http://www.rastertek.com/dx11tut12.html
Очевидно, вы должны написать свой собственный, но он обеспечивает хорошую отправную точкуи позволяет просматривать все необходимые процедуры (возможно, вы захотите добавить поддержку нескольких шрифтов, для чего я рекомендую создать класс Font, который ваш Font-Handler хранит с ассоциативной строкой в std :: map).
Надеюсь, это поможет!:)