- 积分
- 9547
- 明经币
- 个
- 注册时间
- 2011-3-6
- 在线时间
- 小时
- 威望
-
- 金钱
- 个
- 贡献
-
- 激情
-
|
楼主 |
发表于 2013-3-29 20:56
|
显示全部楼层
669423907 发表于 2013-3-29 10:11
楼主你好,请问如何将下面的打印程序改成自动获取系统打印机呢?
我不会改,诚请帮忙,谢谢
(defun defultprint (/ device)
(vl-load-com)
(substr (setq device
(vl-registry-read
"HKEY_CURRENT_USER\\Software\\Microsoft\\Windows NT\\CurrentVersion\\Windows"
"Device"
)
)
1
(vl-string-search "," device)
)
)
(defun c:fa()
(setq ss(ssget '((8 . "打印框"))))
(setq n 0)
(repeat (sslength ss)
(setq en (ssname ss n))
(setq obj (vlax-ename->vla-object en))
(vla-GetBoundingBox obj 'minpt 'maxpt)
(setq minPt (vlax-safearray->list minPt))
(setq maxPt (vlax-safearray->list maxPt))
(setq minptx (car minpt))
(setq minpty (cadr minpt))
(setq maxptx (car maxpt))
(setq maxpty (cadr maxpt))
(if (< (- maxptx minptx) (- maxpty minpty))
(dayin5 minpt maxpt)
(dayin6 minpt maxpt))
(setq n (1+ n)))(PRINC))
(defun dayin5(p1 p2);打印机名称,纸张,毫米,横向,反向,窗口,范围(P1,P2),布满,居中,按打印样式,线宽,按显示,不打印到文件,保存,继续打印
(setq myprint (defultprint))
(command "plot" "y" "模型" myprint "A4" "M" "P" "y" "W" P1 P2 "F" "C" "Y" "DWF Virtual Pens.ctb" "y" "a" "n" "y" "y"))
(defun dayin6(p1 p2)
(setq myprint (defultprint))
(command "plot" "y" "模型" myprint "A4" "M" "L" "y" "W" P1 P2 "F" "C" "Y" "DWF Virtual Pens.ctb" "y" "a" "n" "y" "y")) |
|