Releases: fontra/fontra-pak
Releases · fontra/fontra-pak
2026.3.5
New features
- [fontra-pak] Make .fontra the default format when creating a new font, and remove the .rcjk legacy format from the new font format options. fontra-pak PR 231
- [translations] Added Tagalog (Filipino) translations, contributed by FlaviusChromacitrin. Issue 2503, PR 2506
Fixes
- [Windows + OneDrive] Work around erroneous reloads that disrupt editing, caused by OneDrive on Windows: if files are stored in a OneDrive folder, each file write by Fontra causes OneDrive to change the modification time again a bit later, causing Fontra to receive a "file changed" event, even though the file didn't really change. We work around this by also comparing the contents of the file, and ignore the event if it's still the same. PR 2511
- [shaping] Make explicit non-mark glyph category take precedence over ad-hoc mark detection. Issue 2507, PR 2508
- [designspace/ufo] Don't unnecessarily modify UFO's metainfo.plist file when reading. This happened when the metainfo.plist file was formatted differently from how fontTools.ufoLib would do it. Issue 2504, PR 2505
- [fontra-glyphs] Fixed support for smart components that don't respond to font axes, yet use master layers that do. Reported and mostly fixed by Zachary Quinn Scheuren. fontra-glyphs PR 133 and fontra-glyphs PR 134
- [ttx] Fixed .ttx support for fonts that contain a format 2
posttable. PR 2501
2026.3.4
Fixes
- [shaping] A GDEF table in the feature code must override our own glyph-is-mark logic. Issue 2495, PR 2496
- [cross-axis mapping/avar-2] Fix edge case where we specify an output axis value at the default, while the corresponding input value is not at the default. PR 2492
- Prevent unnecessary .designspace lib pollution by not writing the "project glyph sets" list if it is empty. PR 2491
- Fixed write-on-initial-read bug that was especially harmful for .designspace: Fontra should never write files when it is only reading. PR 2499
2026.3.3
- Fix font info navigation regression.
2026.3.2
New features
- [shaping] Add app-level switch to opt-out of ad hoc mark detection. This setting is needed to correctly render glyphs that use "receiving" marks (starting with an underscore) that are not meant to be marks. The default behavior still matches fontmake's default. Issue 2487, PR 2490
- [editor] Bring the "glyph sets" functionality from the font overview to the editor. The glyph set selection UI was added to the glyph search panel. Importantly, this finally allows us to use custom glyph name/code point mappings in the editor. PR 2489
- [translations] Added a full Traditional Chinese set of translation strings, contributed by 湖远星(Lake桑). They also filled some gaps in the Simplified Chinese strings. PR 2479
- [fontra-pak] Add a sample text field to the launcher window. If this is empty, launch into the font overview, but if it is not, launch into the editor with the text. fontra-pak PR 228
Fixes
- Don't draw incorrect placeholder strings for empty unencoded glyphs PR 2486
- [fontra-pak] Reinstate support for macOS 11, which was accidentally dropped by unnecessarily upgrading the PyQt6 dependency. fontra-pak PR 229
- [opentype] Use the previous working shaper font if compilation fails during editing of OpenType features. This avoids jarring text breackage during feature editing. Issue 2469, PR 2480
2026.3.1
2026.3.0
- [OpenType] Initial support for OpenType features has landed! This requires a longer explanation, but in short:
- Fontra will now apply text shaping and OpenType features. The user interface for this lives in the text entry panel.
- Fontra now uses HarfBuzz for text shaping and OpenType features, via harfbuzzjs. Khaled Hosny contributed many improvements to
harfbuzzjsto make this possible. - For
.otfand.ttffonts, Fontra will use the actual OpenType features from the fonts. - For source files (
.designspace,.ufo,.glyphs,.fontra), it will compile a so called "shaper font" on the fly, using the brand new build-shaper-font functionality, written by Khaled Hosny, using parts of thefontccode base written in Rust. This runs in the browser using Web Assembly. It is amazing. - Some glyph positioning features are emulated on the fly using data in the font:
curs,kern,markandmkmk. This uses live kerning data and glyph anchors and allows the user to make edit and immediately see the effects in the rendered text. - The OpenType feature code editor was improved to do live error checking and reporting (also using the
build-shaper-fontfunctionality). You can have two windows or tabs side-by-side, and see changes in the feature code being reflected in the glyph editor virtually instantaneously. - There is a new right sidebar panel called "Input characters and output glyphs" that contains two lists:
- The input characters, and a little bit of unicode information for each character
- The output glyphs, showing the glyph name, advance width, positioning offsets and character cluster index for each glyph.
- There are still some open issues, and things may still be a little rough around the edges. See Issue 2381 for past and ongoing work.
- [designspace/ufo] Fix editing the style name for single-UFO projects, by making sure to write the
fontSource.nameproperty to thestyleNameUFO font info property. PR 2464 - [fontra-workflow] Add
propagate-anchorsfilter, that tries to matchglyphsLibbehavior. Issue 2453, PR 2457 - [fontra-pak] When exporting
.ttfor.otf, apply thepropagate-anchorsfilter. This allows us to export .glyphs files more correctly. fontra-pak PR 226 - [designspace/ufo] Fix writing of guidelines that have angles outside of the 0..360 range. PR 2454
- [glyph sets] Remove Black Foundry glyph sets, they are unmaintained. PR 2446
- [kerning emulation] Ignore mark glyphs when emulating kerning. Issue 2443, PR 2444
- Improve font source interpolation when custom data isn't interpolatable. PR 2445
- [glyph sets] Add JustFont jf 7000 Chinese/Taiwanese character sets. Suggested by user MidnightOwl123. PR 2428
- [fontra-glyphs] Fixed a bug where writing OpenType features caused internal data problems, making Fontra unable to read glyphs afterwards. fontra-glyphs PR 125
- Fixed bug that made Fontra unable to show a glyph if the feature code was invalid. Issue 2423, PR 2424
- [fontra-glyphs] Add support for right-to-left kerning. fontra-glyphs PR 124
- [selection info / dimensions field] When a single off-curve point is selected, show the dimensions of the handle instead of (0, 0). Suggested by Aleksandra Samuļenkova. PR 2418
- [designspace/ufo] Fix reading and writing of right-to-left kerning. PR 2416, PR 2417
- Fix a bug in anchor sorting, so inconsistently ordered anchors can now really be interpolated. This fixes a bug in the previous attempt to fix this. PR 2415
- [fontra-glyphs] When reading OpenType features, expand include statements and Glyphs-specific dynamic feature syntax into traditional feature syntax. fontra-glyphs PR 123
- [fontra-glyphs] Accept invalid OpenType feature code, as this is inevitable when editing, given Fontra's autosave nature. fontra-glyphs PR 122
- Ignore component custom data when interpolating. This fixes interpolation for .glyphs files that have inconsistent component align settings. PR 2409
- Make the topic list of the application settings and font info views foldable. PR 2408
- Fix minor layout bug in glyph sets UI. Commit b292d8ee
2026.2.0
- [ufo] Fix creating a single-UFO project. PR 2405
- [designspace/ufo] Fix regression in editing OpenType features, caused by unneeded reloading. PR 2404
- [opentype backend] When reading TrueType or OpenType, setup font sources, so we can see the line metrics in the editor, and so that glyph sources will reference font sources where possible. Issue 2399, PR 2401
- [opentype backend] When reading TrueType or OpenType, use the user-visible axis ranges instead of normalized values for glyph source locations. PR 2398
2026.1.3
- [designspace] Fix a writing failure when multiple glyphs use the same layer name but for different locations. Issue 2393, PR 2394
- [designspace] Fix writing the
italicAngleproperty to source UFOs. Issue 2386, PR 2389
2026.1.2
- [designspace] Fix a synchronization problem when doing Undo/Redo faster than the backend handles writing the changed glyphs. This would be most noticable with a multiple-glyph selection in the font overview and a complex designspace, where each glyph is represented by many .glif files on disk. PR 2374