Помимо ответа @ demoncodemonkey, вы можете вызвать CDC :: DrawText с флагом DT_CALCRECT
. Таким образом, текст не будет нарисован, но CRect, который вы передадите функции, будет иметь ширину и высоту текста для рисования.
Это особенно полезно, если вы хотите рисовать текст с переносами строк (используя флаг DT_WORDBREAK
). Вы не сможете сделать это, используя CDC::GetTextExtent
.