天气与日历 切换到窄版

 找回密码
 立即注册
中国膜结构网
十大进口膜材评选 十大国产膜材评选 十大膜结构设计评选 十大膜结构公司评选
查看: 6|回复: 0

获取文字的长度

[复制链接]
  • TA的每日心情
    开心
    昨天 15:23
  • 签到天数: 69 天

    [LV.6]常住居民II

    410

    主题

    167

    回帖

    2704

    积分

    管理员

    积分
    2704
    发表于 2024-6-22 09:46:18 | 显示全部楼层 |阅读模式
    //getCurrentTextStyle是子函数,用于获取当前活动的文字样式及宽度因子
    double CBasic::getLength( CString str, double height )
    {
    ACHAR *txtStyle = NULL;
    double width = NULL;
    CBasic::getCurrentTextStyle( txtStyle, width );
    struct resbuf *txtlist;
    //下面的acutBuiltList内容,最好与下面的扩展内容结合来看,注意的是前面的数字,如1,40,41,7
    txtlist = acutBuildList( RTDXF0, _T("TEXT"),
                                              1, str,
                                              40, height,
                                              41, width,
                                              7, txtStyle,
                                              NULL);
    ads_point bottomLeft, upRight;
    acedTextBox( txtlist, bottomLeft, upRight );
    acutRelRb( txtlist );
    return fabs( bottomLeft[X] - upRight[X]);
    }



    acdbHostApplicationServices()->workingDatabase()->textstyle()   得到当前TEXTSTYLE变量定义的字体ID。




    objectARX获取当前图层所有文字样式
    复制代码
    void GetAllTextStyle(std::vector<CString> &textStyle)
    {
        textStyle.clear();
        AcDbTextStyleTable *pTextStyleTbl = NULL;
        acdbHostApplicationServices()->workingDatabase()->getSymbolTable(pTextStyleTbl, AcDb::kForRead);
        AcDbTextStyleTableIterator *pIt = NULL;
        pTextStyleTbl->newIterator(pIt);
        for (;!pIt->done();pIt->step())
        {
            AcDbTextStyleTableRecord *pRcd = NULL;
            if (pIt->getRecord(pRcd, AcDb::kForRead) == Acad::eOk)
            {
                TCHAR *szName = NULL;
                pRcd->getName(szName);
                if (_tcslen(szName)>0)
                {
                    textStyle.push_back(szName);
                }
                acutDelString(szName);
                pRcd->close();
            }
        }
        delete pIt;
        pTextStyleTbl->close();
    }

     

     

     

     

    获取文字的长度
    中国膜结构网打造全中国最好的膜结构综合平台 ,统一协调膜结构设计,膜结构施工,膜材采购,膜材定制,膜结构预算全方位服务。 中国空间膜结构协会合作单位。
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|Archiver|手机版|中国膜结构网|中国膜结构协会|进口膜材|国产膜材|ETFE|PVDF|PTFE|设计|施工|安装|车棚|看台|污水池|

    GMT+8, 2024-7-1 05:35 , Processed in 0.057849 second(s), 21 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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