明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1656|回复: 0

高手们指点一下菜鸟

[复制链接]
发表于 2006-1-4 20:49 | 显示全部楼层 |阅读模式

大家看看我下面这个ARX写字的函数哪里有错

其中字体的宽度系数和我设置的不一样

其他地方没问题

各位给看看

或者给个ARX写字的函数源码

谢谢!!

createtext()

{

Acad::ErrorStatus es;
  AcDbTextStyleTable *pTsTable;

  es = curDoc()->database()->getSymbolTable(pTsTable,AcDb::kForRead);
  if (es != Acad::eOk)
  {
   AfxMessageBox("Couldn't get the text style table.");
  }

  CString theFont = "宋体";

  if (!pTsTable->has((LPTSTR)(LPCSTR)theFont))
  {
   AcDbTextStyleTableRecord *pStyle = new AcDbTextStyleTableRecord;

   pStyle->setFont((LPTSTR)(LPCTSTR)theFont,Adesk::kFalse,Adesk::kFalse,0,34);
   pStyle->setFileName(theFont);
   pStyle->setBigFontFileName(theFont);

   pStyle->setTextSize(8);
   pStyle->setXScale(0.3);
   pStyle->setObliquingAngle(0);
   pStyle->setName(theFont);
   pStyle->setIsShapeFile(Adesk::kFalse);
   pStyle->setIsVertical(Adesk::kFalse);

   pTsTable->upgradeOpen();
   es = pTsTable->add(pStyle);
   if (es != Acad::eOk)
   {
    CString message;
    message.Format("%d",es);
    AfxMessageBox(message);
   }
   pStyle->close();
  }

  AcDbObjectId styleId;

  es = pTsTable->getAt(theFont,styleId);
  if (es != Acad::eOk)
  {
   CString message;
   message.Format("%d",es);
   AfxMessageBox(message);
  }


  pTsTable->close();
 

  AcDbText * text = new AcDbText(AcGePoint3d(10,10,0),"你好",styleId,8,0);
  AcDbBlockTable *pBlockTable;
  acdbHostApplicationServices()->workingDatabase()->getSymbolTable(pBlockTable,AcDb::kForRead);
  AcDbBlockTableRecord *pBlockTableRecord;
  pBlockTable->getAt(ACDB_MODEL_SPACE,pBlockTableRecord,AcDb::kForWrite);
  pBlockTable->close();
  AcDbObjectId textId;
  es = pBlockTableRecord->appendAcDbEntity(textId,text);
 
  text->close();
  pBlockTableRecord->close();

}

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-7 12:53 , Processed in 1.574412 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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