be4311c07e14feb728abc6425ee606ffaa611a58
markd
  Fri Jan 22 06:46:58 2021 -0800
merge with master

diff --git src/lib/psGfx.c src/lib/psGfx.c
index 333d54a..73606f6 100644
--- src/lib/psGfx.c
+++ src/lib/psGfx.c
@@ -185,39 +185,40 @@
 /* Draw a 4 sided filled figure that has line x1/y1 to x2/y2 at
  * it's top, a horizontal line at bottom at it's bottom,  and
  * vertical lines from the bottom to y1 on the left and bottom to
  * y2 on the right. */
 {
 FILE *f = ps->f;
 fprintf(f, "newpath\n");
 psMoveTo(ps, x1, y1);
 psLineTo(ps, x2, y2);
 psLineTo(ps, x2, bottom);
 psLineTo(ps, x1, bottom);
 fprintf(f, "closepath\n");
 fprintf(f, "fill\n");
 }
 
-void psSetFont(struct psGfx *ps, char *fontName)
+void psSetFont(struct psGfx *ps, char *fontName, double size)
 {
 FILE *f = ps->f;
 fprintf(f, "/%s findfont ", fontName);
 
 /* Note the 1.2 and the 1.0 below seem to get it to 
  * position about where the stuff developed for pixel
  * based systems expects it.  It is all a kludge though! */
-fprintf(f, "%f scalefont setfont\n", -(1/0.8)*ps->fontHeight*ps->yScale*1.5);
+fprintf(f, "%f scalefont setfont\n", -size*ps->yScale*1.2);
+ps->fontHeight = size*0.8;
 }
 
 void psTimesFont(struct psGfx *ps, double size)
 /* Set font to times of a certain size. */
 {
 FILE *f = ps->f;
 fprintf(f, "/Helvetica findfont ");
 
 /* Note the 1.2 and the 1.0 below seem to get it to 
  * position about where the stuff developed for pixel
  * based systems expects it.  It is all a kludge though! */
 fprintf(f, "%f scalefont setfont\n", -size*ps->yScale*1.2);
 ps->fontHeight = size*0.8;
 }