找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1189|回复: 10

[已解决] 批量提取单行文本内容及坐标

[复制链接]

已领礼包: 42个

财富等级: 招财进宝

发表于 2017-12-8 22:18:36 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
本帖最后由 newer 于 2018-1-10 14:52 编辑

麻烦大神能不能编程实现批量提取单行文本的内容及文本左下角坐标到txt文档中,每个单行文本内容及对应坐标在txt文本中占一行!
(如图)白色文本为单行文本,绿色文本包框及坐标是便于表达加入的,要达到的效果如截图右半部分!
1.png
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 40个

财富等级: 招财进宝

发表于 2017-12-8 22:35:02 | 显示全部楼层
按规矩,把执行前后的对比图截大图贴到论坛,同时把DWG文件压缩传到论坛供测试。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2017-12-9 00:31:33 | 显示全部楼层
生成的文字里面,是否需要把X,Y 反过来?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2017-12-9 01:19:00 | 显示全部楼层
本帖最后由 newer 于 2017-12-9 01:21 编辑

试试


1、文字从上到下,从左到右排序
2、Z 可选
3、允许设置保留位数
4、生成ACAD表格, 转CSV, EXCEL,剪切板 用 晓东工具箱 表格菜单里面的工具。

搜狗截图20171209011631.png

搜狗截图20171209012056.png

  1. (defun c:tt ()
  2.   (xdrx_begin)
  3.   (xdrx_sysvar_push '("dimzin" 0))
  4.   (if (not #xd-var-global-tol)
  5.     (setq #xd-var-global-tol 4)
  6.   )
  7.   (xdrx_initget "Y N")
  8.   (setq zflag (= 1 (xdrx_yesorno "是否保留Z坐标" 0)))

  9.   (if (setq
  10.         val (getint
  11.               (xdrx_prompt "\n坐标保留位数<" #xd-var-global-tol ">:" t)
  12.             )
  13.       )
  14.     (setq #xd-var-global-tol val)
  15.   )
  16.   (if (and (xdrx_initssget "\n选取提取坐标的单行文本<退出>:")
  17.            (setq ss (xdrx_ssget '((0 . "TEXT"))))
  18.       )
  19.     (progn
  20.       (setq h        (xdrx_getpropertyvalue (ssname ss 0) "textheight"))
  21.       (xdrx_document_setprec h 1.0)
  22.       (setq
  23.             ents (xd::pickset:tablesort ss 0 3 '> '<)
  24.             lst        (xdrx_entity_getproperty ents "textstring" "position")
  25.             lst        (mapcar
  26.                   '(lambda (x)
  27.                      (setq val
  28.                             (list (car x)
  29.                                   (rtos (car (nth 1 x)) 2 #xd-var-global-tol)
  30.                                   (rtos (cadr (nth 1 x)) 2 #xd-var-global-tol)
  31.                             )
  32.                      )
  33.                      (if zflag
  34.                        (progn
  35.                          (setq z (caddr (nth 1 x)))
  36.                          (if (equal z 0.0 1e-3)
  37.                            (setq z "0.0")
  38.                            (setq z (rtos z 2 #xd-var-global-tol))
  39.                          )
  40.                          (setq val (append val
  41.                                            (list z
  42.                                            )
  43.                                    )
  44.                          )
  45.                        )
  46.                      )
  47.                      val
  48.                    )
  49.                   lst
  50.                 )
  51.       )
  52.       (xd::text:init 1)
  53.       (setq h (* h (xd::var:getratio) (xd::var:getscaleratio)))
  54.       (if zflag
  55.         (setq lst (cons (list "内容" "X坐标" "Y坐标" "Z坐标") lst)
  56.               lst (cons (list "文字坐标表" nil nil nil) lst)
  57.         )
  58.         (setq lst (cons (list "内容" "X坐标" "Y坐标") lst)
  59.               lst (cons (list "文字坐标表" nil nil) lst)
  60.         )
  61.       )
  62.       (xd::table:makefromlist lst '(0 0 0) h (/ h 3.0))
  63.       (XD::Drag:SimpleMove (entlast) "\n表格插入点:" 8 t)
  64.     )
  65.   )
  66.   (xdrx_end)
  67.   (princ)
  68. )



论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 42个

财富等级: 招财进宝

 楼主| 发表于 2017-12-9 15:54:06 | 显示全部楼层

这是什么情况,cad版本2004,是不是没有加载文件!安装xdrx_api后里面很多文件,分别代表什么意思呢
如acetutil.16.arx    OpenDCL.16.arx    XDRx.Init.16.arx    xd-lisp-lib.VLX   Splash.hta


数字是不是对应的CAD版本号,要不要重新加载。
1.jpg
2.jpg
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 20个

财富等级: 恭喜发财

发表于 2017-12-9 15:56:12 | 显示全部楼层

2004没有表格实体的,你要2005以上版本才行,保险点,用2008吧。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 42个

财富等级: 招财进宝

 楼主| 发表于 2017-12-9 17:17:31 | 显示全部楼层

哦,好的谢谢!那些晓东工具箱或者API里的文件都是些什么呢(如上图),能不能解惑一下!
还有以前低版本安装好了晓东工具箱和API后,在新安装的高版本的CAD中能不能直接加载晓东工具箱或者API呢,要加载那些项目,还是只能重新再安装一次晓东工具箱或API

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2017-12-9 17:32:31 | 显示全部楼层

API有安装程序,你直接点安装就行了。加载CAD后就有API环境了。
如果你安装完工具箱或者API,后来又新安装了别的版本的CAD,需要重新在安装下API和工具箱才能支持你后来安装的CAD。

API和工具箱支持 2004-2016

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 202个

财富等级: 日进斗金

发表于 2018-1-10 14:29:52 | 显示全部楼层
学习学习再学习
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 66个

财富等级: 招财进宝

发表于 2022-6-13 11:47:09 | 显示全部楼层
好厉害的插件
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-12-25 15:57 , Processed in 0.371553 second(s), 53 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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