IPrintOemPS::Command-Methode (prcomoem.h)
Die IPrintOemPS::Command-Methode wird von Rendering-Plug-Ins für den Microsoft PostScript-Druckertreiber verwendet, um PostScript-Befehle in den Datenstrom des Druckauftrags einzufügen.
Syntax
HRESULT Command(
PDEVOBJ pdevobj,
DWORD dwIndex,
PVOID pData,
DWORD cbSize,
[out] OUT DWORD *pdwResult
);
Parameter
pdevobj
Vom Aufrufer bereitgestellter Zeiger auf eine DEVOBJ- Struktur.
dwIndex
Vom Aufrufer bereitgestellter Wert, der den aktuellen Einfügepunkt innerhalb des Datenstroms des Druckauftrags darstellt. Weitere Informationen finden Sie im folgenden Abschnitt "Hinweise".
pData
Wird nicht verwendet.
cbSize
Wird nicht verwendet.
[out] pdwResult
Empfängt einen von der Methode bereitgestellten Wert, der das Ergebnis des Einfügevorgangs angibt. Wenn die Einfügung erfolgreich ist, sollte dieser Wert ERROR_SUCCESS werden. Wenn die Einfügung fehlschlägt, sollte der Wert einer der in winerror.h definierten Fehlercodes sein. Wenn die Methode nicht versucht, Daten für einen angegebenen dwIndex- Wert einzufügen, sollte der Wert ERROR_NOT_SUPPORTED werden.
Rückgabewert
Die Methode muss einen der folgenden Werte zurückgeben.
Rückgabecode | Beschreibung |
---|---|
|
Der Vorgang war erfolgreich. |
|
Fehler beim Vorgang. |
|
Die Methode ist nicht implementiert. |
Bemerkungen
Die IPrintOemPS::Command-Methode wird verwendet, um PostScript-Befehle in den Datenstrom einzufügen, der vom Microsoft PostScript-Druckertreibergeneriert wird. Wenn Sie diese Methode bereitstellen möchten, müssen Sie sie in einem Rendering-Plug-In definieren.
Wenn die IPrintOemPS::Command--Methode aufgerufen wird, gibt der dwIndex Parameter den aktuellen Einfügpunkt innerhalb des Datenstroms des Druckauftrags an. Die Methode sollte diesen Wert verwenden, um zu bestimmen, welcher Vorgang( falls vorhanden) ausgeführt werden soll. Indexwerte, die in wingdi.h definiert sind, sind in der folgenden Tabelle aufgeführt.
Sollwert | Wann empfangen |
---|---|
PSINJECT_BEGINDEFAULTS | Nachdem der Druckertreiber %%BeginDefaults an den Datenstrom gesendet hat. |
PSINJECT_BEGINPAGESETUP | Nachdem der Druckertreiber %%BeginPageSetup an den Datenstrom gesendet hat. |
PSINJECT_BEGINPROLOG | Nachdem der Druckertreiber %%BeginProlog an den Datenstrom gesendet hat. |
PSINJECT_BEGINSETUP | Nachdem der Druckertreiber %%BeginSetup an den Datenstrom gesendet hat. |
PSINJECT_BEGINSTREAM | Bevor der Druckertreiber das erste Byte des Datenstroms sendet. |
PSINJECT_BOUNDINGBOX | Wenn der Druckertreiber bereit ist, %%BoundingBoxeinzufügen: in den Datenstrom. Die von IPrintOemPS::Command bereitgestellten Daten ersetzen die %%BoundingBoxdes Treibers : Kommentar. |
PSINJECT_COMMENTS | Bevor der Druckertreiber %%EndComments an den Datenstrom sendet. |
PSINJECT_DLFONT | Bevor der Drucktreiber eine weiche Schriftart herunterlädt. |
PSINJECT_DOCNEEDEDRES |
Nachdem der Druckertreiber %%DocumentNeededResources: an den Datenstrom gesendet hat, zusammen mit Ressourceninformationen. Wenn die IPrintOemPS::Command Methode Ressourceninformationen sendet, wird sie nach den Ressourceninformationen des Treibers an den Datenstrom angefügt. Das Eintragsformat lautet wie folgt: %%+ ResourceTypeResourceNames- Der Druckertreiber sendet %%DocumentNeededResources: nach dem Senden %%Trailer Abschnitts. |
PSINJECT_DOCSUPPLIEDRES |
Nachdem der Druckertreiber %%DocumentSuppliedResources: an den Datenstrom gesendet hat, zusammen mit Ressourceninformationen. Wenn die IPrintOemPS::Command Methode Ressourceninformationen sendet, wird sie nach den Ressourceninformationen des Treibers an den Datenstrom angefügt. Das Eintragsformat lautet wie folgt: %%+ ResourceTypeResourceNames- Der Druckertreiber sendet %%DocumentSuppliedResources: nach dem Senden %%Trailer Abschnitts. |
PSINJECT_DOCUMENTPROCESSCOLORS | |
Wenn der Druckertreiber bereit ist, %%DocumentProcessColorseinzufügen:Farbe in den Datenstrom. Die von IPrintOemPS::Command bereitgestellten Daten ersetzen die %%DocumentProcessColorsdes Treibers :Farbe Kommentar. | |
PSINJECT_DOCUMENTPROCESSCOLORSATEND | |
Wenn der Druckertreiber bereit ist, %%DocumentProcessColors:(atend) in den Datenstrom einzufügen. Die von IPrintOemPS::Command bereitgestellten Daten ersetzen den %%DocumentProcessColorsdes Treibers :(Atend)-Kommentar. | |
PSINJECT_ENDDEFAULTS | Bevor der Druckertreiber %%EndDefaults an den Datenstrom sendet. |
PSINJECT_ENDPAGECOMMENTS | Bevor der Druckertreiber %%EndPageComments an den Datenstrom sendet. |
PSINJECT_ENDPAGESETUP | Bevor der Druckertreiber %%EndPageSetup an den Datenstrom sendet. |
PSINJECT_ENDPROLOG | Bevor der Druckertreiber %%EndProlog an den Datenstrom sendet. |
PSINJECT_ENDSETUP | Bevor der Druckertreiber %%EndSetup an den Datenstrom sendet. |
PSINJECT_ENDSTREAM | Nachdem der Druckertreiber das letzte Byte des Datenstroms gesendet hat. |
PSINJECT_EOF | Nachdem der Druckertreiber %%EOF an den Datenstrom gesendet hat. |
PSINJECT_ORIENTATION | Wenn der Druckertreiber bereit ist, %%Orientationeinzufügen: in den Datenstrom. Die von IPrintOemPS::Command bereitgestellten Daten ersetzen die %%Orientationdes Treibers : Kommentar. |
PSINJECT_PAGEBBOX | Wenn der Druckertreiber bereit ist, %%PageBoundingBoxeinzufügen: in den Datenstrom. Die von IPrintOemPS::Command bereitgestellten Daten ersetzen die %%PageBoundingBoxdes Treibers : Kommentar. |
PSINJECT_PAGENUMBER | Wenn der Druckertreiber bereit ist, %%Pageeinzufügen: in den Datenstrom. Die von IPrintOemPS::Command bereitgestellten Daten ersetzen die %%Pagedes Treibers : Kommentar. |
PSINJECT_PAGEORDER | Wenn der Druckertreiber bereit ist, %%PageOrdereinzufügen: in den Datenstrom. Die von IPrintOemPS::Command bereitgestellten Daten ersetzen die %%PageOrderdes Treibers : Kommentar. |
PSINJECT_PAGES | Wenn der Druckertreiber bereit ist, %%Pageseinzufügen:nnn in den Datenstrom. Die von IPrintOemPS::Command bereitgestellten Daten ersetzen die %%Pagesdes Treibers :nnn Kommentar. |
PSINJECT_PAGESATEND | Wenn der Druckertreiber bereit ist, %%Pages:(atend) in den Datenstrom einzufügen. Die von IPrintOemPS::Command bereitgestellten Daten ersetzen den %%Pagesdes Treibers :(Atend)-Kommentar. |
PSINJECT_PAGETRAILER | Nachdem der Druckertreiber %%PageTrailer an den Datenstrom gesendet hat. |
PSINJECT_PLATECOLOR | Wenn der Druckertreiber bereit ist, %%PlateColoreinzufügen:Farbe in den Datenstrom. Die von IPrintOemPS::Command bereitgestellten Daten ersetzen die %%PlateColordes Treibers :Farbe Kommentar. |
PSINJECT_PSADOBE | Bevor der Druckertreiber %sendet! PS-Adobe zum Datenstrom. |
PSINJECT_SHOWPAGE | Bevor der Druckertreiber einen Befehl "Showpage" sendet. |
PSINJECT_TRAILER | Nachdem der Druckertreiber %%Trailer an den Datenstrom gesendet hat. |
PSINJECT_VMRESTORE | Nachdem der Druckertreiber einen Wiederherstellungsbefehl gesendet hat. (Die IPrintOemPS::Command--Methode muss alle Ressourcen erneut senden, die nach dem letzten PSINJECT_VMSAVE gesendet wurden, wenn die Ressourcen wiederverwendet werden.) |
PSINJECT_VMSAVE | Bevor der Druckertreiber einen Speichern Befehl sendet. (Siehe PSINJECT_VMRESTORE.) |
Die IPrintOemPS::Command-Methode muss IPrintOemDriverPS::D rvWriteSpoolBuf aufrufen, um die PostScript-Befehle einzufügen.
Wenn IPrintOemPS::Command Methoden von mehreren Rendering-Plug-Ins exportiert werden, werden die Methoden in der Reihenfolge aufgerufen, in der die Plug-Ins für die Installation angegeben werden, jedes Mal, wenn der Druckertreiber einen Einfügepunkt erreicht. Die folgenden Regeln gelten:
Wenn der Einfügepunkt einer ist, für den bereitgestellte Daten an die vom Druckertreiber bereitgestellten Daten angefügt werden, wird jedes Plug-In aufgerufen, und jedes Plug-In darf PostScript-Befehle anfügen.
Wenn der Einfügepunkt einer ist, für den die bereitgestellten Daten die vom Druckertreiber bereitgestellten Daten ersetzen, werden die Plug-Ins aufgerufen, bis eine IPrintOemPS::Command-Methode ERROR_SUCCESS für dwResultbereitstellt. Es werden keine anderen Plug-Ins aufgerufen. Wenn alle Plug-Ins ERROR_NOT_SUPPORTED bereitstellen, werden die vom Treiber bereitgestellten Daten nicht ersetzt.
Wenn der Einfügepunkt einer ist, für den die bereitgestellten Daten die vom Druckertreiber bereitgestellten Daten ersetzen, und wenn eine Anwendung die vom Treiber bereitgestellten Daten bereits mithilfe der POSTSCRIPT_INJECTION Drucker-Escapefunktion ersetzt hat, werden keine Plug-Ins aufgerufen.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Desktop |
Header- | prcomoem.h (einschließlich Prcomoem.h) |