|
怎样设置AcDbMText对齐方式
[code]//_T("\\pxql;") 居左
//_T("\\pxqr;") 居右
//_T("\\pxqc;") 居中
//_T("\\pxqd;") 分散对齐
//MtextInfoId 文字ID
AcDbObjectPointer<AcDbMText> pEnt_1(MtextInfoId, AcDb::kForWrite);
if (pEnt_1.openStatus() == Acad::eOk)
{
ACHAR * pAChar = pEnt_1->contents();//此函数返回文字内容和对齐样式
//eg:文字内容是 小青峰 格式设置为居左
//在CAD属性栏里面能够看到文字内容是: \pxql;小青峰
//CAD是利用_T("\\pxql;")_T("\\pxqr;")_T("\\pxqc;")_T("\\pxqd;") 參数设置多行文本的对齐方式
CString strTmp(pAChar);
int nIndex = strTmp.Replace(_T("\\pxql;"),_T("\\pxqc;")); //由原来的居左设置为居中
int nIndex = pEnt_1->setContents(strTmp);//将格式和内容一同设置进去就能够了
pEnt_1->setAttachment(AcDbMText::kMiddleCenter);//对正点 这个函数不过设置文字的插入点位置,对齐方式设置不了
pEnt_1->text(); //获得不过文字内容
//自己想要什么效果 自己组合好了,
}[/code] |
|