Lisp打印
大家好,我有一个lisp脚本,我已经成功地使用它在AutoCAD Elec 2014中打印到PDF。我们升级到AE 2017,现在它在每个绘图上等待我点击文件中的某个地方,然后它进入下一个。
这是我的剧本:
(defun c:PLOTPDFLISP ( / cm )
(setq cm (getvar 'CMDECHO))
(setvar 'CMDECHO 0)
(command "-plot"
"Yes" ;Detailed plot configuration? <No>: Y
"Layout1" ;Enter a layout name or [?] <0_01a>:
"Acade - DWG To PDF.pc3" ;Enter an output device name or [?] <DWG To PDF.pc3>:
"ANSI full bleed B (17.00 x 11.00 Inches)" ;Enter paper size or [?] <ISO full bleed A3>:
"Inches" ;Enter paper units <Millimeters>:
"Landscape" ;Enter drawing orientation <Lan...>:
"Yes" ;Plot upside down? <No>:
"Extents" ;Enter plot area <Window>:
"1:2.00" ;Enter plot scale or <1=1>:
"Center" ;Enter plot offset (x,y) or <Center>:
"Yes" ;Plot with plot styles? <Yes>:
"-Palette DHSI ANSI D 12217.stb" ;Enter plot style table name or [?] <>:
"Yes" ;Plot with lineweights? <Yes>:
"Yes" ;Scale lineweights with plot scale? <No>:
"No" ;Plot paper space first? <No>:
"No" ;Hide paperspace objects? <No>:
(strcat (getvar 'DWGPREFIX) (vl-filename-base (getvar 'DWGNAME)))
"No" ;Save changes to page setup ? <N> y
"Yes" ;Proceed with plot <Y>:
)
(setvar 'CMDECHO cm)
(princ)
)
(vl-load-com) (princ)
我使用“项目范围实用程序”运行一个脚本,该脚本为项目中的每个dwg调用此lisp文件。它确实将项目中的每个dwg打印为pdf,但我必须单击dwg才能转到下一个,我不知道为什么。
有人知道为什么会这样吗? 建议删除defun函数另存为PLOTPDFLISPA A,以自动删除vl load com(不需要)。这是128个DWG的多行脚本
eg _.open "P:\2014 Project\2014073-1" (LOAD "PLOTpdf-K") CLOSE Y
我不认为我捡起了你放下的东西。也许再给我说一点?我想我理解得很慢。
谢谢 由于它正在等待我的点击或其他操作,我只是在调用lisp的脚本中添加了一个“CLOSE”,效果很好。不过,我还是想听听你的建议。 我刚刚保存了一个额外的命令调用,通过将其设置为C:defun,你意味着一个类型化的命令,我有一个(plotpdf)作为lisp的最后一行,因此defun仍然用于定位变量。上面的行重复128次。你的版本是
_.打开“P:\2014 Project\2014073-1”(加载“PLOTpdflisp”)PLOTpdflisp CLOSE Y
手动只需在当前绘图上拖放pdf-k pdf即可生成。手动方法是因为它是一个独特的项目v,是我们正常的标准方法。 哦,我明白你的意思了。
我没想到你可以直接拖放到当前的图形上。
页:
[1]