配置した文字のフォント名を取得する方法を紹介します。
まず、配置した文字要素でGetITextQuery()を使ってITextQueryCP textQueryを定義します。
次にtextQuery->GetTextPart()を使ってTextBlockPtr textBlockを定義します。
続きましてtextBlock->GetRunPropertiesForAdd()でRunPropertiesCR runPropsを定義します。
最後にrunProps.GetFont()でFontが取得できてfont.GetName()でフォント名が取得できます。
void getTextProperties() { ElementId id= 9199; EditElementHandle myText(id,ACTIVEMODEL); ITextQueryCP textQuery = myText.GetITextQuery(); ITextPartIdPtr textPart; TextBlockPtr textBlock = textQuery->GetTextPart(myText, *textPart); RunPropertiesCR runProps = textBlock->GetRunPropertiesForAdd(); DgnFontCR font = runProps.GetFont(); myStr.Sprintf(L"font name is %s", font.GetName().c_str()); mdlDialog_dmsgsPrint(myStr); }