Releases: googlefonts/nanoemoji
Releases · googlefonts/nanoemoji
v0.8.2
Fixed winding issue when intra-glyph reused paths encoded as glyph components overlap with one another and have a negative-determinant affine transform that reverse the contour direction. When this happens, we do not reuse the paths as components, but encode them separately as simple contour glyphs (#287, #289).
v0.8.1
- Use
xlink:href
(SVG1.1) instead of unqualifiedhref
(SVG2) attributes in<use>
elements, so that OT-SVG fonts built with--color_format=picosvg
(where same shapes get reused between/within glyphs) are displayed correctly in Safari and Adobe apps (#271, #264, #266). - Strip empty
<defs/>
element when no gradients defeind in--color_format=picovsvg
(#272) - Add workaround for Safari's bug when
gradientTransform
contains a matrix whose inverse is equal to itself (#268, #273). - Fixed bug in
--color_format=picosvg
whereby we were applying intra-glyph shape reuse only for the first occurrence of a given painted layer in a color glyph, but not again when the same painted layer was found in a different color glyph (#274). - Group all the shapes shared by multiple glyphs in the top-level
<defs/>
element, as Adobe apps don't like direct<use>
references between different SVG glyphs (#264, #277). This affects--color_format=picosvg
only. - Use
ccmp
as default feature for GSUB ligature substitution instead ofrlig
, as it's more widely supported/enabled (Noto Color Emoji does the same) (#280).
v0.8.0
- Fixed scaling/positioning for
--color_format=untouchedsvg
output (#267) - Handle extra whitespace when parsing colors from
fill
attribute (#269) - Bump minimum picosvg >= 0.15.0.
https://github.com/googlefonts/picosvg/releases/tag/v0.14.0
https://github.com/googlefonts/picosvg/releases/tag/v0.15.0
Notable changes:- Added support for gradient templates with
xlink:href
attibute, - Added partial support for nested
<svg>
elements.
- Added support for gradient templates with
v0.7.1
v0.7.0
- Support configuring
absl.logging
verbosity from CLI via-v
flag (#242). - Added config/CLI options to configure ascender, descender and apply a user-defined transform to all glyphs (#250).
- Added
--version_major
and--version_minor
options to set the font version (#251). - Compute the actual bounding box when drawing invisible points defining the color base glyph extents (#252).
- Set default advance width to the same as NotoColorEmoji.ttf (slightly larger than the glyph height)
- Scale glyph height to fit (ascender - descender), center horizontally within default advance width, preserving original aspect ratio; stretch glyph advance width if the viewbox is not square (w > h) (#255).
- Add option to customize the
--linegap
(set to 0 by default like NotoColorEmoji) (#258). - Fixed bugs when running nanoemoji on Windows native Python. Also run continuous testing on Windows CI runner (#240).
v0.6.0
- When layers exceed 255, build a 255-ary tree of PaintColrLayers instead
of less efficient binary tree of PaintComposite (#225). - Don't error when SVG attributes contain empty string (#229).
- Redefined PaintLinearGradient's P2 as "normal" vector, equivalent to
P1 rotated 90 degrees, following latest COLRv1 draft spec (#236). - Paint format numbers re-numbered following introduction of new formats
in fonttools and draft spec (#234)
Bump minimum requirements:
- picosvg >= 0.11.1
- fonttools >= 4.20.0
v0.5.2
Fix bug with --ignore_reuse_error not passing around properly
v0.5.1
Update to match latest spec
v0.5.0
- Restored
nanoemoji.write_glyphgraph
to working order (#219). - Make clipping to viewbox faster by parallelizing it through picosvg and ninja (#221).
- Re-add CLI flags that were removed when the --config option was introduced in v0.4.1. CLI flags take precedence over settings from config file (#222).
- Bump requirements:
- picosvg >= 0.9.1
- fonttools >= 4.18.1
v0.4.2
Switch to github CI