- fix Quadratic to Cubic rounding issue in Glyph to CFF Ops stage (#468)
- update dependencies with
npm audit fix
- fix GlyphOptions with falsy values (#430)
- Re-export named exports with a default export and add a TypeScript import example
- Revert Fix Path.toPathData and Path.toSVG - X Axis is flipped (#369)
- Forward os2 Table attributs during font construction (#422)
- Add default export
- Fix Path.toPathData and Path.toSVG - X Axis is flipped (#369)
- Fix use of Promise / async/await in the load function (#427)
- Fix a bug for unsupported SUBSTITUTIONS #403
- Fix issue #385, merge default options with user options (#386)
- Adds support for browser Async/Await for .load() (#389)
- Introduce ES6 module build (#391)
- Fix test in featureQuery
- Remove Node 4 from Travis (#392)
- Update dependencies & build dist files
- Support reading GSUB Single substitution format 1 (PR #382) (thanks @solomancode!)
- Fix error if defaultLangSys is undefined (Issue #378)
- Render arabic rtl text properly (PR #361, partial fix of #364) (thanks @solomancode!)
- #361 introduced a breaking change to
Font.prototype.defaultRenderOptions
Before
Font.prototype.defaultRenderOptions = {
kerning: true,
features: {
liga: true,
rlig: true
}
};
Now
Font.prototype.defaultRenderOptions = {
kerning: true,
features: [
/**
* these 4 features are required to render Arabic text properly
* and shouldn't be turned off when rendering arabic text.
*/
{ script: 'arab', tags: ['init', 'medi', 'fina', 'rlig'] },
{ script: 'latn', tags: ['liga', 'rlig'] }
]
};
Also as this project is now using SemVer, the breaking change required a new major version, 1.0.0!
- Fix Glyph.getPath() issue (PR #362, fixes #363) (thanks @solomancode!)
- Add lowMemory mode (PR #329) (thanks @debussy2k!)
- Update README (PR #377) (thanks @jolg42!)
- Support Arabic text rendering (PR #359, fixes #46) (thanks @solomancode!)
- font.download(): use window.URL instead of window.requestFileSystem, which works on a larger set of browsers : Chrome (32+), Opera (19+), Firefox (26+), Safari (7.1+), and all of Edge.
- Update/Migrate rollup, update all dependencies, add package-lock.json and fix circular dependency (thanks @jolg42!)
- Parse cmap table with platform id 0 as well (PR #350, fixes #348) (thanks @moyogo!)
- Prevent auto-generated postScriptName from containing whitespace (#339) (thanks @mqudsi!)
- Support non-Basic-Multilingual-Plane (BMP) characters (#338) (thanks @antonytse!)
- GPOS: display correct error message in some cases of malformed data (#336) (thanks @fpirsch!)
- Restore simple GPOS kerning in font.getKerningValue (#335) (thanks @fpirsch!)
- Fix duplicated lineTo when using
getPath
(#328) (thanks @jolg42!) - Change example generate-font-node.js to be compatible with any Node.js version (thanks @jolg42!)
- Fix loading font file on Android devices (thanks @maoamid!).
- Fix loading fonts from a local source (file://data/... for Android for example (thanks @IntuilabGit!).
- Fixing 2 issues when hinting "mutlu.ttf" (thanks @axkibe!).
- Add some support for OpenType font variations (thanks @taylorb-monotype!).
- Make cmap table format 12 if needed (thanks @Jolg42!).
- Enable uglify's mangle and compress optimizations for a ~30% smaller minified file. (thanks @lojjic & @Jolg42!).
- Better parsing of NULL pointers (thanks @fpirsch!).
- Fix bad path init (empty glyphs) (thanks @fpirsch!).
- Rewrite GPOS parsing (thanks @fpirsch!).
- Roboto-Black.ttf updated (thanks @Jolg42!).
- Fix "Object x already has key" error in Safari (thanks @neiltron!).
- Fixed a bug where Font.getPaths() didn't pass options (thanks @keeslinp!).
- WOFF fonts with cvt tables now parse correctly.
- Migrated to ES6 modules and let/const.
- Use Rollup to bundle the JavaScript.
- Auto-generated glyph IDs (CID-keyed fonts) are now prefixed with "gid", e.g. "gid42".
- Fix ligature substitution for fonts with coverage table format 2.
- Better error messages when no valid cmap is found.
- Add font hinting (thanks @axkibe!)
- Add support for CID-keyed fonts, thanks to @tshinnic.
- TrueType fonts with signature 'true' or 'typ1' are also supported.
- Fixing rounding issues.
- Add GSUB and kern output in font-inspector.
- Add font loading error callback.
- Dev server turns browser caching off.
- Add encoding support for variation adjustment deltas (thanks @brawer!).
- Add ligature rendering (thanks @fpirsch!)
- Add a
getBoundingBox
method to thePath
andGlyph
objects.
- Add basic support for Mac OS X format kern tables.
- Add support for letter-spacing and tracking (thanks @lachmanski!).
- Fixed a bug in the nameToGlyph function.
- GSUB reading and writing by @fpirsch. This is still missing a user-friendly API.
- Add support for cmap table format 12, which enables support for Unicode characters outside of the 0x0 - 0xFFFF range.
- Better API documentation using JSDoc.
- Accessing xMin/... metrics works before path load.
- Add X/Y scale options to compute a streched path of a glyph.
- Correct reading/writing of font timestamps.
- examples/generate-font-node.js now generates "full" Latin font.
- Add OS/2 value options for weight, width and fsSelection.
- Wrapped parseBuffer in a try/catch so it doesn't throw exceptions. Thanks @rBurgett!
- Fix a leaking global variable. Thanks @cuixiping!
- Improve table writing to support nested subtables. Thanks @fpirsch!
- Left side bearing is now correctly reported.
- Simplified code for including ascender / descender values.
- Improvements to font writing: generated fonts now work properly on OS X.
- When creating a new font, ascender and descender are now required.
- Add
Font.getPaths()
which returns a list of paths.
- Read support for WOFF.
- Fix issue with loading of TrueType composite glyphs.
- Fix issue with missing hmtx values.
- Sensible getMetrics() values for empty glyphs (e.g. space).
- Add loadSync method for Node.js.
- Unit tests for basic types and tables.
- Implement MACSTRING codec.
- Support multilingual names.
- Handle names of font variation axes and instances.
- Improve memory usage by deferring glyph / path loading. Thanks @Pomax!
- Put examples in the "examples" directory. Use the local web server to see them.
- Fix an issue with writing out fonts that have an UPM != 1000.
- Fix issues with exporting/subsetting TrueType fonts.
- Improve validness of exported fonts.
- Empty paths (think: space) no longer contain a single closePath command.
- Fix issues with exporting fonts with TrueType half-point values.
- Expose the internal byte parsing algorithms as opentype._parse.
- Add support for writing quad curves.
- Add support for CFF flex operators.
- Close CFF subpaths.
- Solve issues with Browserify.
- Un-break node.js support.
- 2x speedup when writing fonts, thanks @louisremi!
- Fix bug that prevented
npm install
.
- Add support for font writing.
- Support for GPOS kerning, which works in both PostScript and OpenType.
- Big performance improvements.
- The font and glyph inspector can visually debug a font.
- Support for reading PostScript fonts.
- Initial release.
- Supports reading TrueType CFF fonts.