Endlosdruck auf Matrixdrucker

Von Ausgaben mit der Gra-Engine über Generatoren bis zum Export in diversen Formaten

Moderator: Moderatoren

Antworten
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21186
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Endlosdruck auf Matrixdrucker

Beitrag von Manfred »

Tja,

hier scheint sich ja wohl noch was aufzutun. Bisher habe ich Belege gedruckt, die schon mal über eine normale Seitenlänge hinaus gehen können. Ich hab einfach nur Zeile für Zeile geschoben. Kann es sein, wenn ich über das Printerobjekt drucke, dass der Drucker dann nach einer vollen Seite nicht mehr weiterdruckt, weil Windows sich denkt: "Nö, die Seite ist jetzt Schluß."? Das man Endlospapier als solches ohne Seitenvorschub o.ä. nicht endlos bedrucken kann? Oder gibt es einen Trick dazu?
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15694
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Endlosdruck auf Matrixdrucker

Beitrag von brandelh »

Manfred hat geschrieben:Kann es sein, wenn ich über das Printerobjekt drucke, dass der Drucker dann nach einer vollen Seite nicht mehr weiterdruckt, weil Windows sich denkt: "Nö, die Seite ist jetzt Schluß."?
genau Manfred, das XbpPrinter Objekt hat eine Seitenhöhe z.B. A4 ! die kann man sicher auch auf 12" Papier ändern (ist etwas länger) ... aber wenn ich eine neue Seite will brauche ich einen Seitenvorschub 8)
Manfred hat geschrieben:Das man Endlospapier als solches ohne Seitenvorschub o.ä. nicht endlos bedrucken kann? Oder gibt es einen Trick dazu?
Ist Endlospapier etwas anderes als eine volle Papierschublade ?

Der Trick besteht darin, mit

Code: Alles auswählen

set printer to ...
set printer on
do while ! eof()
    ? "Was immer ich will"
    skip
enddo
? chr(12)
set printer to
einfach die Zeilen zu drucken, den Drucker den Seitenrand und Vorschub selbst ermitteln zu lassen und gut ist.
Gruß
Hubert
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15694
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Endlosdruck auf Matrixdrucker

Beitrag von brandelh »

Beim Drucken mit XbpPrinter muss man selbst zählen ob eine Zeile noch auf die Seite passt und notfalls einen Vorschub auslösen (:newPage() ), allerdings kann es eine ziemliche Geduldsprobe werden die Seitengröße im Windowsdruckertreiber sauber einzustellen. Windows mag dot matrix printer mit Endlospapier nicht wirklich :D
Gruß
Hubert
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21186
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Re: Endlosdruck auf Matrixdrucker

Beitrag von Manfred »

Hi Hubert,
so wie Du das oben beschrieben hast, habe ich es bisher immer gemacht. Naja, so ähnlich jedenfalls. Dabei hatte ich auch keine Probleme wie im anderen thread und die hier auch nicht. Watt´n Mist.
Jetzt mache ich das mit express++.

Ich sags ja, das wird ein interessantes WE.

Ach so: Ja, Endlospapier ist schon was anderes. Bisher habe ich gnadenlos über die Perforation drüber gedruckt, ohne Wenn und Aber, sprich ohne Rand oben und unten.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12906
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 45 Mal

Re: Endlosdruck auf Matrixdrucker

Beitrag von AUGE_OHR »

hi,
Manfred hat geschrieben: Ach so: Ja, Endlospapier ist schon was anderes. Bisher habe ich gnadenlos über die Perforation drüber gedruckt, ohne Wenn und Aber, sprich ohne Rand oben und unten.

Code: Alles auswählen

   SET CONSOLE OFF
   SET DEVICE TO PRINT
   SET PRINTER TO LPT1
   FOR i = 1 TO 80
   ? "Zeile"+STR(i)
   NEXT

   EJECT           // CHR(12)

   SET DEVICE TO SCREEN
   SET PRINTER TO
   SET CONSOLE ON
Du solltest dir ein kleines Test Programm schreiben und mal ausprobieren wieviele Zeilen du auf
eine (Endlos) Seite bekommst. Oft sind die NEC auf 11 Zoll und du brauchst 12 Zoll = 297mm.
gruss by OHR
Jimmy
Benutzeravatar
Wolfgang Ciriack
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2934
Registriert: Sa, 24. Sep 2005 9:37
Wohnort: Berlin
Hat sich bedankt: 13 Mal
Danksagung erhalten: 34 Mal
Kontaktdaten:

Re: Endlosdruck auf Matrixdrucker

Beitrag von Wolfgang Ciriack »

Hi Jimmy,
12 Zoll sind nicht 29,7 cm sondrn 30,48 cm :wink:
M.E. bekommt man 72 Zeilen auf ein 12" Blatt.
Viele Grüße
Wolfgang
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21186
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 210 Mal
Danksagung erhalten: 67 Mal

Re: Endlosdruck auf Matrixdrucker

Beitrag von Manfred »

Hi,

alles überflüssig. Unter express++ gibt es einen Printer Parameter der da lautet :lAutoEject. Den setzt man auf .T. und schon klappt es auch mit dem Endlosdruck. Egal, ob im Drucker Einzelblatt oder Endlosdruck steht. Sobald der wieder auf .F. steht, hört der Druck nach besagter Anzahl auf.

Jetzt schaue ich mir das Printerobjekt weiter an, wer weiß, was Roger noch so alles versteckt hat da drin. Es muß ja von ihm sein, ich habe in der Anleitung von xbase++ nichts dazu gefunden.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Antworten