Send-PdfToPrinter #
ÜBERSICHT #
Sendet eine PDF-Datei an einen Drucker über SumatraPDF.exe (wenn vorhanden) oder ReportXtools.exe (standard).
SYNTAX #
Send-PdfToPrinter [-Path] <string> [[-Printer] <string>] [[-Duplex] <string>] [[-Paper] <string>]
[[-Tray] <string>] [[-TrayRest] <string>] [[-Color] <string>] [[-Pages] <string>] [[-Copies]
<int>] [-Collate] [[-Orientation] <string>] [[-Scale] <string>] [[-Engine] <string>]
[<CommonParameters>]
BESCHREIBUNG #
Diese Funktion prüft zuerst, ob sich im Modul-Unterordner pdf die Datei SumatraPDF.exe befindet. Wenn ja, wird diese bevorzugt verwendet, andernfalls ReportXtools.exe.
Über den Parameter Engine kann explizit gesteuert werden, welche Engine verwendet werden soll.
- “Sumatra” : Verwendet SumatraPDF (Fehler, wenn nicht vorhanden)
- “ReportXtools”: Verwendet ReportXtools.exe (auch wenn Sumatra vorhanden ist)
- “XTools” : Veraltet, Alias für “ReportXtools” (Abwärtskompatibilität)
- kein Wert : Sumatra hat Vorrang, falls vorhanden.
Unterstützt optionale Parameter für Druckername und Duplexdruck. Die Duplexwerte werden intern für die jeweilige Engine (Sumatra oder ReportXtools) angepasst.
Papier, Schacht, Farbe, Seitenbereich, Kopien, Sortierung, Ausrichtung und Skalierung gehen nur an eine Engine, die sie beherrscht: ReportXtools.exe ab Dateiversion 1.8.0.0, SumatraPDF fast alle (Get-PdfPrintEngine nennt die Liste). Was die Engine nicht kann, wird nicht übergeben, sondern als Warnung gemeldet; gedruckt wird trotzdem.
Rückgabe ist $true bei Erfolg (ExitCode = 0), $false bei Fehler
PARAMETER #
-Path #
Type: string
Pfad zur PDF-Datei (absolut oder relativ).
-Printer #
Type: string
Optional: Name des Druckers. Wird kein Name angegeben, wird der Standarddrucker verwendet.
-Duplex #
Type: string
Optional: Gibt den Duplexmodus an. Zulässige Werte:
- none (kein Duplex),
- vertical (lange Kante),
- horizontal (kurze Kante) Bei fehlendem Duplex-Parameter wird der Default des Druckers verwendet.
-Paper #
Type: string
Optional: Papierformat (A4, A5, A6, Letter, Legal, DL, C5, C6, ein Maß wie 62x29mm oder auto für das Format der PDF-Seite).
-Tray #
Type: string
Optional: Schacht als Name oder Nummer, für alle Seiten oder mit -TrayRest für die erste Seite.
-TrayRest #
Type: string
Optional: Schacht ab Seite 2 (nur ReportXtools ab 1.8).
-Color #
Type: string
Optional: auto oder mono.
-Pages #
Type: string
Optional: Seitenbereich wie 1-3,5 oder odd/even.
-Copies #
Type: int
Default: 1
Optional: Kopien im Druckauftrag (1 bis 99).
-Collate #
Type: switch
Optional: Kopien sortiert ausgeben (nur ReportXtools ab 1.8).
-Orientation #
Type: string
Optional: auto, portrait oder landscape.
-Scale #
Type: string
Optional: fit (Vorgabe der Engine), actual (100 Prozent, für Etiketten) oder shrink.
-Engine #
Type: string
Optional: Gibt die zu verwendende Druckengine an.
- “Sumatra”: Nutzt SumatraPDF, wenn vorhanden. Fehler, wenn nicht vorhanden.
- “ReportXtools”: Erzwingt ReportXtools.exe, auch wenn Sumatra vorhanden ist.
- “XTools”: Veraltet, Alias für “ReportXtools” (Abwärtskompatibilität).
- Kein Wert (Standard): Wenn Sumatra vorhanden ist, wird dieser verwendet. Sonst ReportXtools.
AUSGABEN #
bool
$true bei Erfolg, $false bei Fehler (z.B. ungültiger Drucker, fehlende Datei, Druckfehler).
BEISPIELE #
# Druckt auf den Standard-Drucker mit der Vorzugs-Engine. Bei Auslieferung ist die ReportXtools.exe.
Send-PdfToPrinter -Path "C:\temp\file.pdf"
# Nutzt die Engine, die vorhanden ist, vorzugsweise SumatraPDF.
Send-PdfToPrinter -Path ".\file.pdf" -Printer "Canon GX6000 series" -Duplex none
# Nutzt die Engine SumatraPDF.exe, wenn diese durch den Anwender zugefügt wurde, ansonste gibt es eine Fehlermeldung.
Send-PdfToPrinter -Path ".\file.pdf" -Printer "Canon GX6000 series" -Duplex none -Engine Sumatra
# Seiten 1 bis 2 aus Schacht 2 schwarzweiß; eine ältere ReportXtools.exe druckt nur und warnt.
Send-PdfToPrinter -Path ".\file.pdf" -Printer "Kyocera" -Tray "Kassette 2" -Color mono -Pages "1-2"
HINWEISE #
Als Alternative kann auch SumatraPDF anstelle ReportXtools verwendet werden.
- Download:
https://www.sumatrapdfreader.org/ - Das Programm muss in den Ordner
pdfinnerhalb der Modulstruktur abgelegt werden. Das ist beispielsweise:C:\Users\(BENUTZERNAME)Documents\WindowsPowerShell\Modules\EulandaXtools\1.0.3\pdf. - Das Hineinkopieren ist bei jedem Update des Moduls erneut im dazugehörigen Versions-Ordner (hier 1.0.3) durchzuführen.
- Für Sumatra gibt EULANDA Software in keinem Fall Support, es wird lediglich benutztt wenn es an der vorgesehenen Stelle vorhanden ist.