乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 106|回复: 5

菜鸟求教:怎么指定“宽度因子”?

[复制链接]

13

主题

36

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
88
发表于 2014-8-26 16:58:00 | 显示全部楼层 |阅读模式
各位好!
       我在程序里面指定了文字样式,可是发现“宽度因子”不对。我预设的文字样式“宽度因子”为0.7,但是我通过程序指定TextStyleId后发现“宽度因子”变成了1.0。怎么通过程序指定呢?
       谢谢啊!
回复

使用道具 举报

4

主题

104

帖子

7

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
120
发表于 2014-8-26 17:10:00 | 显示全部楼层
(defun c:kuu()
  (setq ent(entget (car (entsel))))
  (setq ge (getdist "\n输入文字宽度:"))
  (entmod (subst (cons 41 ge) (assoc 41 ent) ent))
  (princ)
  )
点选文字,直接改宽度
回复

使用道具 举报

72

主题

2726

帖子

9

银币

社区元老

Rank: 75Rank: 75Rank: 75

铜币
3014
发表于 2014-8-26 19:54:00 | 显示全部楼层
  1.         [CommandMethod("t2")]
  2.         public static void Test2()
  3.         {
  4.             using (var tr = new DBTransaction())
  5.             {
  6.                 var tsid = tr.TextStyleTable.Add("Test1", "gbenor.shx", "gbcbig.shx", 0.7);
  7.                 var btr = tr.OpenModelSpace();
  8.                 var tstr = tr.TextStyleTable["Test1"].GetObject(tr);
  9.                 var txt =
  10.                     new DBText
  11.                     {
  12.                         TextStyleId = tsid,
  13.                         TextString = "hello",
  14.                         Position = new Point3d(10,10,0),
  15.                         WidthFactor = 0.7,
  16.                     };
  17.                 tr.AddEntity(btr, txt);
  18.             }
  19.         }
回复

使用道具 举报

2

主题

29

帖子

6

银币

初来乍到

Rank: 1

铜币
37
发表于 2014-8-26 21:07:00 | 显示全部楼层
把你写的程序贴上来。
回复

使用道具 举报

13

主题

36

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
88
发表于 2014-9-5 10:59:00 | 显示全部楼层
我的代码:
Dim bt As BlockTable = trans.GetObject(dwg.BlockTableId, OpenMode.ForRead)
Dim btrMs As BlockTableRecord = trans.GetObject(bt(BlockTableRecord.ModelSpace), OpenMode.ForWrite)
Dim tst As TextStyleTable = trans.GetObject(dwg.TextStyleTableId, OpenMode.ForRead) '获取字体样式集合
Dim tech_req_pt As Point3d '插入点
                    
                        Dim Tech_req_head As MText = New MText()
                        Tech_req_head.Contents = "          技术要求"
                        Tech_req_head.TextHeight = 350
                        'Tech_req.SetAttachmentMovingLocation(AttachmentPoint.MiddleCenter)
                        tech_req_pt = New Point3d(sheet_pt(0) + sheet - 8000, sheet_pt(1) + 13850, 0)
                        Tech_req_head.Location = tech_req_pt
                        Tech_req_head.Layer = "JY"
                        Tech_req_head.ColorIndex = 81
                        Tech_req_head.TextStyleId = tst("HZ")‘该样式是已经制定好的
                        btrMs.AppendEntity(Tech_req_head)
                        trans.AddNewlyCreatedDBObject(Tech_req_head, True)
回复

使用道具 举报

13

主题

36

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
88
发表于 2014-9-5 11:00:00 | 显示全部楼层

感谢飞狐!
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-13 20:55 , Processed in 0.868627 second(s), 75 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表