Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
peter_u

Anmeldungsdatum: 19.09.2006 Beiträge: 17 Wohnort: Remscheid, NRW
|
Verfasst am: 19.09.2006, 12:54 Titel: Druckeransteuerung mit Escape-Sequenzen unter FB |
|
|
Einen schönen guten Tag.
Nachdem ich - offengestanden - durch Zufall auf FB gestossen bin, habe ich dies sofort installiert und bin begeistert. Ich habe - zuletzt vor rund 5 Jahren - mit einem alten Powerbasic (für Dos) gearbeitet und bin nun dabei, Programme in FB umzuschreiben.
Wie ich dem Forum entnommen habe gibt es einige Probleme mit der Druckausgabe (USB/GDI Drucker). Ich habe dies durch den Kauf von Brother-Lasern HL5140 und HL5150D (beide PCL, der 5150 zusätzlich mit IBM und Epson Emulation) gelöst, welche von dem alten Powerbasic ohne Probleme mit Espace-Sequenzen zu steuern sind.
Bei FB bekomme ich dies nicht hin. Bei Powerbasic funktionierte:
WIDTH "LPT1:",255
lprint chr$(27);"(10U";chr$(27);"(s0p12h0s0b4102T";
Info: Wählt Zeichensatz und eingebaute Schriftart des Brother Lasers
LPRINT CHR$(27);CHR$(3 ;CHR$(108);"72";CHR$(080);
Info: Setzt Seite auf 72 Zeilen
LPRINT "Text...."
Bei Nutzung von FB wird der Befehl Escape CHR$(27) anscheinend nicht oder verfälscht übertragen (wie auch immer mit 100 addiert). Jedenfalls erscheint - jeweils statt Ausführung des Escapebefehls - beim Ausdruck das Zeichen chr$(127) = das Rechteck, gefolgt von den oben genannten Befehlen als Textausdruck.
Zur Info. Ich nutze XP Pro - dies dürfte jedoch nicht das Problem sein, da ja die Druckeransteuerung, somit der Ausdruck mit Powerbasic ohne Probs funktioniert.
Es wäre nett, wenn mir jemand einen Tipp geben könnte. Vielen Dank.
Gruss Peter _________________ Der alte Mann lernt noch
--- Learning by doing --- |
|
Nach oben |
|
 |
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1876 Wohnort: D59192
|
|
Nach oben |
|
 |
peter_u

Anmeldungsdatum: 19.09.2006 Beiträge: 17 Wohnort: Remscheid, NRW
|
Verfasst am: 20.09.2006, 04:15 Titel: Leider noch keine Lösung |
|
|
Hallo Volta,
zunächst herzlichen Dank. Auch bei Powerbasic gab es die Möglichkeit LPRINT oder OPEN LPT1 AS... zu nutzen. Beides funktioniert problemlos.
Bei Freebasic sieht der Ausdruck so aus
Sorry. Nicht wie aus dem Ausdruck das 7. sondern das 5. Zeichen.
Freebasic ersetzt anscheinend den Code chr$(27)=ESC durch chr$(127).
Hintergrund: Durch die in meinem ersten Beitrag genannten Codes kann ich die eingebauten Zeichensätze des Brother Lasers ansprechen, die auch das Eurozeichen enthalten.
Ohne ESC geht das leider nicht.
Ich finden in den Links keinen Hinweis darauf, warum dies so ist (oder mein Englisch ist zu schlecht).
Gruss Peter [/img] _________________ Der alte Mann lernt noch
--- Learning by doing --- |
|
Nach oben |
|
 |
peter_u

Anmeldungsdatum: 19.09.2006 Beiträge: 17 Wohnort: Remscheid, NRW
|
Verfasst am: 20.09.2006, 04:50 Titel: Es ist geschafft |
|
|
Hallo nochmal.
Probieren geht über studieren.
Ich habe mit Hilfe des zweiten Links von Volta folgendes gefunden:
Open lpt "lpt1:EMU=TTY" For Output As 98
PRINT #98, ...
LPRINT gibt (zumindest in meinem Fall) zwar Text, aber keine Escape Steuersequenzen zum Drucker.
Allerdings funktioniert es auch nicht mit oben genanntem Open Befehl. Bei mir funktioniert es einwandfrei, wenn ich
Open lpt "lpt1:" for Output as 98 (also das EMU=TTY weglasse)
nutze. Sämtliche Steuersequenzen des Brother 5150D (PCL5, IBM und Epson Emulation, sowie Barcode-Fonts eingebaut) lassen sich ansprechen.
Hier ein Testausdruck (Auszug) - alle Fonts haben das Euro-Zeichen.
Ich hoffe hier nicht zuviel Platz verschwendet zu haben, vielleicht hilft meine Lösung aber auch anderen FB-Beginnern. Danke nochmals an Volta.
Gruss Peter _________________ Der alte Mann lernt noch
--- Learning by doing --- |
|
Nach oben |
|
 |
|