Anmelden

View Full Version : Anzahl Druckzeilen vor Druck des Satzformats ermitteln



Seiten : 1 [2]

BenderD
29-11-10, 14:45
... woher soll denn das arme Programm wissen, was du als nächstes ausgeben willst????

harkne
29-11-10, 14:48
Na irgendein Api halt dem ich die Druckerdatei das Druckformat und den Zustand der Bezugszahlen mitgebe.

Robi
29-11-10, 17:33
Dieses 'API' habe ich in meiner Antwort beschrieben, Fuerchau ähnlich, nur intern statt extern.

RobertMack
29-11-10, 17:49
Na irgendein Api halt dem ich die Druckerdatei das Druckformat und den Zustand der Bezugszahlen mitgebe.

Immerhin wissen die Bezugszahlen, wieviele Zeilen als nächstes kommen werden :)

F ... PRINTER ... INFDS(PRTDS)
D PRTDS DS
D OVRFLW 188 189 B 0
D LFDZL 367 368B 0

01 Eval PosX = 1
03 Eval PosX = 2
05 Eval PosX = 5

If (LFDZL + PosX) >= OVRFLW
Write Kopf
EndIf
Write Pos


(nicht schlagen Jungs, die Bezugszahlen waren schon da :D )

Fuerchau
29-11-10, 18:41
Auch nach viel Mühe habe ich kein API hierfür gefunden.
Die Attribute SKIPA/B, SPACEA/B werden wohl nur als Datenstrom in der PRTF verschlüsselt und entsprechend des Typs (SCS/AFPDS/IPDS) an die Spooldatei ausgegeben.

Aber ich sehe das nicht als kritisch, da nun mal ein Programm seine Druckausgabe kennen muss um Zeilenvorschübe/Seitenwechsel korrekt zu verarbeiten.
Eine Änderung der PRTF zieht doch normalerweise immer eine Kontrolle des Programmes nach sich ob noch alles so funktioniert.

Kaufmann
30-11-10, 08:41
Schreibe die Druckausgabe ohne Sofortdruck raus. Statt der max. Seitenzahl drucke ein Ersatzzeichen an.
Lese die Ausgabe in eine tmp. Datei in der QTEMP und ersetze die Ersatzzeichen gegegen Seitenanzahl und gebe es richtig aus.