lostbalance
发表于 2018-1-6 18:19:59
手机上的论坛。 1. 没看明白,是指pro那个不能自动保存吗? 2. 关于打印质量,在打印机设置里调一下,自带那个打印非黑白色的时候,会使用浅灰色打印,改成强制黑色,效果会好很多。目前个人感觉唯一的问题大概是,在pdf缩比较小看的情况下,细线会显的比较浅色,但放大或者100%下是正常的。 3. 这个有个方法,先在打印机中设置好默认路径和名称,然后在cad打印的时候,用相关的vl函数进行改名和移动,大概是这个思路,具体函数可以在论坛找一下黄大师编的葵花宝典。不过,大范围推广使用的话,每台电脑都要这样设置一遍,会很麻烦。当初经历过,所以极不推荐。你必须要明白不感兴趣的人,你怎么教都不会,对他们来说,傻瓜式一键安装才是王道,否则就要手把手的帮着装好,哪怕是重装… 3.1 当然,本人水平有限,应该有更好的解决办法,你可以多看看秋枫等作品。
w245272914
发表于 2018-1-8 08:51:55
lostbalance 发表于 2018-1-6 18:19
手机上的论坛。 1. 没看明白,是指pro那个不能自动保存吗? 2. 关于打印质量,在打印机设置里调一下,自带 ...
哥们:P:P:$,你上次也说过该段代码只适用于DWG To PDF.pc3打印机,而不适用pdfFactory Pro打印机
(if (= (type *No*) 'INT) (setq *No* (1+ *No*)) (setq *No* 1))
(setq path (strcat (getvar "dwgprefix") (vl-filename-base (getvar "dwgname")) "-" (itoa *No*) ".pdf"))
DWG To PDF.pc3打印机不能把模型空间打印的一张张图纸集合为一个PDF
而pdfFactory Pro打印机可以把模型空间打印的一张张图纸集合为一个PDF,如用上段红色代码就不能自动保存了
如下代码使用pdfFactory Pro打印机不能自动保存的。
错误提示:
指令: DDDD
請選任選一打印序號==>>
"\n 請選擇需要打印的範圍的圖框==>>"
選取物件: 指定對角點: 找到 4 個
選取物件:
請回答,是(Y)/否(N)。
error: 函數被取消將出圖寫入檔案 [是(Y)/否(N)] <N>: *取消*
儲存變更至頁面設定 [是(Y)/否(N)]? <N> *取消*
我改的代码:
(if (= (type *No*) 'INT) (setq *No* (1+ *No*)) (setq *No* 1))
(setq path (strcat (getvar "dwgprefix") (vl-filename-base (getvar "dwgname")) "-" (itoa *No*) ".pdf"))
(command "-plot" "y" ; 是否需要詳細打印配置
"模型" ; 輸入布局、模型名稱
"pdfFactory Pro" ; 輸入輸出設備的名稱此處舉例虛擬打印机 pdfFactory Pro
; (lisp語言中的一個 \ 符號需要用 \\符號表示,即\=>\\)
; 例如:共享打印机 \\Adminstractor\Kyocera KM-2560 KX應該表示為\\\\Adminstractor\\Kyocera KM-2560 KX
"A4" ; 輸入圖紙尺寸A4
"m" ; 輸入圖紙單位(I:英寸 M:毫米)
st ; 輸入圖形方向(縱向:P 橫向:L)
"n" ; 是否反向打印
"w" ; 輸入打印區域(顯示:D范圍:E圖形界限:L 視圖:V 窗口:W)
p1 ; 打印圖框左下角點坐標
p3 ; 打印圖框右上角點坐標
"f" ; 輸入打印比例(F:布滿)
"c" ; 輸入打印偏移(居中打印:C)
"y" ; 是否按樣式打印
"monochrome.ctb" ; 輸入打印樣式名稱
"y" ; 是否打印線寬
"a" ; 輸入著色打印設置置(按顯示:A線框:W
; 消隱:H 渲染:R)
path ; 是否打印到文件
"n" ; 是否保存頁面設置的修改
"y" ; 是否繼續打印
)
lostbalance
发表于 2018-1-8 13:29:44
w245272914 发表于 2018-1-8 08:51
哥们,你上次也说过该段代码只适用于DWG To PDF.pc3打印机,而不适用pdfFactory Pro打印机
(if ( ...
你说的是合成一个PDF文件吗,那自带的那个好像是不可以吧。不过个人习惯一张图一个PDF,所以对这个就不了解了。ps,公司买了正版Adobe PDF,那个带有做合集功能,偶尔要用也没关系,哈哈。
如果用第三方那个打印机,那我改的代码就基本不能用了。command前面的都可以删了。然后后面打印到文件那个恢复成["n"]。
以为是Adobe PDF打印机的示例:
1. AutoCAD的添加打印机,添加一个Adobe PDF打印机的pc3副本,然后配置这个pc3副本,自定义特性里面把查看PDF结果关闭,然后输出文件夹改为默认Documents\*.pdf。然后用自带的打印功能随便打印一张,看看出来的pdf文件名称是什么,比如["e://desktop//1model.pdf"]。
2. 用上述修改完的代码。然后在后面加上pdf改名的代码,
(vl-file-rename "e://desktop//1model.pdf" "e://desktop//new.pdf")
(vl-file-copy "e://desktop//new.pdf" "e://work//new.pdf")
(vl-file-delete "e://desktop//new.pdf")
然后如果批量的,考虑加入序号之类的。
大概是这样的代码吧,我没用过,你可以测试下。
不过个人感觉兼容性比较差,至少默认的pdf文件名,中英文环境下就不一致,知道的还可以多加几组判断,不知道的就没办法了。
w245272914
发表于 2018-1-8 14:10:49
好的,哥们,谢谢了。可是如下代码,怎么加入我上面改的代码里面啊。
(vl-file-rename "e://desktop//1model.pdf" "e://desktop//new.pdf")
(vl-file-copy "e://desktop//new.pdf" "e://work//new.pdf")
(vl-file-delete "e://desktop//new.pdf")
w245272914
发表于 2018-1-10 09:05:02
lostbalance 发表于 2018-1-8 13:29
你说的是合成一个PDF文件吗,那自带的那个好像是不可以吧。不过个人习惯一张图一个PDF,所以对这个就不了 ...
哥,最近比较忙啊。
jwoo8oo
发表于 2018-1-10 11:03:55
一直在学习怎么修改批量打印程序,学习下
行行止
发表于 2018-1-10 17:24:48
w245272914 发表于 2018-1-8 08:51
哥们,你上次也说过该段代码只适用于DWG To PDF.pc3打印机,而不适用pdfFactory Pro打印机
(if ( ...
你把
path ; 是否打印到文件
改为
"N" ; 是否打印到文件
w245272914
发表于 2018-1-11 08:48:26
行行止 发表于 2018-1-10 17:24
你把
改为
哥们,这个已经解决了的,DWG To PDF.pc3打印机可以单个DWG文件批量打印并自动保存了,我已经分享了源码;
但是我现在的问题是pdfFactory Pro打印机,可以打印单个DWG文件的一张张图纸集合为一个PDF文档,但无法自动保存在该文件目录。
43楼哥们,有帮我,但是我不知道怎么加入程序进去:$
行行止
发表于 2018-1-11 09:09:40
w245272914 发表于 2018-1-11 08:48
哥们,这个已经解决了的,DWG To PDF.pc3打印机可以单个DWG文件批量打印并自动保存了,我已经分享了源码 ...
呵呵。
你继续。
w245272914
发表于 2018-1-11 09:22:45
lostbalance 发表于 2018-1-8 13:29
你说的是合成一个PDF文件吗,那自带的那个好像是不可以吧。不过个人习惯一张图一个PDF,所以对这个就不了 ...
哥们,能否用代码给我举个例呀,我就会了。:$