打印机及打印样式设置 vla-put-configname
最后面面是我的打印机设置子程序,经测试,(setq prints "HP LaserJet 5000 Series PCL6")
(xy_print_setprints prints)
返回值是Nil没错,但在2008的打印机确实已经变成了我想要的了
但2004不行,必须要执行一次打印命令再测试才有效(Ctrl+P)
为什么会这样的?难道要CAD自带的打印命令激活了某些东西?我需要激活它才能使(vla-put-configame.....)生效吗?
怎么解决?
还有,为什么2004和2008均不能 以(vla-put-stylesheet lay prints)来改变打印样式?
如果不行,该用何种方式?
2004的默认打印目录下已经有了hawnn.ctb为什么-plot 命令下 输打印样式的时候
"hawnn.ctb"却说未找到?
;;设置当前打印机为.........
(defun xy_print_setprints (prints / i lay)
(setq i (vla-get-ActiveDocument (vlax-get-acad-object)))
(setq lay (vla-get-ActiveLayout i))
(vla-put-ConfigName lay prints)
(princ)
)
没有人遇到这个问题吗?
而且,04年就有人遇到这问题了,没人能解决吗?
试试我的函数,我没有试,你试试能行不?
(defun xy_print_setprints (priname / anam layout)
(vl-load-com)
(setq layout (vla-get-activelayout (vla-get-activedocument (vlax-get-acad-object))))
(vla-refreshplotdeviceinfo layout)
(setq anam (vla-get-canonicalmedianame layout))
(vla-put-configname layout priname)
) 试试这个子程式
(vla_put_CanonicalMediaName "打印机“ "纸张”)
从秋枫那里偷来的啊!
null
fas格式的就没有意义了我只想知道为什么
在2008下完全没有问题
但,2004就一定要运行一次“页面设置”才可以。
null
谢谢二楼,问题已完美解决
不过,那段关键的代码我却不明白什么意思
(vla-refrerhplotdeviceo lay)
因为一直找不到vla的函数参考 回复 hawnn 的帖子
我也不明白,只是我也遇到楼主相同的问题,随便拷贝了两行代码,在2004下能运行了。高本本下也能运行,为啥不知道 liu22737 发表于 2011-5-16 09:00 static/image/common/back.gif
试试这个子程式
(vla_put_CanonicalMediaName "打印机“ "纸张”)
这个要怎么用呀,我这里说出错 tgliu 发表于 2015-2-6 17:15 static/image/common/back.gif
这个要怎么用呀,我这里说出错
用穷举法设置纸张
页:
[1]