AutoCAD顧問
還沒有註冊嗎...即日起免費註冊,所有最完整的AutoCAD討論、教學及資源都在論壇裡喔~

[已解决]command "saveas" ~~ 是否有方法支持变量存储?

上一篇主題 下一篇主題 向下

[已解决]command "saveas" ~~ 是否有方法支持变量存储?

發表 由 cvi001 于 2011-08-25, 23:58

在归纳dwg文件时,想用AutoCAD2011中的批量文件打印成 PDF文件。方便打印等等。我们的文件都是用EXcel的数据直接生产dwg,每次都有1000+张。想用一下语句实现批量存档。
(defun c:main()
……
(setq ssave '(lee0001.dwg))
(command "saveas" "" "d:/(ssavee)")或者(command "saveas" "" ssavee "")
)
但存档后的结果却是ssave.dwg,而我本想存储成lee0001.dwg。不知道高手们是通过什么方式实现变量存储的。查了通宵资料了都没有搞定。


Tiger&蘋果爸 在 2011-08-31, 03:47 作了第 4 次修改 (原因 : 此主題為討論類型)
avatar
cvi001
初級會員
初級會員

文章總數 : 20
年齡 : 33
來自 : 贵州
職業 : 贵州省地矿局职员
愛好 : AutoCAD LISP 编程
個性 : 无聊
使用年資 : 新手
使用版本 : 2011
積分 : 1
經驗值 : 2407
威望值 : 31
注冊日期 : 2011-08-25
男 水瓶座 豬

回頂端 向下

回復: [已解决]command "saveas" ~~ 是否有方法支持变量存储?

發表 由 Tiger&蘋果爸 于 2011-08-29, 10:33

您好:
主題類型若為詢問方向或討論功能,請在主題前請加入[討論],顏色請指定為[綠色]。討論主題沒有時間限制。


[說明]發表主題前,請遵守相關要領!
http://www.autocad-tw.com/forum-f12/topic-t1521.htm

謝謝您的配合~

____________________________________________________________________________________
avatar
Tiger&蘋果爸
系統管理員
系統管理員

文章總數 : 17328
年齡 : 41
來自 : 台北市文山區
職業 : AutoCAD顧問
愛好 : 蹓狗/戶外活動/拍照
個性 : 幽默/樂觀/善良
使用年資 : 15↑
使用版本 : AutoCAD 2016
經驗值 : 65336
威望值 : 12868
注冊日期 : 2008-04-23
2D基礎函授 2D進階函授 3D基礎函授 https://i11.servimg.com/u/f11/19/71/67/71/2d3d10.png2D+3D線上 顧問外掛程式 經典問與答讀者 藍鵲1號
2009聚會勳章 2010聚會勳章 2011聚會勳章 2012聚會勳章 2013勳章-2D基礎 2014聚會勳章 2015聚會勳章 2016聚會勳章 串連貼紙成功 男 水瓶座 兔

http://mypaper.pchome.com.tw/kv1012tiger

回頂端 向下

回復: [已解决]command "saveas" ~~ 是否有方法支持变量存储?

發表 由 cvi001 于 2011-08-29, 15:41

自己把问题解决以后兴奋的心情是每一个程序员所喜欢的。
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) "成功" ))等等。

受益匪浅的同学们,给朵鲜花吧。哇哈哈哈~~~~~
avatar
cvi001
初級會員
初級會員

文章總數 : 20
年齡 : 33
來自 : 贵州
職業 : 贵州省地矿局职员
愛好 : AutoCAD LISP 编程
個性 : 无聊
使用年資 : 新手
使用版本 : 2011
積分 : 1
經驗值 : 2407
威望值 : 31
注冊日期 : 2011-08-25
男 水瓶座 豬

回頂端 向下

回復: [已解决]command "saveas" ~~ 是否有方法支持变量存储?

發表 由 pizg 于 2011-08-30, 16:42

