diff options
author | Kristaps Dzonsons <kristaps@bsd.lv> | 2010-07-04 19:24:00 +0000 |
---|---|---|
committer | Kristaps Dzonsons <kristaps@bsd.lv> | 2010-07-04 19:24:00 +0000 |
commit | 13c347f2a8126653b449bab4a1ae943f59dd5fac (patch) | |
tree | 17769b41c4e06bf03340c4a3e5b737b2ac0e5542 /term_ps.c | |
parent | 49dd9b5dd748b620a0ce6f13386ed83f152ae465 (diff) | |
download | mandoc-13c347f2a8126653b449bab4a1ae943f59dd5fac.tar.gz |
Backed out margin calculations in favour of much simpler rule of thumb:
margins are 1/9 the length/width.
Diffstat (limited to 'term_ps.c')
-rw-r--r-- | term_ps.c | 25 |
1 files changed, 10 insertions, 15 deletions
@@ -393,7 +393,7 @@ void * ps_alloc(char *outopts) { struct termp *p; - size_t pagex, pagey, margin, lineheight, m1, m2; + size_t pagex, pagey, marginx, marginy, lineheight; const char *toks[2]; const char *pp; char *v; @@ -476,28 +476,23 @@ ps_alloc(char *outopts) pagex = PNT2AFM(p, ((double)pagex * 2.834)); pagey = PNT2AFM(p, ((double)pagey * 2.834)); - /* - * Calculate margins. First get the minimum text width: either - * page minus margins or width of 65 'm' characters. Set total - * margins to page size minus text width. - */ + /* Margins are 1/9 the page x and y. */ - m1 = ps_width(p, 'm') * 65; - m2 = pagex - (2 * PNT2AFM(p, MINMARGIN_PNT)); - margin = (pagex - (m1 < m2 ? m1 : m2)) / 2; + marginx = (size_t)((double)pagex / 9.0); + marginy = (size_t)((double)pagey / 9.0); lineheight = PNT2AFM(p, 16); p->engine.ps.width = pagex; p->engine.ps.height = pagey; - p->engine.ps.header = pagey - (margin / 2) - (lineheight / 2); - p->engine.ps.top = pagey - margin; - p->engine.ps.footer = (margin / 2) - (lineheight / 2); - p->engine.ps.bottom = margin; - p->engine.ps.left = margin; + p->engine.ps.header = pagey - (marginy / 2) - (lineheight / 2); + p->engine.ps.top = pagey - marginy; + p->engine.ps.footer = (marginy / 2) - (lineheight / 2); + p->engine.ps.bottom = marginy; + p->engine.ps.left = marginx; p->engine.ps.lineheight = lineheight; - p->defrmargin = pagex - (margin * 2); + p->defrmargin = pagex - (marginx * 2); return(p); } |