From cc57862cb46c7bf63f5f0b4740ea28eb597fd2be Mon Sep 17 00:00:00 2001 From: David Kastrup Date: Tue, 9 Jul 2013 20:22:24 +0200 Subject: [PATCH] Issue 3449: Shift accordion register symbols down by half a line width This makes the documented proposals for combining the accordion register symbols together with the accordion dot symbol match in positioning. It would have been feasible instead to shift the (centered) accordion dot, but some register symbols work with different line widths. The net result will now exhibit a slight descender (namely half a linewidth) of the accordion register symbols when used in a running line. --- mf/feta-accordion.mf | 28 ++++++++++++++++++++++++---- 1 file changed, 24 insertions(+), 4 deletions(-) diff --git a/mf/feta-accordion.mf b/mf/feta-accordion.mf index 354e0f3e91..dd0df9b1fc 100644 --- a/mf/feta-accordion.mf +++ b/mf/feta-accordion.mf @@ -40,7 +40,12 @@ fet_beginchar ("accordion register discant", "discant") set_char_box (r# + accreg_linethickness# / 2, r# + accreg_linethickness# / 2, - 0, 2 r# + 0.7 accreg_linethickness#); + 0.35 accreg_linethickness# / 2, + 2 r# + 0.35 accreg_linethickness# / 2); + + local_copy (transform)(currenttransform); + currenttransform := + currenttransform shifted (0, -vround (0.35 accreg_linethickness)); lh = vround (2/3 r); lt = vround (0.7 accreg_linethickness); @@ -123,7 +128,12 @@ fet_beginchar ("accordion register freebass", "freebass") set_char_box (r# + accreg_linethickness# / 2, r# + accreg_linethickness# / 2, - 0, 2 r# + 0.7 accreg_linethickness#); + 0.35 accreg_linethickness#, + 2 r# + 0.35 accreg_linethickness#); + + local_copy (transform)(currenttransform); + currenttransform := + currenttransform shifted (0, -vround (0.35 accreg_linethickness)); lh = vround r; lt = vround (0.7 accreg_linethickness); @@ -181,7 +191,12 @@ fet_beginchar ("accordion register stdbass", "stdbass") set_char_box (r# + accreg_linethickness# / 2, r# + accreg_linethickness# / 2, - 0, 2 r# + 0.7 accreg_linethickness#); + 0.35 accreg_linethickness#, + 2 r# + 0.35 accreg_linethickness#); + + local_copy (transform)(currenttransform); + currenttransform := + currenttransform shifted (0, -vround (0.35 accreg_linethickness)); lh = vround (1/2 r); lt = vround (0.7 accreg_linethickness); @@ -253,7 +268,12 @@ fet_beginchar ("accordion register bayanbass", "bayanbass") set_char_box (accreg_lh# + accreg_linethickness# / 2, accreg_lh# + accreg_linethickness# / 2, - 0, 3 accreg_lh# + accreg_linethickness#); + 0.5 accreg_linethickness#, + 3 accreg_lh# + 0.5 accreg_linethickness#); + + local_copy (transform)(currenttransform); + currenttransform := + currenttransform shifted (0, -vround (0.5 accreg_linethickness)); h := 3 lh + lt; -- 2.39.2