請問樓主:
假設你用已經讀取Excel數據產生了一千多張的圖檔,
你會如何將它們存檔?
avatar
pizg
高級會員
高級會員

文章總數 : 253
年齡 : 52
來自 : 桃園縣
職業 : 建築設計;程式設計
愛好 : 音樂;攝影;繪畫;棋奕;電腦
個性 : 隨和
使用年資 : 20↑
使用版本 : 2010
積分 : 10
經驗值 : 4144
威望值 : 320
發帖精華 : 1
注冊日期 : 2010-04-16
串連貼紙成功 男 摩羯座 龍

回頂端 向下

回復: [已解决]command "saveas" ~~ 是否有方法支持变量存储?

發表 由 cvi001 于 2011-09-01, 13:24

pizg 寫到:請問樓主:
假設你用已經讀取Excel數據產生了一千多張的圖檔,
你會如何將它們存檔?

哥哥想问题很细心那!
看上去是一个很傻的决定,其实我的目的不在于这一千多张图,而是在于用批量打印的形式转换成一个设计精美PDF阅读文档。这个可以跨平台使用了。
单位的资料室可以备份,合同甲方也希望看到这个制作精美的图纸。
您说呢?!!!
avatar
cvi001
初級會員
初級會員

文章總數 : 20
年齡 : 33
來自 : 贵州
職業 : 贵州省地矿局职员
愛好 : AutoCAD LISP 编程
個性 : 无聊
使用年資 : 新手
使用版本 : 2011
積分 : 1
經驗值 : 2407
威望值 : 31
注冊日期 : 2011-08-25
男 水瓶座 豬

回頂端 向下

回復: [已解决]command "saveas" ~~ 是否有方法支持变量存储?

發表 由 pizg 于 2011-09-02, 01:20

儲存成pdf文檔的確可以達到跨平台使用,
那麼你找到批量打印最佳方式了嗎?
可否說明一下你如何批量打印?
avatar
pizg
高級會員
高級會員

文章總數 : 253
年齡 : 52
來自 : 桃園縣
職業 : 建築設計;程式設計
愛好 : 音樂;攝影;繪畫;棋奕;電腦
個性 : 隨和
使用年資 : 20↑
使用版本 : 2010
積分 : 10
經驗值 : 4144
威望值 : 320
發帖精華 : 1
注冊日期 : 2010-04-16
串連貼紙成功 男 摩羯座 龍

回頂端 向下

回復: [已解决]command "saveas" ~~ 是否有方法支持变量存储?

發表 由 cvi001 于 2011-09-02, 03:50

pizg 寫到:儲存成pdf文檔的確可以達到跨平台使用,
那麼你找到批量打印最佳方式了嗎?
可否說明一下你如何批量打印?

详细说明的话比较麻烦。我给你列出几个功能。然后您自己去组织逻辑关系。
1、打开新的文档以后设置好CAD内比例尺比如10:1
2、用图纸集确定一个图纸集,并把里面的设置完成
3、设置PLOT里面的打印范围与打印为pdf文件
4、LISP程序会按照事前的约定保存自动生成的*.dwg文档到指定的文件夹
5、使用PUBLISH定义好需要打印的文件夹。执行模型打印后。稍等片刻……

一个含有封面,图例等丰富内容的PDF文档制作完成。当然还可以加上自己的创意!
avatar
cvi001
初級會員
初級會員

文章總數 : 20
年齡 : 33
來自 : 贵州
職業 : 贵州省地矿局职员
愛好 : AutoCAD LISP 编程
個性 : 无聊
使用年資 : 新手
使用版本 : 2011
積分 : 1
經驗值 : 2407
威望值 : 31
注冊日期 : 2011-08-25
男 水瓶座 豬

回頂端 向下

上一篇主題 下一篇主題 回頂端


 
這個論壇的權限:
無法 在這個版面回復文章