fontify_plus 0.5.2
fontify_plus: ^0.5.2 copied to clipboard
Converts SVG icons to an OTF font and generates a Flutter-compatible class. Outlines stroked icons so outline-style sets render correctly. CLI and API.
Changelog #
0.5.2 #
- Fix TrueType (
useOpenType: false) output storing SVG cubic control points verbatim as consecutive quadratic off-curve points instead of converting them, which bulged curved outlines outward (a full circle overshot its radius by close to 10% at the diagonals). - Fix
hmtx.lsbbeing hardcoded to zero instead of the glyph's realxMin. TrueType (useOpenType: false) requireshmtx.lsb == glyf.xMin; a mismatch shifts a glyph sideways when rendered. This affects TrueType output in bothnormalizemodes: withnormalize: true, centring zeroes a glyph's pre-conversionxMin, but a curved outline can still land several font units off zero once quadratic-approximated, so the two need not coincide.normalize: falseoutput changes for CFF (OpenType) fonts too —hmtx.lsb, theheadbounding box, andhhea's right-side-bearing/extent now reflect each glyph's real ink bounds instead of a placeholder that assumed every custom glyph filled its whole em square; advance widths are unchanged in every mode and format.
0.5.1 #
normalizedefaults to true again (uniform em fill). Pass--no-normalize/normalize: falseto keep artboard-relative sizes.
0.5.0 #
- Fix font generation (0.4.x could not produce a font). SVG parsing now uses
vector_graphics_compiler; outline-style stroked icons render by default. normalizedefaults to false (artboard → em). Pass--normalizeonly for mismatched viewBoxes.- YAML config is now
defaults+ namedfonts(flatfontify_plus:rejected). CLI flags merge on top;--font=<name>runs one set. - Public job API:
FontJob,parseFontifyConfig,runFontJob/runFontJobs. - Dropped
ignoreShapes, SVG element tree exports, and unused deps. Generated IconData class isabstract final. SDK floor: Dart 3.10.
0.4.3 #
- Remove
collectionpackage dependency
0.4.1 #
- Remove
metapackage dependency
0.4.0 #
- Update Dart SDK constraint to
>=3.0.0 <4.0.0 - Update dependencies
- Refactor codebase with lints package
0.3.0-nullsafety.1 #
- Fix regression related to CLI options (#13)
0.3.0-nullsafety.0 #
- Migrate to null safety
- Fix unknown config parameters causing a crash and add related warnings
0.2.0 #
- IMPORTANT: 'CFF' table is generated now instead of 'CFF2'. It shouldn't affect glyphs in newly generated fonts. To learn more, refer to the issue: https://github.com/4akloon/fontify_plus/issues/8
- PostScript name record in the 'name' table now only contains allowed characters.
- Added CharString optimization to remove some NOOP commands.
0.1.1 #
- Changed values of ascender (to unitsPerEm) and descender (to 0) for non-normalized fonts.
0.1.0 #
fontPackageparameter forIconDataclass can now be provided (thanks @jamie1192).
0.0.3 #
- Fixed glyph metrics in a case where normalization setting is off (thanks @dricholm).
- Formatted code using dartfmt.
0.0.2 #
- CLI tool arguments can now be specified in yaml config (thanks for suggestion @dricholm).
- Fixed lints affecting package score.
0.0.1 #
- Initial release