Wie geht eigentlich das Drucken ?



  • Ich habe nun mehrere Bücher und Tutorials zum Thema
    "C-Programmierung unter Linux" gelesen, aber keines hat sich mit der
    Programmierung des Druckens beschäftigt.
    Wie programmiere ich das Drucken einer Seite ?
    Und gibt es irgendwo ein Tutorial dazu ?



  • Hi das was ich unten beschreibe ist zwar nicht ganz profssionel aber es geht.

    Möglichkeit 1:
    Eine Möglichkeit ist ein Aufruf des standartprogramms lpr mitels execl().
    Da execl den aktuelen code mit dem aufgerufenen(daher den von lpr) ersetzt,
    empfehlt es sich jedoch forerst ein childprocess aufzurufen und in diesem
    erst execl() aufzurufen.

    Möglichkeit 2:)
    Da bei Unix ales eine Datei ist, kannst du einfach mitels fopen()
    sie Datei '/dev/lp0' zum schreiben öffnen und mit fwrite() in diese schreiben.
    vergiss nicht fclose()
    Achtung: Dies ist meinerseits nur Theorie, da nicht ausprobiert ;P

    Gruss 🙂



  • Normalerweise generierst du PostScript und schickst das an den Drucker.

    Wie man am Besten unter KDE druckt wird im folgenden Tutorial gezeigt:

    http://printing.kde.org/developer/tutorial/

    Unter Qt nimmt man die Klasse QPrinter und man malt auf der Seite, wie auf dem Bildschirm.



  • Postscript generieren ist auf alle Fälle eine gute Idee; dann kann man den User auch aussuchen lassen, wohin er den Ausdruck schicken möchte.
    Und der User kan dann aussuchen, ob das lpr oder was auch immer sein soll; so machen es die meisten Programme und das ist auch die angenehmste und schönste Variante. (Zumindest wenn man nicht gerade wie von Ponto vorgeschlagen eine Anwendung mit KPrint oä zusammenbastelt.)



  • Ich denke,dass postscript ein Gedanke in die richtige Richtung ist.
    das Tutorial ist gut,- ABER es arbeitet auf Qt.
    Ich selbst habe bisher meine Software mit GTK entwickelt und möchte dies
    natürlich auch beibehalten.
    Vermutlich gibt es dort etwas ähnliches.
    Weiss jemand etwas dazu ???



  • malabarista schrieb:

    Ich denke,dass postscript ein Gedanke in die richtige Richtung ist.
    das Tutorial ist gut,- ABER es arbeitet auf Qt.
    Ich selbst habe bisher meine Software mit GTK entwickelt und möchte dies
    natürlich auch beibehalten.
    Vermutlich gibt es dort etwas ähnliches.
    Weiss jemand etwas dazu ???

    Soweit ich weiss hat GTK keine direkte Unterstützung zum Drucken a la QPrinter. Aber irgendwie müssen die GNOME Jungs ja Druckunterstützung in ihre Anwendungen reingefrickelt haben. Vielleicht schaust du da mal nach, wie die das machen.


Anmelden zum Antworten