Skip to content

Commit f34d6d0

Browse files
committed
renmatrix, renlinear: Add top and bottom options to textyalign
1 parent 7fc7d85 commit f34d6d0

File tree

2 files changed

+16
-10
lines changed

2 files changed

+16
-10
lines changed

src/renlinear.ps.src

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -299,7 +299,7 @@ begin
299299
/textwidth 0 textlines { stringwidth pop 2 copy lt {exch} if pop } forall tstr length 1 sub textgaps mul add def
300300
/textheight textlines length dup textascent mul exch 1 sub textlinegaps mul add def
301301

302-
/textxpos textxoffset pixx textwidth sub 2 div add def
302+
/textxpos textxoffset pixx textwidth sub 2 div add def % center
303303
textxalign (left) eq { /textxpos textxoffset def } if
304304
textxalign (right) eq { /textxpos pixx textxoffset sub textwidth sub def } if
305305
textxalign (offleft) eq { /textxpos textwidth textxoffset add neg def } if
@@ -308,10 +308,11 @@ begin
308308
/textxpos 0.0 def
309309
/textgaps pixx textwidth sub tstr length 1 sub div def
310310
} if
311-
/textypos textyoffset textheight add 1 add neg def
311+
/textypos textyoffset textheight add 1 add neg def % below
312312
textyalign (above) eq { /textypos textyoffset pixy add 1 add def } if
313+
textyalign (top) eq { /textypos textyoffset pixy add textheight sub def } if
313314
textyalign (center) eq { /textypos textyoffset pixy textheight sub 2 div add def } if
314-
315+
textyalign (bottom) eq { /textypos textyoffset def } if
315316
0 1 textlines length 1 sub {
316317
/i exch def
317318
textxpos textypos textascent textlinegaps add i mul add moveto
@@ -381,7 +382,7 @@ begin
381382
/textwidth 0 textlines { stringwidth pop 2 copy lt {exch} if pop } forall extratext length 1 sub extratextgaps mul add def
382383
/textheight textlines length dup textascent mul exch 1 sub extratextlinegaps mul add def
383384

384-
/extratextxpos extratextxoffset pixx textwidth sub 2 div add def
385+
/extratextxpos extratextxoffset pixx textwidth sub 2 div add def % center
385386
extratextxalign (left) eq { /textxpos extratextxoffset def } if
386387
extratextxalign (right) eq { /textxpos pixx extratextxoffset sub textwidth sub def } if
387388
extratextxalign (offleft) eq { /textxpos textwidth extratextxoffset add neg def } if
@@ -390,9 +391,11 @@ begin
390391
/textxpos 0.0 def
391392
/extratextgaps pixx textwidth sub extratext length 1 sub div def
392393
} if
393-
/textypos extratextyoffset textheight add 1 add neg def
394+
/textypos extratextyoffset textheight add 1 add neg def % below
394395
extratextyalign (above) eq { /textypos extratextyoffset pixy add 1 add def } if
396+
extratextyalign (top) eq { /textypos extratextyoffset pixy add textheight sub def } if
395397
extratextyalign (center) eq { /textypos extratextyoffset pixy textheight sub 2 div add def } if
398+
extratextyalign (bottom) eq { /textypos extratextyoffset def } if
396399

397400
0 1 textlines length 1 sub {
398401
/i exch def

src/renmatrix.ps.src

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -404,7 +404,7 @@ begin
404404
/textwidth 0 textlines { stringwidth pop 2 copy lt {exch} if pop } forall tstr length 1 sub textgaps mul add def
405405
/textheight textlines length dup textascent mul exch 1 sub textlinegaps mul add def
406406

407-
/textxpos textxoffset pixx textwidth sub 2 div add def
407+
/textxpos textxoffset pixx textwidth sub 2 div add def % center
408408
textxalign (left) eq { /textxpos textxoffset def } if
409409
textxalign (right) eq { /textxpos pixx textxoffset sub textwidth sub def } if
410410
textxalign (offleft) eq { /textxpos textwidth textxoffset add neg def } if
@@ -413,10 +413,11 @@ begin
413413
/textxpos 0.0 def
414414
/textgaps pixx textwidth sub tstr length 1 sub div def
415415
} if
416-
/textypos textyoffset textheight add 1 add neg def
416+
/textypos textyoffset textheight add 1 add neg def % below
417417
textyalign (above) eq { /textypos textyoffset pixy add 1 add def } if
418+
textyalign (top) eq { /textypos textyoffset pixy add textheight sub def } if
418419
textyalign (center) eq { /textypos textyoffset pixy textheight sub 2 div add def } if
419-
420+
textyalign (bottom) eq { /textypos textyoffset def } if
420421
0 1 textlines length 1 sub {
421422
/i exch def
422423
textxpos textypos textascent textlinegaps add i mul add moveto
@@ -467,7 +468,7 @@ begin
467468
/textwidth 0 textlines { stringwidth pop 2 copy lt {exch} if pop } forall extratext length 1 sub extratextgaps mul add def
468469
/textheight textlines length dup textascent mul exch 1 sub extratextlinegaps mul add def
469470

470-
/extratextxpos extratextxoffset pixx textwidth sub 2 div add def
471+
/extratextxpos extratextxoffset pixx textwidth sub 2 div add def % center
471472
extratextxalign (left) eq { /textxpos extratextxoffset def } if
472473
extratextxalign (right) eq { /textxpos pixx extratextxoffset sub textwidth sub def } if
473474
extratextxalign (offleft) eq { /textxpos textwidth extratextxoffset add neg def } if
@@ -476,9 +477,11 @@ begin
476477
/textxpos 0.0 def
477478
/extratextgaps pixx textwidth sub extratext length 1 sub div def
478479
} if
479-
/textypos extratextyoffset textheight add 1 add neg def
480+
/textypos extratextyoffset textheight add 1 add neg def % below
480481
extratextyalign (above) eq { /textypos extratextyoffset pixy add 1 add def } if
482+
extratextyalign (top) eq { /textypos extratextyoffset pixy add textheight sub def } if
481483
extratextyalign (center) eq { /textypos extratextyoffset pixy textheight sub 2 div add def } if
484+
extratextyalign (bottom) eq { /textypos extratextyoffset def } if
482485

483486
0 1 textlines length 1 sub {
484487
/i exch def

0 commit comments

Comments
 (0)