version 1.63, 2014/08/10 23:54:41 |
version 1.64, 2014/08/13 20:34:29 |
Line 1115 ps_hspan(const struct termp *p, const struct roffsu *s |
|
Line 1115 ps_hspan(const struct termp *p, const struct roffsu *s |
|
* All of these measurements are derived by converting from the |
* All of these measurements are derived by converting from the |
* native measurement to AFM units. |
* native measurement to AFM units. |
*/ |
*/ |
|
|
switch (su->unit) { |
switch (su->unit) { |
|
case SCALE_BU: |
|
/* |
|
* Traditionally, the default unit is fixed to the |
|
* output media. So this would refer to the point. In |
|
* mandoc(1), however, we stick to the default terminal |
|
* scaling unit so that output is the same regardless |
|
* the media. |
|
*/ |
|
r = PNT2AFM(p, su->scale * 72.0 / 240.0); |
|
break; |
case SCALE_CM: |
case SCALE_CM: |
r = PNT2AFM(p, su->scale * 28.34); |
r = PNT2AFM(p, su->scale * 72.0 / 2.54); |
break; |
break; |
case SCALE_IN: |
|
r = PNT2AFM(p, su->scale * 72.0); |
|
break; |
|
case SCALE_PC: |
|
r = PNT2AFM(p, su->scale * 12.0); |
|
break; |
|
case SCALE_PT: |
|
r = PNT2AFM(p, su->scale * 100.0); |
|
break; |
|
case SCALE_EM: |
case SCALE_EM: |
r = su->scale * |
r = su->scale * |
fonts[(int)TERMFONT_NONE].gly[109 - 32].wx; |
fonts[(int)TERMFONT_NONE].gly[109 - 32].wx; |
break; |
break; |
case SCALE_MM: |
|
r = PNT2AFM(p, su->scale * 2.834); |
|
break; |
|
case SCALE_EN: |
case SCALE_EN: |
r = su->scale * |
r = su->scale * |
fonts[(int)TERMFONT_NONE].gly[110 - 32].wx; |
fonts[(int)TERMFONT_NONE].gly[110 - 32].wx; |
|
break; |
|
case SCALE_IN: |
|
r = PNT2AFM(p, su->scale * 72.0); |
|
break; |
|
case SCALE_MM: |
|
r = su->scale * |
|
fonts[(int)TERMFONT_NONE].gly[109 - 32].wx / 100.0; |
|
break; |
|
case SCALE_PC: |
|
r = PNT2AFM(p, su->scale * 12.0); |
|
break; |
|
case SCALE_PT: |
|
r = PNT2AFM(p, su->scale * 1.0); |
break; |
break; |
case SCALE_VS: |
case SCALE_VS: |
r = su->scale * p->ps->lineheight; |
r = su->scale * p->ps->lineheight; |