View Issue Details

IDProjectCategoryView StatusLast Update
0000935MetaPostbugpublic2015-05-14 09:05
Reportertoby Assigned To 
PrioritynormalSeverityminorReproducibilityalways
Status newResolutionopen 
Product Version1.890 
Summary0000935: pathpart of glyph adds jaggies to path
DescriptionIf I fetch a glyph from certain fonts - cmti12 for example - I can draw the resulting picture, and the output is as expected.

But if I extract the path from the picture returned by "glyph", there is an odd jaggie added in certain places. In particular this is noticeable on the dished-serifs found in many of the CM fonts.

The attached program shows the issue at the top and base of the "I" character. The path extracted with "pathpart" is overlaid on top of the drawn picture.

Apparently "pathpart" copies some form of font hinting or special construction for the dishing as if it was just part of the outline.
Steps To Reproduceprologues := 3;
outputtemplate := "glyph%c.eps";
beginfig(1);
  picture a;
  a = glyph "I" of "cmti12";
  draw a withcolor .9 white;
  draw pathpart a withcolor red;
endfig;
end.
Additional InformationSpeaking personally, I don't think this is very important - perhaps the only fix needed is a suitable warning in the documentation about "glyph"?

The issue was discussed a while ago on TeX.SE
http://tex.stackexchange.com/questions/151801/is-this-a-bug-in-the-pfb-file-or-a-bug-in-metaposts-glyph
TagsNo tags attached.

Activities

luigi scarso

2015-05-06 19:02

manager   ~0001362

Thank you for the report. I will investigate.

luigi scarso

2015-05-08 20:43

manager   ~0001363

Could be that Flex are not ignored as they should. In
/q {
        108 450 hsbw
        -194 29 hstem
        -10 20 hstem
        421 20 hstem
        0 62 vstem
        376 417 rmoveto
        1 4 1 6 0 4 rrcurveto
        5 -4 4 -5 vhcurveto
        -8 0 -37 -34 -16 -31 rrcurveto
        -11 29 -24 37 -49 0 rrcurveto
        -109 -115 -153 -146 hvcurveto
        -89 47 -63 68 vhcurveto
        36 0 36 20 34 35 rrcurveto
        1 -1 rlineto
        -13 -49 -10 -42 -15 -61 rrcurveto
        -14 -54 0 -2 -64 -1 rrcurveto
        -13 -9 0 -19 hvcurveto
        -10 10 0 4 vhcurveto
        1 callsubr
        95 0 rmoveto
        2 callsubr
        -65 0 rmoveto
        2 callsubr
        34 2 rmoveto
        2 callsubr
        31 0 rmoveto
        2 callsubr
        32 0 rmoveto
        2 callsubr
        34 -2 rmoveto
        2 callsubr
        31 0 rmoveto
        2 callsubr
        50 398 -194 0 callsubr
        6 12 0 18 hvcurveto
        11 -6 0 -18 vhcurveto
        -22 -26 0 15 hvcurveto
        0 6 0 2 2 9 rrcurveto
        closepath
        4 256 rmoveto
        15 callsubr
        endchar
        } ND
1 callsubr until 50 398 -194 0 callsubr is an horizontal hint, and it's effect should be ignored.

luigi scarso

2015-05-14 09:05

manager   ~0001374

It should be fixed on trunk.

Issue History

Date Modified Username Field Change
2015-05-06 00:34 toby New Issue
2015-05-06 19:02 luigi scarso Note Added: 0001362
2015-05-08 20:43 luigi scarso Note Added: 0001363
2015-05-14 09:05 luigi scarso Note Added: 0001374