Hallo,
ich drucke aus einem DCL-Fenster auf einen Drucker der auf meinen Rechner installiert ist. Dazu habe ich hier im Forum diesen Beitrag von Helmut Schwepers gefunde:
(defun f:hs_plot (p0 p1 anz sc / al ll ur )
;p0 --> Punkt links unten
;p1 --> Punkt rechts oben
;anz --> Anzahl der zu druckenden Seiten
;sc --> Plot-Maßstab
(vl-load-com)
(setq al (vla-item (vla-get-layouts(vla-get-ActiveDocument(vlax-get-acad-object)))"Model"))
(vla-put-configname al "Epson Stylus COLOR 1520 ESC/P 2")
(vla-put-CanonicalMediaName al "A4")
(vla-put-plotrotation al 0)
(vla-put-stylesheet al "monochrome.ctb")
(vla-put-paperunits al 0)
(vla-put-plotwithplotstyles al :vlax-false)
(vla-put-scalelineweights al :vlax-false)
(vla-put-usestandardscale al :vlax-false)
;(vla-setcustomscale al 1 10)
(vla-put-standardscale al sc)
(vla-put-numberofcopies (vla-get-plot(vla-get-ActiveDocument (vlax-get-acad-object))) anz)
(setq ll (vlax-make-safearray vlax-vbdouble (cons 0 1))) ;Punkt links unten
(vlax-make-variant(vlax-safearray-fill ll p0))
(setq ur (vlax-make-safearray vlax-vbdouble (cons 0 1))) ;Punkt rechts oben
(vlax-make-variant(vlax-safearray-fill ur p1))
(vla-setwindowtoplot al ll ur)
(vla-put-plottype al 4) ; 4 = Fenster
(vla-RefreshPlotDeviceInfo al)
(vla-plottodevice(vla-get-plot(vla-get-ActiveDocument(vlax-get-acad-object))))
)
Nach dem ich den Drucker und den "vla-put-stylesheet" geändert habe klapp es prima, nur wenn ich mein Lisp mit den von mir geänderten "vla-put-stylesheet"
(vla-put-stylesheet AL "niggemannS_W.ctb")
aufrufe bekomme ich diese Fehlermeldung:
"Automatisierungfehler Ungültige Eingabe"
Lasse ich aber ohne mein Lisp 1x alles Drucken kann ich anschließend mit meiem
Lisp einwandfrei Drucken. Da ich mich mit VLA nicht auskenne 3 Fragen.
1. Muß ich vorher noch irgend etwas laden?
2. Wie kann ich die vorherigen Drucker Einstellungen sichern um sie bei verlassen des Fensters wieder herzustellen?
3. Warum geht der Druck einmal sehr schnell und einmal sehr langsam (ca. 1 min)?
mfg
Niggemann
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP