Lowlevel

Lowlevel => Lowlevel-Coding => Thema gestartet von: Coffee am 13. October 2007, 18:25

Titel: Drucken
Beitrag von: Coffee am 13. October 2007, 18:25
Hi,

den Drucker (LPT) krieg ichja initialisiert, aber wie kann ich nun etwas drucken? Hat jemand den Code um ein Zeichen auszugeben oder ein TUt oder sowas? Gibt es da standards(hoffentlich^^)?

MfG
Titel: Re: Drucken
Beitrag von: Homix am 13. October 2007, 19:22
Hi,
ich hab mich damit noch nie beschäftigt, aber z.B. Windows hat ja duzende von Druckertreiber mitgeliefert, von fast allen Herstellern für jedes Modell, insofern denke ich nicht, dass es da Standards gibt (zumindest nicht für moderne Sachen mit Grafik, ect...; bei nur gleichgroßem Text könnte das natürlich anders sein).

Grüsse,
Stefan
Titel: Re: Drucken
Beitrag von: Termite am 13. October 2007, 23:29
Moin

für die "top modernen und billigen" windindows Drucker hat man wenig chancen auser man spickt bei den linux treibern, fals da was forhanden ist.

ansonsten. gibt es jede menge standards. Epson emulation ist z.B. eine. HP/GL, ...

Bei nem alten Nadeldrucker sollte es reichen einfach Druckbare ASCII Zeichen auf dem LPT auszugeben, und der Drucker sollte anfangen zu rattern. Mittels /n (0x0d)und /r (0x0A) kann man in eine neue zeile schalten. Mittlels FormFead ( 0x??) kann man dann die seite wieder auswerfen. Bei nem Tintendrucker kann es ggf sein das er bis zum FF wartet und dann die ganze Seite druckt. Genauso wie bei den Laser Druckern fals die das noch unterstützen.

Alle Erweiterten funktionen wie Schrift wechsel, Fetschrift und Grafikdruck kann man mit sogenanten Escape Sequenzen einleiten. siehe Epson Emulation

Bei HP/GL bzw. Postscript sind das dann meist keine Escape Sequenzen mehr. Aber selbst dafür finden sich spezifikationen im netz.

flas du unter Dos / windows mittels copy test.txt lpt1 was auf deinen drucker ausgeben kannst, steht dem Experimentieren nichts mehr im wege.

gruss
Titel: Re: Drucken
Beitrag von: Coffee am 14. October 2007, 10:37
FormFead war 0x0C oder?
btw hier das ist richtig oder:

\a Signalton ,0x7
\b Backspace 0x8
\f Seitenvorschub, form feed 0xC
\n Zeilenvorschub, newline 0xA
\r Wagenrücklauf, carriage return 0xD
\t Tabulator, 0x9
\v Vertikaltabulator, 0xB
Titel: Re: Drucken
Beitrag von: Termite am 15. October 2007, 13:18
Hi

sieht soweit gut aus.

Einleiten von ESC Sequenzen geht über 0x1B 0x5B

und noch viel spass beim Drucken.

gruss