aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/term_ps.c
diff options
context:
space:
mode:
authorKristaps Dzonsons <kristaps@bsd.lv>2010-06-28 23:26:09 +0000
committerKristaps Dzonsons <kristaps@bsd.lv>2010-06-28 23:26:09 +0000
commit1333797c489e45a9ce20753440cdba7ebadf299d (patch)
treefc0642696dec7ae778a6d97f87d3138e1313de36 /term_ps.c
parent7e1ed558d5e8927b3247d0f3d61fc05fb041fe09 (diff)
downloadmandoc-1333797c489e45a9ce20753440cdba7ebadf299d.tar.gz
mandoc-1333797c489e45a9ce20753440cdba7ebadf299d.tar.zst
mandoc-1333797c489e45a9ce20753440cdba7ebadf299d.zip
Clean-up of variable-width glyph support. Adds no new code; only
restructured to make a bit more readable. Also removed an unused entry in the PS engine structure.
Diffstat (limited to 'term_ps.c')
-rw-r--r--term_ps.c22
1 files changed, 12 insertions, 10 deletions
diff --git a/term_ps.c b/term_ps.c
index 00bede51..ab3de54b 100644
--- a/term_ps.c
+++ b/term_ps.c
@@ -1,4 +1,4 @@
-/* $Id: term_ps.c,v 1.14 2010/06/28 22:46:21 kristaps Exp $ */
+/* $Id: term_ps.c,v 1.15 2010/06/28 23:26:09 kristaps Exp $ */
/*
* Copyright (c) 2008, 2009 Kristaps Dzonsons <kristaps@bsd.lv>
*
@@ -31,14 +31,21 @@
#include "main.h"
#include "term.h"
+/* TODO: all this will go away with different paper sizes. */
+#define PS_CHAR_HEIGHT 12
+#define PS_CHAR_TOPMARG (792 - 24)
+#define PS_CHAR_TOP (PS_CHAR_TOPMARG - 36)
+#define PS_CHAR_LEFT 36
+#define PS_CHAR_BOTMARG 24
+#define PS_CHAR_BOT (PS_CHAR_BOTMARG + 36)
+
struct glyph {
int wx; /* WX in AFM */
};
-#define MAXCHAR 95
-
struct font {
const char *name; /* FontName in AFM */
+#define MAXCHAR 95 /* total characters we can handle */
struct glyph gly[MAXCHAR]; /* glyph metrics */
};
@@ -342,13 +349,7 @@ static const struct font fonts[3] = {
} },
};
-#define PS_CHAR_HEIGHT 12
-#define PS_CHAR_TOPMARG (792 - 24)
-#define PS_CHAR_TOP (PS_CHAR_TOPMARG - 36)
-#define PS_CHAR_LEFT 36
-#define PS_CHAR_BOTMARG 24
-#define PS_CHAR_BOT (PS_CHAR_BOTMARG + 36)
-
+/* These work the buffer used by the header and footer. */
#define PS_BUFSLOP 128
#define PS_GROWBUF(p, sz) \
do if ((p)->engine.ps.psmargcur + (sz) > \
@@ -388,6 +389,7 @@ ps_alloc(void)
return(NULL);
p->defrmargin = 612 - (PS_CHAR_LEFT * 2);
+
p->type = TERMTYPE_PS;
p->letter = ps_letter;
p->begin = ps_begin;