(defun GetPlotDevices () (vlax-safearray->list (vlax-variant-value (vla-getplotdevicenames (vla-item (vla-get-layouts (vla-get-activedocument (vlax-get-acad-object)) ) "Model" ) ) ) ) ) (defun c:AA () (setq prt (GetPlotDevices)) (setq ii (vl-list-length prt)) (setq nn 0) (princ "\n请选择打印机:") (while (< nn ii) (setq prt1 (getstring (strcat (nth nn prt) ",是《1》否《0》__<0>"))) (if (not prt1) (setq prt1 "0") ) (if (= prt1 "1") (progn (setq prt2 (nth nn prt)) (setq nn ii) ) ) (setq nn (1+ nn)) ) (if (= prt2 nil) (exit) ) (setq a 1) (setq b 0) (setq lst1 ()) (while (< b a) (setq pnt1 (getpoint "\n请输入第一个角点:")) (setq pnt2 (getcorner pnt1 "\n请输入第二个角点")) (setq lst (list pnt1 pnt2)) (setq lst1 (cons lst lst1)) (setq ss (getstring "\n是否继续?[是(Y)/否(N)]<否>:")) (if (not ss) (setq ss "N") ) (if (or (= ss "N") (= SS "n") ) (setq b 1) ) ) (setq aa (vl-list-length lst1)) (setq nn 0) (while (< nn aa) (setq lst2 (nth nn lst1)) (setq pnt1 (nth 0 lst2)) (setq pnt2 (nth 1 lst2)) (print lst2) (print pnt1) (print pnt2) (command "-PLOT" "Y" ;_是否需要详细打印配置?[是(Y)/否(N)] <否>: y "" ;_输入布局名或 [?] <模型>: prt2 ;_输入输出设备的名称或 [?] <在 网管 上自动 HP LaserJet 5100 PCL 6>: "A3" ;_输入图纸尺寸或 [?] <A3>: "m" ;_输入图纸单位 [英寸(I)/毫米(M] <毫米>: "L" ;_输入图形方向 [纵向(P)/横向(L)] <横向>: "N" ;_是否反向打印?[是(Y)/否(N)] <否>: "w" ;_输入打印区域 [显示(D)/范围(E)/图形界限(L)/视图(V)/窗口(W)] <范围>: w pnt1 pnt2 "F" ;_输入打印比例 (打印的 毫米=图形单位) 或 [布满(F)] <Fit>: fit "c" ;_输入打印偏移 (x,y) 或 [居中打印(C)] <0.00,0.00>: c "y" ;_是否按样式打印?[是(Y)/否(N)] <是>: "." ;_输入打印样式表名称或 [?] (输入 . 表示无) <hp5100.ctb>: "Y" ;_是否打印线宽?[是(Y)/否(N)] <是>: "N" ;_是否删除隐藏线?[是(Y)/否(N)] <否>: "N" ;_是否打印到文件 [是(Y)/否(N)] <N>: y "Y" ;_是否保存模型选项卡的修改 . "Y" ;_是否继续打印 . ) (setq nn (1+ nn)) ) )
谢谢piao1887给的上面这段程序,主要是打印机的问题
|