明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 4054|回复: 5

有关获取AcDbMText的文本内容。。。。。。

[复制链接]
发表于 2004-12-4 17:02:00 | 显示全部楼层 |阅读模式
利用contents()函数得到的AcDbMText的文本字符内容如下: {\fNSimSun|b0|i0|c134|p49;\c0;明\fSimSun|b0|i0|c134|p2;\C3;经\C6;通\C4;道\fFangSong
  _GB2312|b0|i0|c134|p49;} 以上字符中包含了字体,大小,颜色等内容,如果只需要提取其中的有效字符(即:明经通道),用什么方法可以做到? 请高手指点.........
发表于 2004-12-4 21:23:00 | 显示全部楼层
内容由字体和字体内容构成的,中间以分号分开的.


AcDbMText *pMt;//获得多行标注指针


CString str=pMt->contents();


int nPos=str.Find(";");


str=str.Mid(nPos+1);//提取后面的就是标注的内容了
 楼主| 发表于 2004-12-5 10:28:00 | 显示全部楼层
这是一种好方法,但是对上面例子似乎行不通。。。。


并非所以";"后面都是有效字符啊。


当然如果AcDbMText中的文件都用相同字体,颜色,大小等的话这种方法就可以。


不是么?
发表于 2004-12-5 11:11:00 | 显示全部楼层
以前讨论过,将多行文字分解得到单行文字,再提取其字符串吧。
 楼主| 发表于 2004-12-5 15:23:00 | 显示全部楼层
如果能分解成为单行文字(AcDbText)那是最好的了? 可以简单的用TextString()直接获取, 但是我不了解怎样分解AcDbMText, 还是请zfbj版主具体分析一下,3Q
发表于 2004-12-5 17:18:00 | 显示全部楼层
使用AcDbEntity::explode函数,SDK中相关的例子。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-26 09:57 , Processed in 0.168212 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表