[已解决]command "saveas" ~~ 是否有方法支持变量存储?
3 posters
AutoCAD顧問 :: 技術(發言等級:一般會員) :: :: 進階討論 :: 已解決主題精華區
第1頁(共1頁)
[已解决]command "saveas" ~~ 是否有方法支持变量存储?
在归纳dwg文件时,想用AutoCAD2011中的批量文件打印成 PDF文件。方便打印等等。我们的文件都是用EXcel的数据直接生产dwg,每次都有1000+张。想用一下语句实现批量存档。
(defun c:main()
……
(setq ssave '(lee0001.dwg))
(command "saveas" "" "d:/(ssavee)")或者(command "saveas" "" ssavee "")
)
但存档后的结果却是ssave.dwg,而我本想存储成lee0001.dwg。不知道高手们是通过什么方式实现变量存储的。查了通宵资料了都没有搞定。
(defun c:main()
……
(setq ssave '(lee0001.dwg))
(command "saveas" "" "d:/(ssavee)")或者(command "saveas" "" ssavee "")
)
但存档后的结果却是ssave.dwg,而我本想存储成lee0001.dwg。不知道高手们是通过什么方式实现变量存储的。查了通宵资料了都没有搞定。
Tiger&蘋果爸 在 2011-08-31, 10:47 作了第 4 次修改 (原因 : 此主題為討論類型)
cvi001- 初級會員
- 文章總數 : 20
年齡 : 40
來自 : 贵州
職業 : 贵州省地矿局职员
愛好 : AutoCAD LISP 编程
個性 : 无聊
使用年資 : 新手
使用版本 : 2011
積分 : 1
經驗值 : 4938
威望值 : 31
注冊日期 : 2011-08-26
回復: [已解决]command "saveas" ~~ 是否有方法支持变量存储?
您好:
主題類型若為詢問方向或討論功能,請在主題前請加入[討論],顏色請指定為[綠色]。討論主題沒有時間限制。
[說明]發表主題前,請遵守相關要領!
http://autocad.bestoforum.net/forum-f12/topic-t1521.htm
謝謝您的配合~
主題類型若為詢問方向或討論功能,請在主題前請加入[討論],顏色請指定為[綠色]。討論主題沒有時間限制。
[說明]發表主題前,請遵守相關要領!
http://autocad.bestoforum.net/forum-f12/topic-t1521.htm
謝謝您的配合~
____________________________________________________________________________________
👉快速比例設定與出圖技巧-線上課程(點我)👈
回復: [已解决]command "saveas" ~~ 是否有方法支持变量存储?
自己把问题解决以后兴奋的心情是每一个程序员所喜欢的。
so,我把问题解决了。当然是无意之间的事情。
(defun c:main()
(setq ssave1 2010)
(command "saveas" "" (itoa ssave1)))
运行后的结果是文件名称变为了2010。当然已经解决了我实际的问题。但作为一个优秀的程序员,还不能满足对纯数字文件名的要求。
开工!既然程序在后面对于返回的语句有反应,那就代表……对!组合文件名也会有反应。代码如下:
(defun c:main()
(setq ssavee "lee")
(setq ssave1 2010)
(command "saveas" "" (strcat ssavee (itoa ssave1))))
这样出来自动保存的文件名就会是:lee2010.dwg。当然你还能组合更加复杂的。(strcat "再来一次" ssavee (itoa ssave1) "成功" ))等等。
受益匪浅的同学们,给朵鲜花吧。哇哈哈哈~~~~~
so,我把问题解决了。当然是无意之间的事情。
(defun c:main()
(setq ssave1 2010)
(command "saveas" "" (itoa ssave1)))
运行后的结果是文件名称变为了2010。当然已经解决了我实际的问题。但作为一个优秀的程序员,还不能满足对纯数字文件名的要求。
开工!既然程序在后面对于返回的语句有反应,那就代表……对!组合文件名也会有反应。代码如下:
(defun c:main()
(setq ssavee "lee")
(setq ssave1 2010)
(command "saveas" "" (strcat ssavee (itoa ssave1))))
这样出来自动保存的文件名就会是:lee2010.dwg。当然你还能组合更加复杂的。(strcat "再来一次" ssavee (itoa ssave1) "成功" ))等等。
受益匪浅的同学们,给朵鲜花吧。哇哈哈哈~~~~~
cvi001- 初級會員
- 文章總數 : 20
年齡 : 40
來自 : 贵州
職業 : 贵州省地矿局职员
愛好 : AutoCAD LISP 编程
個性 : 无聊
使用年資 : 新手
使用版本 : 2011
積分 : 1
經驗值 : 4938
威望值 : 31
注冊日期 : 2011-08-26
回復: [已解决]command "saveas" ~~ 是否有方法支持变量存储?
pizg 寫到:請問樓主:
假設你用已經讀取Excel數據產生了一千多張的圖檔,
你會如何將它們存檔?
哥哥想问题很细心那!
看上去是一个很傻的决定,其实我的目的不在于这一千多张图,而是在于用批量打印的形式转换成一个设计精美PDF阅读文档。这个可以跨平台使用了。
单位的资料室可以备份,合同甲方也希望看到这个制作精美的图纸。
您说呢?!!!
cvi001- 初級會員
- 文章總數 : 20
年齡 : 40
來自 : 贵州
職業 : 贵州省地矿局职员
愛好 : AutoCAD LISP 编程
個性 : 无聊
使用年資 : 新手
使用版本 : 2011
積分 : 1
經驗值 : 4938
威望值 : 31
注冊日期 : 2011-08-26
回復: [已解决]command "saveas" ~~ 是否有方法支持变量存储?
pizg 寫到:儲存成pdf文檔的確可以達到跨平台使用,
那麼你找到批量打印最佳方式了嗎?
可否說明一下你如何批量打印?
详细说明的话比较麻烦。我给你列出几个功能。然后您自己去组织逻辑关系。
1、打开新的文档以后设置好CAD内比例尺比如10:1
2、用图纸集确定一个图纸集,并把里面的设置完成
3、设置PLOT里面的打印范围与打印为pdf文件
4、LISP程序会按照事前的约定保存自动生成的*.dwg文档到指定的文件夹
5、使用PUBLISH定义好需要打印的文件夹。执行模型打印后。稍等片刻……
一个含有封面,图例等丰富内容的PDF文档制作完成。当然还可以加上自己的创意!
cvi001- 初級會員
- 文章總數 : 20
年齡 : 40
來自 : 贵州
職業 : 贵州省地矿局职员
愛好 : AutoCAD LISP 编程
個性 : 无聊
使用年資 : 新手
使用版本 : 2011
積分 : 1
經驗值 : 4938
威望值 : 31
注冊日期 : 2011-08-26
AutoCAD顧問 :: 技術(發言等級:一般會員) :: :: 進階討論 :: 已解決主題精華區
第1頁(共1頁)
這個論壇的權限:
您 無法 在這個版面回復文章