Treiberfeatures
Wichtig
Die moderne Druckplattform ist die bevorzugte Methode von Windows für die Kommunikation mit Druckern. Wir empfehlen die Verwendung des Microsoft IPP-Treibers für die Posteingangsklasse zusammen mit Print Support Apps (PSA), um das Druckverhalten in Windows 10 und 11 für die Entwicklung von Druckergeräten anzupassen.
Weitere Informationen finden Sie unter Moderne Druckplattform und im Designhandbuch für die Drucksupport-App.
Treiberfeatures sind Nicht-PPD-Features, die vom Treiber synthetisiert werden (z. B. das Feature %OutputFormat ). Um Namenskonflikte mit PPD-Featureschlüsselwörtern zu vermeiden, werden allen Schlüsselwortnamen des Treiberfeatures ein Zeichen "%" vorangestellt. Bei Treiberfeature-/Optionsschlüsselwörtern wird auch die Groß-/Kleinschreibung beachtet.
Um eine Liste aller vom Treiber unterstützten Treiberfunktionsschlüsselwörter zu erhalten, kann ein Plug-In EnumFeatures aufrufen. Dadurch wird die Liste der Funktionsschlüsselwörter zurückgegeben, die sowohl Treiberfunktionen als auch PPD-Features enthält. Das Plug-In kann dann nach Featureschlüsselwortnamen suchen, die mit dem Präfix "%" beginnen, um die Treiberfeatureliste abzurufen.
In der folgenden Tabelle sind die derzeit unterstützten Treiberfunktionen aufgeführt. Jede Zeile in der Tabelle listet ein Treiberfeature-Schlüsselwort auf, zeigt die unterstützten Optionen an, gibt an, ob die Optionen des Features in einem Aufruf von EnumOptions aufgelistet werden können, und enthält eine kurze Beschreibung.
Treiberfeature | Unterstützte Optionen | Enum-Optionen | Beschreibungen und Kommentare |
---|---|---|---|
%AddEuro | "True" „False“ |
Ja | Fügen Sie das Euro-Symbol zu Geräteschriftarten hinzu. Dieses Feature wird nur für Drucker der Ebene 2+ unterstützt. Für Drucker der Ebene 1 ignoriert SetOptions dieses Feature, und GetOptions gibt immer "False" zurück. |
%STRGDAfter | "True" „False“ |
Ja | Senden Sie STRG-D nach jedem Auftrag. Drucker-Sticky |
%STRGDBefore | "True" „False“ |
Ja | Senden Sie STRG-D vor jedem Auftrag. Drucker-Sticky |
%CustomPageSize | Weitere Informationen finden Sie in Anmerkung 1 weiter unten. | No | Geben Sie benutzerdefinierte PostScript-Seitengrößenparameter an. Dokument-sticky |
%GraphicsTrueGray | "True" „False“ |
Ja | Konvertieren Sie graue Grafiken in PostScript grau. Drucker-Sticky |
%JobTimeout | Eine MIT NULL beendete ANSI-Zeichenfolge, die Dezimalzeichen enthält, die die nicht signierte ganzzahlige Anzahl von Sekunden für das Timeout im Bereich 0 bis 2.147.483.647 darstellt. Für SetOptions sind zusätzliche Tabstopp- oder Leerzeichen vor oder nach dezimalen Ziffern zulässig, aber ein Zeichensymbol ist nicht zulässig. |
No | Geben Sie den Zeitüberschreitungswert des Auftrags an. Drucker-Sticky |
%MaxFontSizeAsBitmap | Eine MIT NULL beendete ANSI-Zeichenfolge mit Dezimalziffern, die die nicht signierte ganzzahlige Anzahl von Pixeln im Bereich 0 bis 32.767 darstellt. Für SetOptions sind zusätzliche Tabstopp- oder Leerzeichen vor oder nach dezimalen Ziffern zulässig, aber ein Zeichensymbol ist nicht zulässig. |
No | Geben Sie den maximalen Schriftgrad an, der als Bitmap heruntergeladen werden soll. Drucker-Sticky |
%MetafileSpooling | "True" „False“ |
Ja | Aktivieren/Deaktivieren erweiterter Druckfeatures. Dokument-sticky Weitere Informationen finden Sie in Anmerkung 2 weiter unten. |
%MinFontSizeAsOutline | Eine MIT NULL beendete ANSI-Zeichenfolge mit Dezimalziffern, die die nicht signierte ganzzahlige Anzahl von Pixeln im Bereich 0 bis 32.767 darstellt. Für SetOptions sind zusätzliche Tabstopp- oder Leerzeichen vor oder nach dezimalen Ziffern zulässig, aber ein Zeichensymbol ist nicht zulässig. |
No | Geben Sie den Mindestschriftgrad zum Herunterladen als Umriss an. Drucker-Sticky |
%Mirroring | "True" „False“ |
Ja | Spiegeln Sie die Ausgabe, indem Sie die horizontalen Koordinaten umkehren. Dokument-sticky |
%Negative | "True" „False“ |
Ja | Erzeugen Sie negative Ergebnisse, indem Sie Werte für Schwarzweiß umkehren. Dieses Feature wird nur für Schwarzweißdrucker unterstützt. Bei Farbdruckern ignoriert SetOptions dieses Feature und GetOptions gibt immer „False“ zurück. Dokument-sticky |
%Orientation | „Hochformat“, „Querformat“, „GedrehtesQuerformat“ | Ja | Geben Sie die Ausgabeausrichtung an. Dokument-sticky |
%OutputFormat | „Geschwindigkeit“, „Portabilität“, „EPS“, „Archiv“ | Ja | Festlegen des PostScript-Ausgabeformats. Dokument-sticky Weitere Informationen finden Sie in Anmerkung 5 weiter unten. |
%OutputProtocol | "ASCII", "BCP", "TBCP", "Binary" | Ja | Geben Sie das Protokoll an, das der Drucker für Druckaufträge verwendet. PostScript-Drucker werden angenommen, um "ASCII" und "Binary" zu unterstützen, sodass diese Optionen immer verfügbar sind. Die Optionen "BCP" und "TBCP" sind nur verfügbar, wenn sie unterstützt werden. Um dies zu ermitteln, überprüfen Sie das globale Attribut "Protocols". Drucker-Sticky |
%OutputPSLevel | "1", "2", "3" | No | Geben Sie an, welche PostScript-Sprachstufe für den Druckauftrag verwendet werden soll. Die Einstellung ist nie größer als der im globalen Attribut "LanguageLevel" angegebene Wert. Dokument-sticky |
%PageOrder | "FrontToBack" "BackToFront" |
Ja | Geben Sie die Reihenfolge an, in der Seiten gedruckt werden sollen. Dokument-sticky Weitere Informationen finden Sie in Anmerkung 3 weiter unten. |
%PagePerSheet | "1", "2", "4", "6", "9", "16", "Broschüre" |
Ja | Geben Sie die Anzahl der logischen Seiten pro physischem Blatt an. Dieses Feature wird auch als "N-up"-Druck bezeichnet. Dokument-sticky Weitere Informationen finden Sie in Anmerkung 4 weiter unten. |
%PSErrorHandler | "True" „False“ |
Ja | PostScript-Fehlerhandler senden. Dokument-sticky |
%PSMemory | Eine MIT NULL beendete ANSI-Zeichenfolge, die Dezimalzeichen enthält, die die nicht signierte ganzzahlige Anzahl von Kilobyte PostScript-Speicher im Bereich 0 bis 2.147.483.647 darstellt. Für SetOptions sind zusätzliche Tabstopp- oder Leerzeichen vor oder nach dezimalen Ziffern zulässig, aber ein Zeichensymbol ist nicht zulässig. |
No | Geben Sie die Menge des verfügbaren virtuellen PostScript-Speichers an. Der Kerntreiber erfordert eine bestimmte Menge an verfügbarem postScript-virtuellem Speicher für die Verarbeitung. Wenn %PSMemory unter diesem Minimum festgelegt ist, wird der Mindestwert als neuer Wert verwendet. Derzeit beträgt der Mindestwert 172 KB für Drucker der Ebene 1 und 249 KB für Drucker der Ebene 2+ Drucker-Sticky |
%TextTrueGray | "True" „False“ |
Ja | Konvertieren sie grauen Text in PostScript grau. Drucker-Sticky |
%TTDownloadFormat | "Automatic", "Outline", "Bitmap", "NativeTrueType" | Ja | Geben Sie das Downloadformat für TrueType-Schriftarten an. "NativeTrueType" wird nur unterstützt, wenn das globale Attribut "TTRasterizer" die Unterstützung für "Type42" angibt. Dokument-sticky |
%WaitTimeout | Eine MIT NULL beendete ANSI-Zeichenfolge, die Dezimalzeichen enthält, die die nicht signierte ganzzahlige Anzahl von Sekunden für das Timeout im Bereich 0 bis 2.147.483.647 darstellt. Für SetOptions sind zusätzliche Tabstopp- oder Leerzeichen vor oder nach dezimalen Ziffern zulässig, aber ein Zeichensymbol ist nicht zulässig. |
No | Legen Sie einen Wait-Timeoutwert fest. Drucker-Sticky |
Hinweise zu Treiberfeatureschlüsselwörtern
Das Treiberfeature "%CustomPageSize " weist fünf Optionswerte auf: x, y, WidthOffset, HeightOffset und FeedDirection. Eine ausführliche Erläuterung dieser Parameter finden Sie in Abschnitt 5.16 der PostScript Printer Description File Format Specification, Version 4.3.
Ein %CustomPageSize-Eintrag enthält das Schlüsselwort %CustomPageSize zusammen mit Werten für die Optionen "x", "y", "WidthOffset", "HeightOffset" und "FeedDirection". Das erste Element ist das Schlüsselwort %CustomPageSize, gefolgt von einem NULL-Zeichen. Die Werte für x, y, WidthOffset und HeightOffset folgen diesem Schlüsselwort und werden als Teilzeichenfolgen von nicht signierten Dezimalziffern angezeigt, die jeweils die Anzahl der PostScript-Punkte für den entsprechenden Optionswert darstellen. Auf jeden dieser numerischen Werte folgt ein oder mehrere Leerzeichen oder Tabstoppzeichen. Das letzte Element in der Zeichenfolge ist der Wert für FeedDirection, der durch ein NULL-Zeichen beendet wird. Die Optionen für FeedDirection sind "LongEdge", "ShortEdge" (entsprechend den Ausrichtungen 0 und 1) und "LongEdgeFlip", "ShortEdgeFlip" (entsprechend den Ausrichtungen 2 und 3). Überprüfen Sie das Schlüsselwort "*LeadingEdge PPD" auf unterstützte Feedbeschreibungen.
Für GetOptions wird der Ausgabepuffer, auf den pmszFeatureOptionBuf verweist, wie im vorherigen Absatz beschrieben. Im folgenden Beispiel ist der Wert für x 612, der Wert für y ist 792, die Werte für WidthOffset und HeightOffset sind beide 0, und der Wert für FeedDirection lautet "ShortEdge".
"%CustomPageSize\0612 792 0 0 ShortEdge\0"
Für SetOptions sind zusätzliche Tabstopp- oder Leerzeichen vor oder nach dezimalen Ziffern zulässig, aber ein Zeichensymbol ist nicht zulässig. Andernfalls sollte der Eingabepuffer, auf den pmszFeatureOptionBuf zeigt, wie oben beschrieben aufgebaut sein.
Das Treiberfeature "%CustomPageSize" wird nur unterstützt, wenn alle drei der folgenden Bedingungen erfüllt sind:
Die PPD-Datei enthält das Feature *CustomPageSize .
Das Schlüsselwort *PPD-Adobe hat einen Wert größer oder gleich 4,3 oder *UseHWMargin: False wird angegeben, um ein Roll-Fed-Gerät anzugeben.
Die aktuell ausgewählte Option der PPD-Funktion *PageSize ist CustomPageSize.
Dieses Feature wird nur unterstützt, wenn das Spooler-EMF-Spooling aktiviert ist.
Wenn dieses Feature unterstützt wird, führt das Festlegen der Option dieses Features auf "False" zu Änderungen an den folgenden EMF-bezogenen Features:
Wenn %PagePerSheet "Broschüre" ist, wird sie in "1" geändert.
Wenn "Collate" auf "True" festgelegt ist (die entweder direkt im öffentlichen Teil der DEVMODEW-Struktur oder durch Aufrufen von SetOptions für das Feature *Collate PPD festgelegt werden kann), aber das Feature "Sortieren" derzeit nicht verfügbar ist, wird "False" festgelegt.
Wenn %PageOrder das Gegenteil der aktuellen Ausgabereihenfolgeneinstellung des Druckers ist, wird %PageOrder auf den Druckerwert umgedreht.
Dieses Feature wird nur unterstützt, wenn das Spooler-EMF-Spooling aktiviert ist.
Wenn es unterstützt wird, kann das Festlegen dieses Features dazu führen, dass Folgendes auftritt:
Wenn die PPD-Datei des Druckers das Schlüsselwort *OutputOrder enthält, wird die Optionsauswahl so geändert, dass sie der Ausgabereihenfolge der neuen Einstellung für das Feature %PageOrder entspricht. Dies geschieht, um zu verhindern, dass der Spooler unnötige Seitenreihenfolgensimulationen durchführt.
Wenn die PPD-Datei des Druckers das Feature "*OutputOrder" nicht enthält und die neue Einstellung für das %PageOrder-Treiberfeature das Gegenteil der aktuellen Ausgabereihenfolgeneinstellung des Druckers ist, und die %MetafileSpooling-Treiberfunktion "False" lautet, wird %MetafileSpooling auf "True" zurückgesetzt.
Die Option "Broschüre" wird nur unterstützt, wenn Spooler EMF-Spooling aktiviert ist und das Duplex-Feature verfügbar ist.
Wenn die Option "Broschüre" unterstützt wird, kann das Festlegen des Treiberfeatures %PagePerSheet auf "Broschüre" die folgenden Änderungen verursachen:
Wenn das Treiberfeature %MetafileSpooling auf "False" festgelegt ist, wird es auf "True" zurückgesetzt.
Wenn das Feature *Duplex PPD auf "None" festgelegt ist, wird die *Duplex-Funktion auf die erste nicht-Simplex-Option zurückgesetzt, die in der PPD-Datei definiert ist.
Mit Ausnahme von "EPS" (Encapsulated PostScript) werden die im Feature %OutputFormat-Treiber angegebenen Formate nach den folgenden beiden Merkmalen kategorisiert:
Ist der PostScript-Ausgabecode unabhängig von der Seitenreihenfolge?
Enthält der PostScript-Ausgabecode Gerätesteuerungsbefehle (die in der Regel den Setpagedevice-Operator verwenden)?
Kategorie Seitenreihenfolge unabhängig setpagedevice Archiv Ja No Portabilität Ja Ja Geschwindigkeit No Ja
Wenn GetOptions für Treiberfeatureschlüsselwörter aufgerufen wird, wenn ein angefordertes Feature-Schlüsselwort nicht erkannt wird oder wenn das Feature-Schlüsselwort erkannt, aber nicht im aktuellen Dokumentsticky - oder Druckerstickymodus unterstützt wird (siehe Ersetzen von Driver-Supplied Property Sheet Pages), wird das Feature einfach ignoriert, und der Ausgabepuffer enthält nicht das Schlüsselwortpaar "Feature/Option".
Angenommen, die GetOptions-Methode wird aufgerufen, und der pmszFeaturesRequested-Eingabepuffer enthält die folgende Zeichenfolge (im MULTI_SZ Format):
"Resolution\0%CustomPageSize\0Unknown_Name\0%Orientation\0\0"
Nachdem GetOption zurückgegeben wurde, könnte der pmszFeatureOptionBuf-Ausgabepuffer diese Zeichenfolge enthalten (auch im MULTI_SZ Format):
"Resolution\0300dpi\0%CustomPageSize\0612 792 0 0 ShortEdge\0%Orientation\0RotatedLandscape\0\0"
Beachten Sie, dass das in der ersten Zeichenfolge aufgeführte Unknown_Name-Feature (das nicht vorhanden ist) nicht in der zweiten Zeichenfolge angezeigt wird, da es vom Pscript-Treiber nicht erkannt wurde. Die anderen Features, Auflösung, %CustomPageSize und %Orientation werden in der Ausgabezeichenfolge zusammen mit den aktuellen Optionen "300dpi", "612 792 0 0 ShortEdge" und "RotatedLandscape" angezeigt. Eine Erläuterung der Optionen %CustomPageSize finden Sie unter "Treiberfeatures".
Wenn SetOptions für Treiberfeatureschlüsselwörter aufgerufen wird, wenn ein angefordertes Feature-Schlüsselwort oder dessen Optionsschlüsselwort im Eingabepuffer, auf das von pmszFeatureOptionBuf verwiesen wird, nicht erkannt wird oder das Feature im aktuellen Dokument-Sticky- oder Drucker-Sticky-Modus nicht unterstützt wird (siehe Ersetzen von Driver-Supplied Property Sheet Pages) oder sowohl das Feature-Schlüsselwort als auch das Optionsschlüsselwort werden erkannt, aber das Optionswort ist für dieses Feature ungültig (z. B. beim Versuch, %TTDownloadFormat auf "NativeTrueType" auf einen Drucker festzulegen, der Type42 TTRasterizer nicht unterstützt), dann wird dieses Feature-/Optionspaar ignoriert, und die aktuelle Option für dieses Feature wird weiterhin wirksam.
Die Reihenfolge der Feature-/Options-Schlüsselwortpaare im Puffer, auf die von pmszFeatureOptionBuf verwiesen wird, kann das Ergebnis des SetOptions-Aufrufs beeinflussen. Die folgenden beiden verschiedenen Bestellungen haben beispielsweise unterschiedliche Ergebnisse.
pmszFeatureOptionBuf | %PagePerSheet | %MetafileSpooling |
---|---|---|
"%MetafileSpooling\0False\0%PagePerSheet\0Booklet\0\0" | "Booklet" | "True" |
"%PagePerSheet\0Booklet\0%MetafileSpooling\0False\0\0" | "1" | „False“ |
Eine Erläuterung dazu, warum diese Ergebnisse auftreten, finden Sie weiter oben in Hinweis 3 zu %MetafileSpooling.