Seite 1 von 1
Drucken in schwarz/weiß per Makro
Verfasst: So 15. Mai 2016, 02:01
von scientific
Hi!
Ich such mir die Finger schon wund und die Links, wo in der Dokumentation noch angegeben ist, dass es hier weitergeht zu Grayscale, laufen ins Leere (spricht die Info gibts dort nicht mehr).
Ich kann ich per Makro bei einem Drucker auswählen, ob er in Farbe oder Schwarz/Weiß drucken soll?
Hintergrund:
Ich möchte gerne einen Brief einmal schwarz/weiß und einmal in Farbe ausdrucken. S/W für die Dokumentation, Farbe zum Versand.
Ich kann bei den Druckoptionen "Graustufen", "Farbe" oder "Treibervorgabe" wählen, jedoch finde ich nichts, wie ich das per Makro setzen kann...
lg scientific
Re: Drucken in schwarz/weiß per Makro
Verfasst: Mo 16. Mai 2016, 19:57
von gogo
Das ist nicht ganz so einfach, da ja jeder Drucker einen eigenen Treiber hat.
So weit ich weiss, werden die Druckereinstellungen mit dem letzten Druck im Dokument gespeichert - vllt. bringt es was 2 Berichts-Vorlagen zu haben. Ein anderer Weg wäre den Drucker 2x am System anzumelden und in seinen Eigenschaften 1x Farbe und ein anderes Mal S/W zu wählen.
Re: Drucken in schwarz/weiß per Makro
Verfasst: Mi 18. Mai 2016, 22:16
von scientific
Das klingt jetzt nicht sehr befriedigend...
Ich hab für MS-Office mal eine Lösung gefunden, die ein ziemlich umfangreiches Script erforderte, nur um zwischen schwarz/weiß und farbe umzuschalten... Die funktioniert bei LO natürlich nicht...
Naja, vielleicht finde ich ja noch eine Möglichkeit...
lg scientific
Re: Drucken in schwarz/weiß per Makro
Verfasst: Do 19. Mai 2016, 07:44
von gogo
Vielleicht geht's so, Du musst Dich da aber selbst durchhangeln:
Das Objekt ThisComponent.Printer (eines Writer Dokuments) enthält die Druckereinstellungen
Code: Alles auswählen
Tabelle : T( 0 To 7 ) As object
(0) | Structure : com.sun.star.beans.PropertyValue --> Name "hp_hp_LaserJet_4345_mfp"
(1) | Structure : com.sun.star.beans.PropertyValue --> PaperOrientation 0
(2) | Structure : com.sun.star.beans.PropertyValue --> PaperFormat 1
(3) | Structure : com.sun.star.beans.PropertyValue --> PaperSize
(4) | Structure : com.sun.star.beans.PropertyValue --> IsBusy False
(5) | Structure : com.sun.star.beans.PropertyValue --> CanSetPaperOrientation True
(6) | Structure : com.sun.star.beans.PropertyValue --> CanSetPaperFormat False
(7) | Structure : com.sun.star.beans.PropertyValue --> CanSetPaperSize True
... und zwar als com.sun.star.beans.PropertyValue (s) wie etwa:
Code: Alles auswählen
Handle long 0
Name string "PaperFormat"
State integer 0
Value variant 1
Bei Farbdruckern gibt's da evtl. eine entsprechende Einstellung, die man vor den Druck per Makro ändern kann, oder man übergibt diese eine Property mit dem ThisComponent.print()-Befehl als Argument - da muss man bloß wissen wie sie heißt
Code: Alles auswählen
Dim printProp(0) as New com.sun.star.beans.PropertyValue
printProp(0).Name = "Pages"
printProp(0).Value = "1"
ThisComponent.print(printProp())
Am besten wird es sein einmal irgendein Beispieldokument zu erstellen und dieses explizit in Farbe bzw. in S/W auszudrucken und nach dem Speichern die ThisComponent.Printer-Eigenschaften anzusehen...
Re: Drucken in schwarz/weiß per Makro
Verfasst: Do 19. Mai 2016, 15:10
von scientific
Diese Printer-Properties habe ich schon gefunden gehabt, aber bin dort nicht wirklich weitergekommen.
Google spuckt noch das eine oder andere Suchergebnis aus, wo man Greyscale auswählen könnte... aber die Seiten der Doku von Openoffice und Libreoffice geben dazu nix mehr her...
Ich hab jetzt noch einmal hier in der Arbeit die verschiedenen Print-Optionen unseres Drucker-Pools durchgeschaut... das scheint echt nicht trivial zu sein...
lg scientific