Hi Lucas,
Nun ja.. ganz so ist es auch nicht. Aber mein Kollege und ich sitzen
seit ner halben Stunde da und stellen uns gegenseitig verzweifelt die
Frage "Wie mache ich einen Druckertreiber?".
für welchen Drucker denn?
Damit würde ich die Überlegung mal beginnen.
Soweit ich mir das Wesen eines Druckertreibers vorzustellen vermag,
ist das im Wesentlichen ein Programm, welches die Kommunikations-
schnittstelle zwischen einem Rechner und einem Drucker bedient.
Diese Kommunikation ist insbesondere bidirektional - der Druckertreiber
muß also sowohl Daten an den Drucker senden als auch Daten (Statusmel-
dungen etc.) von diesem Drucker entgegen nehmen können.
Und beides auch quasiparallel - es könnte ja mitten im Senden einer
Seite jemand das Papier herausziehen und der Drucker möchte jetzt dem
Druckertreiber mitteilen, daß die aktuelle Seite wohl irgendwie nicht
so richtig gedruckt werden kann oder was auch immer.
Also.. ganz konkret: Es gibt ja ne Menge Tools mit denen ich ein
"Print-to-file PDF" erzeugen kann (also, ich geh auf "Drucken" in
einer Anwendung und schon wird mir ein PDF erzeugt- die heutige
Technologie erstaunt mich immer wieder aufs Neue :-p).
Was das Thema "Druckertreiber" mit PDF zu tun haben soll, das habe ich
nicht verstanden.
Daß man einen Druckertreiber verwenden kann, um statt der Kommunikation
mit einem Drucker alternativ auch PDF-Dateien herzustellen, heißt kei-
neswegs, daß ein "richtiger" Druckertreiber nicht noch eine Menge an-
derer Aufgaben haben könnte.
Zu der Funktionaltiät eines Druckertreibers wissen wir eigentlich
relativ wenig -
Die hängt m. E. nicht unwesentlich von der Funktionalität des Druckers
ab. Wenn der Drucker viele verschiedene Dinge erzählen kann, dann wird
der Druckertreiber natürlich komplexer, als wenn der Drucker einfach nur
kommentarlos Daten entgegen nimmt.
es wird an irgendeiner Stelle ein Spoolfile erzeugt, an den Drucker
gesendet und der interpretiert dann die Steuerzeichen.
Ja, auch das.
Aber von der Architektur des Hauptprogramms ist das sogar eher nur eines
von vielen Features.
Nicht zu vernachlässigen ist m. E. die Anforderung, daß der Drucker-
treiber auch mit dem Benutzer kommunizieren will - beispielsweise die-
sem eine Fehlermeldung auf den Bildschirm malt und ähnliche Dinge.
Die erste Frage, die sich uns stellt: Wird der Spool von der Anwendung
erzeugt und dann an den Treiber gesendet (so wies mein Kollege
behauptet) oder wird der Spool erst vom Treiber erzeugt (so wie ich
das vermute).
Ich kenne die API des Betriebssystems nicht, über welches der Drucker-
treiber aufgerufen wird (davon wird das nämlich abhängen). Das kann also
wohl von Betriebssystem zu Betriebssystem unterschiedlich ausfallen.
Und was muss ich anstellen damit ich nun aus dem Spoolfile ein PDF-
file erzeuge?!
Warum solltest Du das tun wollen? Versteht Dein Drucker denn PDF?
Also so ganz ist mir Deine Aufgabenstellung nicht klar geworden.
Deine Fragestellung ist ohne Angabe des Druckers und des Betriebssystems
kaum sinnvoll zu beantworten, fürchte ich.
Viele Grüße
Michael