opentypejs/opentype.js
Update docs for Font.getPath to explain what happens with cutout subpaths
开放
#347 创建于 2018年6月4日
help wanted
仓库指标
- 星标
- (4,170 个星标)
- PR 合并指标
- (30 天内没有已合并 PR)
描述
Right now the API docs for Font.getPath in the README.md do not explain what happens with paths that include cutout subpaths (the letter O being an obvious candidate). The OpenType spec itself allows for three possible cases:
- CFF/Type2 outlines rely on crossing number, so any subpath B contained by outermost subpath A is a cutout, any subpath C inside subpath B is a fill, any subpath D inside C is a cutout, etc.
- TTF outlines rely on path direction, so in the above example B is only a cutout for A if either A is defined clockwise and B is defined counter-clockwise.
- SVG outlines rely on "literally whichever you want" because glyphs are specified using SVG1.1 documents which means that the
fillruleattribute can be used to specify whether crossing (fillrule="evenodd") or direction (fillrule="nonzero") is used.
Right now the API docs don't say whether OpenType.js yields the paths as specified in the font, with a way to look up what the cutout algorithm needs to be per glyph, or whether it rewrites paths so that a glyph looks correct when rendered using the currently also unspecified cutout algorithm =)
Can that get an update?