配置した文字は横書きか縦書きかを取得する方法


配置した文字は横書きか縦書きかを取得する方法を紹介します。

まず、配置した文字でGetITextQuery()を使ってITextQueryCP textQueryを定義します。

次に、textQuery->GetTextPart()を使ってTextBlockPtr textBlockを定義します。

textBlock->GetProperties().IsVertical()で文字が横書きか縦書きかが取得できます。

void getTextProperties()
{	
ElementId id= 9199;
	EditElementHandle myText(id,ACTIVEMODEL);

	ITextQueryCP textQuery = myText.GetITextQuery();
	
	ITextPartIdPtr textPart;
	TextBlockPtr textBlock = textQuery->GetTextPart(myText, *textPart);

	myStr.Sprintf(L"isVertical = %d", textBlock->GetProperties().IsVertical());
	mdlDialog_dmsgsPrint(myStr);
}