Herunterladen Inhalt Inhalt Diese Seite drucken

Technische Hintergründe, Einschränkungen; Technische Hintergründe; Der Emf-Druckvorgang - LVBPrint PrintMulti Handbuch

Inhaltsverzeichnis

Werbung

Technische Hintergründe, Einschränkungen
Technische Hintergründe
Ein Printprozessor ist eine DLL, die vom Windows Spooler verwendet wird um eine vom GDI
aufgenommene Spooldatei abzuarbeiten. Der folgende Link zeigt eine gute Übersicht über die beim
Drucken involvierten Komponenten.
http://msdn2.microsoft.com/en-us/library/ms801074.aspx
Im Folgenden wird der „normale" EMF-Druckvorgang, der RAW-Druckmodus und der
Mechanismus erläutert, den PrintMulti verwendet.

Der EMF-Druckvorgang

Eine druckende Anwendung ruft GDI Grafikbefehle auf, die in eine Spooldatei geschrieben werden
(fast unverändert als EMF-Records). Der Spooler wird über einen RPC Aufruf mit der Verarbeitung
des Druckjobs beauftragt. Falls auf einen Netzwerkdrucker ausgegeben wird, übernimmt der Spooler
auf dem Server die Verarbeitung. Die Spooldatei wird dazu vorher auf den Server übertragen und
ggf. angepasst (z.B. Fonts eingebettet, die auf dem Server fehlen). Der Spooler ruft jetzt festgelegte
Einsprungpunkte des für den Drucker eingetragenen Printprozessors auf. Dieser nutzt das GDI um
die EMF-Befehle über den Druckertreiber in die RAW-Daten für den jeweiligen Drucker zu
übersetzen.
Durch die Verwendung des Spoolers ist das zeitraubende Rendering in die RAW-Daten vom
Druckvorgang der Anwendung entkoppelt, wodurch die Anwendungen nach dem Drucken deutlich
schneller wieder fortfahren können.
Dieser Druck-„Pfad" ist für einen reibungslosen Ablauf von PrintMulti unbedingt erforderlich.
EMF basiertes Drucken
EMF basiertes Drucken
Applikation
Applikation
RPC
GDI
GDI
Spoolfile
EMF
Spoolfile
Emf-Format
Emf-Format
Ggf. Client/Server Trennung
Spooler
Spooler
Printprozessor
Printprozessor
(z.B. WinPrint)
(z.B. WinPrint)
Language Monitor
Language Monitor
RAW
Port Monitor
Port Monitor
Port (z.B. LPT1)
7
GDI
GDI
EMF
Druckertreiber
Druckertreiber
RAW

Werbung

Inhaltsverzeichnis
loading

Inhaltsverzeichnis