PDA

View Full Version : Proportionalschrift



Peterfritz
20-05-19, 08:46
Hallo Zusammen,

vielleicht können Sie mir weiterhelfen. (AS400) RPG 3 / RPG400

Wir verwenden momentan für Schriftstücke in einer normalen PRTF mit *AFPDS
die Schriftart FNTCHRSET(C0620090 T1001141) = GOTHIC Text 9 PTS----------> Nicht Proportionale Schriftart

Drucke ich mehrere Betragsfelder untereinander an, kommt das Ganze wie gewöhnlich korrekt raus ( Feld hat 10 Stellen und wird rechtsbündig gestellt )
Die Felder kommen von einer Datenbank-Datei (10 Stellen alpha und sind z. Bsp. so aufbereitet ' 2,19'

-------------------------------------------------------------------------------------------------------------
Nehme ich die eine proportionale Schriftart FNTCHRSET(C0H20090 T1001141) = HELVETICA LATIN1 9PTS / Diese Schriftart ist auch so gewünscht.

Kommt das Ganze( wie unten abgebildet) so raus, also versetzt obwohl ich das Ganze rechtsbündig stelle.

2,19
22,49
122,01
3000,16

Mir ist klar, dass bei der proportionalen Schrift ein 'i" kleiner ist wie eine 'O' usw.

Jetzt bin ich hergegangen und hab mir eine kleine Subroutine geschrieben.
Das ganze in eine Feldgruppe gestellt und das erste Nicht "Blank"abgefragt und dann dem entsprechend nach rechts verschoben .
Somit habe die Zahlenkolonne wieder korrekt untereinander stehen.
Aber das kann es ja nicht sein.
Gibt es dafür eine andere Lösung ?

Vielen Dank im Voraus.

Fuerchau
20-05-19, 17:13
Leider nein. Eine Berechnungsunterstützung für Schriftlaufweiten oder eine rechsbündige Positionierung mit AFPDS-Codes gibt es leider nicht.
Du musst dir (leider) die Laufweiten der Ziffern mal ausmessen (1/72-Zoll). Dann musst du die Zeichen vor dem Komma zählen und kannst dann entweder wie bisher die Anzahl Leerzeichen davorsetzen, oder per Position(...) den Text setzen.
Letzteres ist wieder schwierig, da Position() die Koordinate auf der Seite angibt, du kannst also überall hin drucken. Du musst also die aktuelle Zeile ermitteln um die Position korrekt zu berechnen.
Allerdings darfst du dann die Messung (*inch/*cm) nicht durch OVRPTF ändern lassen.
Auch Hosttranfrom, PAGRTT(*COR) u.ä. verfälschen die Ergebnisse.

Zu guter letzt gibt es da noch Spooltools, die ein Layout mit Proportionalschriften meist unterstützen.

camouflage
21-05-19, 07:44
Aber Baldur,

Zahlenreihen lassen sich doch am Dezimalkomma ausrichten...

Fuerchau
21-05-19, 08:11
Dann zeige bitte wie, das wäre doch schon mal was;-).

AG1965_2
18-06-19, 16:53
Der Witz ist, dass Ziffern in Proportionalschriften gleich breit sind.
(Es gibt sicher einige exotische Ausnahmen, die die Regel bestätigen. :-) )
Und wenn man Glück hat, findet man auch ein Leerzeichen, das genau so breit ist wie die Ziffern.

hpfeifer
28-06-19, 14:25
Hallo, mit unserem SpoolMaster geht das ganz einfach - man muss nur in unserem Formular angeben, dass das Feld rechtsbündig zu drucken ist, auch für Proportionalschriften werden dann intern die tatsächlichen Breiten errechnet und die Positionen angepasst. Hab ich zufällig gerade heute auch auf unserer Facebook Seite gepostet.

ILEMax
28-06-19, 15:09
OT: Hier ist wohl jemand auf Werbetour
Da wir erfolgreich ein anderes Tool einsetzen ... vergleichen lohnt sich!