autolisp二次开发定制的open函数是用来读文件的,不能当成AutoCAD内置命令函数open来打开一个图形文件,只用在脚本中以输入命令的形式打开。 (command " _.OPEN" "D:\\15686\\GX1.dwg") 不能运行,求指教
网友答: 那没必要打开DWG,顺次把DWG插入当前,然后打印,打印完删除更好。不需要同时开好几个DWG,打印时,也不可能同时几个DWG都在同时打,也还是要一个个处理。网友答: 本帖最后由 你有种再说一遍 于 2025-7-29 07:28 编辑
这种方式不好的地方是
一旦本图预先载入了字体(可能是中途外参其他图纸时候)
外部参照字体版本是落后本图,
并且好死不死触发了系统向下兼容,或者字体回退,引入了不确定因素.
外部参照插入自动优先最新字体,就各种问号了.
(环境不确定因素太多,
源自于KT.ttf引发全局字体问题,
源自win版本不同导致的字体问题).
然后你再打开外部图纸来检查,发现没有问号,给人带来疑惑.
临时外参影响,包括但不限于:
两个字体版本差异,例如ttf的新宋体.
两个图纸的全局线型比例不一样.
错误未被修复的文档.
天正图元版本差异.
ASCII编码和UTF8编码差异.
布局使用者只有问号.
相当于发生了一个绘图阶段,
除非能够做到系统性规范,不然这个方案危险性还是太大了.
毕竟批量打印应该是盲目一股脑的输出阶段.网友答:
要识别外部参照中的图框,就不再是简单的拿DWG来“参照”了,需要处理其数据库。那就不如清空当前DWG(全删+purge),将DWG当成图块插入。可以避免不少外部参照的可能陷阱。网友答: 要看你开图要干啥?单纯打开DWG?那岂不是开十几个DWG后CAD会慢的要死网友答:
想批量打印,打开文件后进行打印操作网友答: lisp跨文档有点麻烦。网友答: 本帖最后由 tryhi 于 2025-7-28 22:55 编辑
(setvar "sdi" 1)
(setvar "lispinit" 0)
这里写你需要多dwg操作的代码
(setvar "sdi" 0)
(setvar "lispinit" 1)
这两个变量了解一下,用于跨文档网友答:
有批打插件,可以不打开文件的情况下,进行打印的。网友答: 如果是为了批量打印,试试把要打印的图通过外部引用插入到一个图中处理。可以是一张图,也可以是很多张图。目前我是把各专业的图纸通过外部引用插入到一张图中,然后识别外部引用中的图框,进行批量打印。插入外部引用,不改变外部文件中线型、字体、比例等。网友答:
碰到同名块 就干废了。
网友答: 那没必要打开DWG,顺次把DWG插入当前,然后打印,打印完删除更好。不需要同时开好几个DWG,打印时,也不可能同时几个DWG都在同时打,也还是要一个个处理。网友答: 本帖最后由 你有种再说一遍 于 2025-7-29 07:28 编辑
wharan 发表于 2025-7-29 00:30
如果是为了批量打印,试试把要打印的图通过外部引用插入到一个图中处理。可以是一张图,也可以是很多张图。 ...
这种方式不好的地方是
一旦本图预先载入了字体(可能是中途外参其他图纸时候)
外部参照字体版本是落后本图,
并且好死不死触发了系统向下兼容,或者字体回退,引入了不确定因素.
外部参照插入自动优先最新字体,就各种问号了.
(环境不确定因素太多,
源自于KT.ttf引发全局字体问题,
源自win版本不同导致的字体问题).
然后你再打开外部图纸来检查,发现没有问号,给人带来疑惑.
临时外参影响,包括但不限于:
两个字体版本差异,例如ttf的新宋体.
两个图纸的全局线型比例不一样.
错误未被修复的文档.
天正图元版本差异.
ASCII编码和UTF8编码差异.
布局使用者只有问号.
相当于发生了一个绘图阶段,
除非能够做到系统性规范,不然这个方案危险性还是太大了.
毕竟批量打印应该是盲目一股脑的输出阶段.网友答:
wharan 发表于 2025-7-29 00:30
如果是为了批量打印,试试把要打印的图通过外部引用插入到一个图中处理。可以是一张图,也可以是很多张图。 ...
要识别外部参照中的图框,就不再是简单的拿DWG来“参照”了,需要处理其数据库。那就不如清空当前DWG(全删+purge),将DWG当成图块插入。可以避免不少外部参照的可能陷阱。网友答: 要看你开图要干啥?单纯打开DWG?那岂不是开十几个DWG后CAD会慢的要死网友答:
kozmosovia 发表于 2025-7-28 21:10
要看你开图要干啥?单纯打开DWG?那岂不是开十几个DWG后CAD会慢的要死
想批量打印,打开文件后进行打印操作网友答: lisp跨文档有点麻烦。网友答: 本帖最后由 tryhi 于 2025-7-28 22:55 编辑
(setvar "sdi" 1)
(setvar "lispinit" 0)
这里写你需要多dwg操作的代码
(setvar "sdi" 0)
(setvar "lispinit" 1)
这两个变量了解一下,用于跨文档网友答:
心梦无痕 发表于 2025-7-28 21:13
想批量打印,打开文件后进行打印操作
有批打插件,可以不打开文件的情况下,进行打印的。网友答: 如果是为了批量打印,试试把要打印的图通过外部引用插入到一个图中处理。可以是一张图,也可以是很多张图。目前我是把各专业的图纸通过外部引用插入到一张图中,然后识别外部引用中的图框,进行批量打印。插入外部引用,不改变外部文件中线型、字体、比例等。网友答:
wharan 发表于 2025-7-29 00:30
如果是为了批量打印,试试把要打印的图通过外部引用插入到一个图中处理。可以是一张图,也可以是很多张图。 ...
碰到同名块 就干废了。