Release Notes Archive»

Table of Contents

FontLab VI version 6.1.4.7044»

20 April 2019

Even though 6.1.4.7043 was a massive update, we decided to continue with some quick fixes! 😊 Below you’ll find the release notes for build 7044, followed by much more extensive notes of build 7043.

Highlights»

FontLab VI 6.1.4: new high-precision segment editing, Font window cell icons for composites and auto layers, smoother kerning workflow, italic linked metrics, snapping Knife — plus smarter glyph deletion, better OTF hinting export, and all-new .glyphs format support! See the full release notes for details.

Major new features»

  • Edit segments directly with high-precision dragging.
  • Add nodes, break or slice contours with improved snapping Knife.
  • Kern more efficiently with improved keyboard shortcuts.
  • Collaborate with Glyphs.app users, or use that app alongside FontLab VI, thanks to the improved opening and all-new export of .glyphs files.
  • Instantly see which Font window glyph cells have composites or auto layers.
  • Delete glyphs and decide what happens to composites and auto layers.
  • Export OpenType PS (.otf) fonts with better hinting.
  • Export OpenType Variations (.ttf) with fewer limitations.
  • Use FontLab VI in read-only demo mode after the 30-day trial expires.

Finer improvements»

  • Access common contour operations from the Node panel.
  • Easily snap guides to other objects, and turn them to hints and zones.
  • Quickly measure thickness with G and drag.
  • Tap \ to make your up/down movements italic or upright, reliably link italic metrics.
  • See anchor clouds only for selected anchors.
  • Tap Esc to get a clean view in Metrics and Kerning modes.
  • Optically separate imported artwork more flexibly.
  • Zoom in/out more easily in Glyph and Font windows.
  • Remove Overlap and keep unaffected nodes untouched.
  • No more vanishing kerning, and other bug fixes.

Fixes and enhancements»

Adding anchors»

To add an anchor at a specific location, activate the Guides tool (tap G) and Shift-click where you want to add the anchor.

Previously, you could add anchors with Ctrl–click but since the Guides tool now uses snapping, you can now hold Ctrl to ignore snapping. So to ignore snapping and add an anchor, ShiftCtrl-click.

Measuring guides»

Dragging from the Ruler creates a glyph guide. Now, Alt-drag from the Ruler creates a glyph guide with measurement markers on.

Shift-dragging from the Ruler creates a font guide. Now, ShiftAlt-drag from the Ruler creates a font guide with measurement markers on.

Snapping suggestions»

We’ve given the final polish to the snapping suggestions (View > Suggest), which suggests snapping locations based on existing nodes and other objects.

If you have multiple snapping suggestion types turned on in View > Suggest or multiple snapping types in View > Snap, and you move nodes, use the Knife or the Guides tool, FontLab prioritizes the snapping suggestions based on the last object you were snapping to. So for example if you snap to a guide, and then move away and rest your pointer for a brief moment, the snapping suggestions reappear. The small delay is intended so that you’re not overwhelmed with suggestions.

In previous versions of FontLab, the snapping suggestions would sometimes stop appearing, or would reappear only after a long lag or some actions. This is now fixed, so the suggestions appear after the intended brief delay. This fix finally makes snapping suggestions work like we’ve always intended — like a charm, so give it a try!

Other fixes»

  • Selection frame. FontLab no longer crashes when dragging any of the selection frame handles. This was an issue with 7043.

  • Deleting glyphs. In FontLab VI 6.1.4.7043, the Delete Glyphs dialog would list the affected glyphs based only on the current master. Now, it takes all masters into account.

  • Knife. If you activate use Knife tool and Shift-drag to add some nodes that are aligned horizontally or vertically, and you stop on a contour, the Knife insertion point now keeps the the horizontal or vertical constraint rather than deviating from it slightly.

  • Pins. If you activate the Guides tool and Alt-click, FontLab no longer adds a pin at fractional coordinates if Round when Editing is on.

  • Anchors. FontLab no longer crashes in rare situations when adding an anchor with the Guides tool.

  • Snapping. When you draw a rectangle or ellipse, the drawing tool will no longer snap to invisible anchors.

FontLab VI version 6.1.4.7043»

20 April 2019

New features and enhancements»

Updated FontLab VI EULA»

FontLab VI 6.1.4 is governed by an updated End-User License Agreement (EULA):

  • New clause that states that if the software is a demo version, or if it is running in demo mode, you may not circumvent the advertised demo-related limitations of the software, such as limitations on saving or exporting files, nor use the software beyond the scope of these limitations.
  • A few minor editorial tweaks.

Demo mode»

If you or some of your friends, colleagues or students had installed the FontLab VI trial version, they could test and enjoy the app for 30 days. Many of you bought a license (thank you!). But some perhaps didn’t really like the early versions of the app (we admit, it used to be rough around the edges!). Or they didn’t have the budget at the time. After the trial expired — they couldn’t even get past the Activation screen. Well, no more!

Now, after the FontLab VI trial expires, the app switches to demo mode. While in the demo mode, you can still open all fonts, play and experiment with them, explore or learn the app — but you cannot save, export or print, and you cannot copy contours to other apps.

Many users told us that they recommended the demo version of FontLab Studio 5 to others as a powerful in-depth font viewer. FontLab VI in demo mode is, well, the ultimate font viewer!

You can use FontLab to open, proof and check fonts you made in another app, including TrueType-flavored variable OpenType fonts, color fonts in all flavors, fonts in development formats like .vfc, .vfj, .vfb, .fog, .ufo or .glyphs. You can check the curve quality, curvature, interpolation. You can test the kerning and OpenType Layout features. You can take the contours under the loupe with FontAudit. You can see if the automatic matching of masters helps you with the project you’re doing elsewhere. On the Mac, you can use FontLab’s TrueType Hinting tool to check how the font hinting produced elsewhere works in the built-in genuine Windows ClearType rasterizer.

And if you or your friends do need to save and export — the buy button is right here. 😊

Drawing and glyph editing»

High-precision non-node editing»

Try our revolutionary high-precision dragging approach with non-node editing, and let us know what you think!

  1. Drag (or Alt-drag) a segment a little and the change in shape will be smaller than your mouse movement, so you can be very precise.
  2. Drag the segment further and the change in shape will gradually match the movement speed of your mouse, so you can also easily drag far.
  3. Release the mouse button and drag a little again, and your movement is high-precision again.
  4. Change the precision in Preferences > Distances > Non-node editing changes contour by 1/2 of dragging distance from 5 (highest precision at short drags) to 1 (constant dragging speed like in previous versions).

Snapping Knife»

You can use the Knife tool (J) to add nodes (click a segment or drag across multiple segments), break contours (click a node or Alt-drag across segments), and to slice through contours (Ctrl-drag).

The Knife now uses View > Snap settings to snap to Outline, and to other view details if they are currently visible: Mask, glyph and font guides, hints, zones, grid, font metrics, the global Mask, glyph metrics, anchors and pins.

The Knife also uses View > Suggest to snap to:

  • if Nodes is on: nodes from other contours, other elements (if Edit > Edit Across Elements is on), neighboring glyphs in the text (if Edit Across Glyphs is on) and other visible masters (if Edit Across Layers is on)
  • if Bounds is on: the edges and the center of elements
  • if Stems is on: distances defined in Font Info > Stems from contours in the element
  • if Guides is on: guides, hints and zones, even if they’re not visible

Contour operations in the Node panel»

The icons in the Node panel are now slightly larger, and you can use the panel’s previous/next buttons to browse not just through nodes but also through components in a composite glyph.

The Node panel now has a set of action buttons for the most common Contour menu operations. These operations work the same way via the buttons or menu, but each has a slightly different scope: they can work on a single node, on a selection of nodes and segments, on the entire contour (all segments in a contour), on the entire element (all contours in the element), or on the entire layer (on one or more glyph cells selected in the Font window).

operation works on
Break contour(s) node, selection
Join nodes selection, element
Unlink corner node, selection
Make overlap selection
Edit Tunni lines curve segment, selection, element
Set start point node, element, layer
Simplify contour, element, layer
Clean up contour contour, element, layer
Harmonize selection, contour, element, layer
Balance selection, contour, element, layer
Add nodes at extremes contour, element, layer
Remove overlap contour, element, layer

Remove Overlap»

Previously, Contour > Remove Overlap would sometimes perform a Clean Up operation after removing overlaps, which resulted in additional nodes being removed. When you choose Remove Overlap now, FontLab will keep unchanged all the nodes which were not part of the overlaps.

Glyph window zooming»

You can customize the speed (the intervals) of the Glyph window zooming in Preferences > Distances, separately for the keyboard zoom (Z or Y or Cmd= for zoom in, X or Cmd- for zoom out) and Alt-mouse wheel zoom. We’ve also harmonized the speed between the Z/X zoom and the Cmd=/Cmd- zoom (they were different).

Selection frame»

If Edit > Edit across Elements is on, and you select nodes and handles from several elements, you can now use the selection frame (View > Selection Frame) to instantly scale the entire selection. Previously, the selection frame was limited to selections from the current element only.

Italic contours: Follow Italic Angle»

In the Glyph window, you can now tap \ to make your up/down movements italic or upright. This turns on or off Contour > Coordinates > Follow Italic Angle:

  • When it’s on, vertical Shift-dragging or using the Up/Down cursor keys moves nodes, selections, anchors, components and elements diagonally along the y-axis slanted by Font Info > Font Dimensions > Italic Angle.
  • When it’s off, the movement is vertical.

Glyph window on-canvas text fields»

You can now use Up/Down keys to change the value by 1 or ShiftUp/ShiftDown to change the value by 10 in the text fields located directly on the Glyph window canvas (advance width, guide location, hint width etc.). The change will be reflected when you press Enter.

Guides, hints, anchors and zones»

  • Editing glyphs that have guides with tags and expressions is faster now.

Guides, anchors, pins: snapping»

Previously, when you dragged a guide, hint or a zone, you could snap it to a node only if you dragged the mouse pointer directly onto the node. Now, snapping of guides to nodes behaves much like in FontLab Studio 5:

  • when you create a horizontal or vertical guide by dragging it from the ruler, it will only snap to nodes or handles if you drag it directly onto the node or handle
  • when you move an existing horizontal guide, a zone or a hint, it will snap to the y-coordinates of any node in any element in the glyph, including components (so you only need to move the guide to be at the same height as a node in order to snap)
  • when you move an existing vertical guide or a hint, it will snap to the x-coordinates of any node in any element in the glyph, including components
  • when you want to snap an existing guide, hint or zone to a handle, you need to drag the pointer directly onto the handle

The Guides tool now also uses snapping and suggestions (like Knife), so you can drag to measure, Alt-drag to add element guides or Alt-click to add a pin more precisely, utilizing snapping suggestions.

Measurement markers»

When you activate the Guides tool (tap G or hold G to activate temporarily), and you drag across contours, the measurement vectors appear. They now show automatic measurement markers that show distances where the measurement vector intersects with some contours. This way, you instantly can see the stem thickness at different areas of your glyph.

The Guide panel and the Glyph window property bar for a guide also has a new toggle Measurement markers that allows you to add or remove the automatic guide measurement markers. You can now select a font guide, a glyph guide or an element guide, press CmdA to select all other guides of the same type, and click the Measurement markers toggle to make the markers appear in all guides at once. .

Previously, you had to double-click each guide individually to add or remove the measurement markers.

Autohinting glyphs with overlaps»

If your contours have overlaps, and you autohint them (using Tools > Autohint / F7, or during export into OpenType PS .otf or Type 1), FontLab now performs the autohinting on contours that have their overlaps temporarily removed.

This generally produces much superior results, and no longer produces odd hints in the middle of overlapping contours.

Problematic zones»

When you export OpenType PS .otf or Type 1 fonts, FontLab will now issue warnings in the Output panel if any zones overlap or if zones are closer than the distance specified by Font Info > Other Values > BlueFuzz.

Converting thick guides to zones or hints»

In FontLab, alignment zones are special a kind of font guides, and hints are a special kind of guides. All guides can have a width (thickness). If you turn on View > Rulers (CmdR), you can drag a glyph guide or Shift-drag a font guide from the ruler.

In 6.1.4, when you Shift-drag such a guide to give it some width, the Guide panel and the Glyph window property bar will show a new button that, for a horizontal font guide says Make alignment zone, and for a horizontal or vertical hint says Make hint. Click those buttons to convert a thick guide to a zone or hint, click again to convert back to a guide.

Anchors: Anchor cloud only for selected»

When you turn on the new Preferences > Glyph window > Show cloud only for selected anchors setting and turn on View > Anchor Cloud, the anchor cloud will appear only for the anchor(s) you select in the Glyph window or the Anchors & Pins panel.

Elements, components and auto layers»

Activating components in Glyph window.»

When you navigate to a composite glyph in the Glyph window, you can now use Page Up/Page Down (FnUp/FnDown on the Mac) to activate the components and walk through them.

Anchors in auto layers and composites»

Auto-layers inherit anchors from their source glyphs automatically, composites inherit anchors when you generate or decompose them — but none of them inherit glyph guides.

Previously, if glyphs inherited anchors that had expressions linking them to the source glyphs’ guides, FontLab produced error messages in the Output panel. FontLab now removes expressions when it inherits the anchors.

Images»

Previously, you could only use the Element tool (V) to select (activate) image elements within the Glyph window and on the Sketchboard. Now, you can also use the Contour tool (A).

Glyph window»

We’ve refined the keyboard shortcuts that you can use in the Glyph window, and in the Metrics and Kerning modes specifically, to browse phrases, glyphs and kerning pairs. We’ve also improved the Metrics and Kerning workflow.

Metrics and Kerning: Clean view»

When in the Metrics or Kerning mode, press Esc to hide spacing controls, clouds etc., and get a clean view at just the glyph shapes.

Switching masters»

  • Previously, you could switch masters in the Font and Glyph windows using Alt, (previous) and Alt. (next), and by pressing 1-9 digit keys with Alt for direct access to the first nine masters.
  • Now, in the Glyph window, you can also get the previous master with FnCmdLeft (Mac) / CtrlHome (Windows), and get the next master with FnCmdRight (Mac) / CtrlEnd (Windows).
switching masters Mac Win
by master number Alt1Alt9 Alt1Alt9
previous Alt, Alt,
next Alt. Alt.
previous (only in Glyph window) FnCmdLeft CtrlHome
next (only in Glyph window) FnCmdRight CtrlEnd

Metrics and Kerning: Smart navigation with the up/down keys»

Previously, the Up/Down arrow keys were “smart” in Metrics and Kerning modes. Some might say, a bit “too smart”. You can now turn off the setting Preferences > Spacing > Smart navigation with the up/down keys, and the Up/Down arrow keys in the spacing modes will just go to the previous and next line, that’s it.

But if you keep Preferences > Spacing > Smart navigation with the up/down keys setting on, FontLab will continue the “smart” behavior, which is:

In Metrics mode:

  • if the text is single-line, Up/Down get the previous/next phrase,
  • if the text is multi-line, Up/Down go to the previous/next line, but if the line is first or last, they get the previous/next phrase.

In Kerning mode:

  • if the both the Kerning panel and the Pairs & Phrases panel are visible, or if both panels are invisible:

    • if the text is single-line, Up/Down get the previous/next phrase,
    • if the text is multi-line, Up/Down go to the previous/next line, but if the line is first or last, they get the previous/next phrase;
  • if the Pairs & Phrases panel is not visible and the Kerning panel is visible, Up/Down get the previous/next kerning pair.

Glyph window: Pairs and Phrases»

The Pairs and Phrases panel that has three views that you can toggle in its lower-left corner. The panel works in all modes (Metrics, Kerning, Text and all the other ones).

  • The Texts view has a list of text phrases, which you can use during glyph drawing and spacing.
  • The Pairs view has a list of pair phrases, which you can use a kerning plan, a “to do” list. The pair phrases are pairs or short phrases that are centered around pairs.
  • The Auto view automatically switches between the Pairs view if you’re in Kerning mode, and the Texts view if you’re in other modes.

You can replace your Glyph window text with the previous or next phrase in all modes:

browsing (get) Mac Win
prev phrase FnCmdUp CtrlPage Up
next phrase FnCmdDown CtrlPage Down

You can also click the Pairs and Phrases panel and use the arrow keys to get the phrase into the Glyph window. Hold Shift and click or use the arrow keys to get multiple phrases into the window.

Glyph window: get glyph by name»

Previously, when you tapped / in a Glyph window or a Font window, you could type in a glyph name, tap Enter and switch the current glyph to another glyph. In Kerning mode, it switches the 2nd glyph of the active kerning pair.

Now you can also tap Shift/, and you’ll switch the 1st glyph of the kerning pair (in Kerning mode), or the glyph that immediately precedes the current glyph (in other modes except Text).

browsing (get) Mac & Win
1st glyph by name Shift/
2nd glyph by name /

Metrics and Kerning: walking in the Glyph window»

In both Metrics and Kerning modes, you can now consistently “walk around” the text in the Glyph window when you hold the Fn key and press the arrow keys, or use Home, End, Page Up, Page Down.

walking (go to) Mac Win
prev line in text Up¹ / FnUp Up¹ / Page Up
next line in text Down¹ / FnDown Down¹ / Page Down
prev glyph in text [ [
next glyph in text ] ]
prev glyph in text (Metrics) Left Left
next glyph in text (Metrics) Right Right
prev pair in text (Kerning) [ / FnLeft [ / Home
next pair in text (Kerning) ] / FnRight ] / End

¹ To get this behavior, turn off the new setting Preferences > Spacing > Smart navigation with the up/down keys.

Kerning»

Kerning: get glyphs»

Previously, in all Glyph window modes, you could tap , or . to switch the 2nd glyph of the kerning pair to the previous/next glyph in the font, in the order that was used in the last active Font window.

Now, in Kerning mode, you can also tap Shift, and Shift. to switch the 1st glyph of the kerning pair to the previous/next glyph in the font.

browsing (get) Mac Win
1st glyph prev in font Shift, Shift,
1st glyph next in font Shift. Shift.
2nd glyph prev in font , / Cmd[ , / Ctrl[
2nd glyph next in font . / Cmd] . / Ctrl]

To swap the neighboring glyphs in the text (i.e. the 1st and the 2nd glyph of a pair), tap | or W.

Kerning: get existing pairs»

The Kerning panel that shows the list of existing pairs in your master. If you make any kerning, the pairs you define will be added to the Kerning panel. If you or delete pairs, they will be removed from the Kerning panel. This is different from the pair phrases in the Pairs and Phrases panel, which are always defined by you as a “plan”, and don’t change depending on the font.

You can now use ShiftUp/ShiftDown to get to the previous/next existing kerning pair if Preferences > Spacing > Smart navigation with the up/down keys is off, if the Kerning panel is visible in Kerning mode, and if you’ve activated the Glyph window (i.e. it has the focus).

browsing (get) Mac & Win
prev existing pair Up¹ / ShiftUp
next existing pair Down¹ / ShiftDown

¹ Up/Down work if Preferences > Spacing > Smart navigation with the up/down keys is on, the Kerning panel is visible and the Pairs and Phrases panel is invisible.

If you’ve activated the Kerning panel (i.e. it has the focus), you can use ShiftUp/ShiftDown to select multiple pairs in the Kerning panel and get them into the text as new lines.

When the Context toggle (“HOH”) in the Kerning panel is off, and you get a different pair into the text, FontLab now no longer replaces the current text with the pair you chose, but instead only replaces the current pair in the text, leaving the rest of the text unchanged.

If you do want to remove the text and get a pair into a clean window, double-click the pair in the Kerning panel, or press Space while the focus is in the Kerning panel.

Kerning: get class pairs or exceptions»

When you’re looking at an exception, change the 1st or 2nd glyph to another glyph in the same class, and FontLab will then show and let you change the class-based pair.

browsing (get) Mac & Win
1st glyph prev in class CtrlUp
1st glyph next in class CtrlDown
2nd glyph prev in class AltUp
2nd glyph next in class AltDown

Kerning: editing kerning»

In Kerning mode, you can change the value of the current kerning pair with the the Left and Right arrow keys, or with the - and = keys.

kerning Mac Win
kern –1 ¹ Left / - Left / -
kern +1 Right / = Right / =
kern –10 ² ShiftLeft / Shift- ShiftLeft / Shift-
kern +10 ShiftRight / Shift= ShiftRight / Shift=
kern –100 CmdLeft n/a
kern +100 CmdRight n/a

¹ Customize the step in Preferences > Distances > Metrics arrow key moves.
² Customize the step in Preferences > Distances > Metrics shift+arrow key moves.

To create exceptions, you need to hold one or two modifiers listed below, and then perform one of the kern operations listed above. This will create the exception.

creating exceptions Mac & Win
glyph-to-class hold Ctrl and kern
class-to-glyph hold Alt and kern
glyph-to-glyph hold CtrlAlt and kern

Once the exception exists, you can kern it further by just using the keystrokes listed in the kerning table earlier, without the exception modifiers. If you’re editing an exception of a given type and hold its corresponding exception modifiers when editing, this has the same effect as not using those modifiers.

To delete exceptions, tap Backspace when you’re in the exception pair. The exception will be deleted and the text will show the kerning for the “higher-level” class-based pair, typically the class-to-class pair. However, if you’be just deleted a glyph-to-glyph exception, you may see the higher-level glyph-to-class or class-to-glyph exception. When you delete a pair that has no higher-level pair, you will see the text unkerned at your cursor.

To autokern a pair lightly, tap ;. The pair will only be autokerned if the optical algorithm determines that the kern value should be significant.

kerning Mac & Win
delete pair Backspace
autokern ;

Kerning: class cloud no longer shown behind exceptions»

When View > Kerning Class is on, the Kerning mode shows a class cloud behind the 1st and 2nd class glyph in any class-based pair. Now, the glyphs that form exceptions on either side of that pair are no longer shown in the kerning class cloud.

Kerning: Show All Combinations»

When you select one pair that involves a class on either or both sides in the Kerning panel, and choose the new command Show All Combinations from the local panel “hamburger” menu, FontLab will replace the text with a combination of each glyph from the 1st class followed by each glyph from the 2nd class.

Previously, you could achieve it by CtrlAlt-clicking a pair entry in the Kerning panel or by an Alt-clicking a small gray rectangle next to a class name in panel pair entry.

Metrics»

Linked metrics»

We have refined the engine that controls linked metrics (metrics expressions). Their results are now no longer immediately rounded to integers, so rounding errors no longer accumulate if you have expressions that refer to glyphs that also have expressions. Previously, FontLab was always “hard-rounding” all metrics, including those that resulted from metrics expressions. This was a problem in glyphs without an extrema at one side, or if you used italic metrics, and used more complex expressions (esp. with multiplication and division).

Because of that, we’ve changed how metrics work depending on the Contour > Coordinates > Round when Editing setting:

If Contour > Coordinates > Round when Editing is on (which is ), then FontLab will:

  • immediately round to integers any metrics values that you set or change in the Metrics mode, that you enter into the Metrics Table or into the Glyph panel, or that result from metrics transformations such as scaling glyphs or sidebearings via Actions
  • allow fractional in glyphs that use linked metrics

If Contour > Coordinates > Round when Editing is off, then FontLab will:

  • keep any fractional values that you enter into the Metrics Table or into the Glyph panel or that result from metrics transformations as fractional values internally, but will display them as integers in the user interface (you can see the fractional values in the Source panel)
  • it will also allow fractional values that result from linked metrics

Known issue: FontLab currently stores the Contour > Coordinates settings per app, and does not save it in the VFC/VFJ. So if you open VFCs/VFJs, and some of them are designed to work with integer coordinates only, and others are designed to work with fractional coordinates, set Contour > Coordinates accordingly when working on each font.

Italic metrics»

If you turn off Preferences > Grid > Follow the font’s Italic Angle, then the italic angle View menu item will only two states:

  • when the metrics are upright, the menu item will say Apply Italic Angle to Metrics
  • when the metrics are italic, the menu item will say Do Not Apply Italic Angle

If you turn off the preference, then the italic angle View menu item will have three states:

  • when the metrics are upright and the grid is upright, the menu item will say Apply Italic Angle to Metrics
  • when the metrics are italic and the grid is upright, the menu item will say Apply Italic Angle to Metrics and Grid
  • when the metrics are italic and the grid is italic, the menu item will say Do Not Apply Italic Angle

FontLab will now correctly recalculate the linked metrics when you change this setting. Previously, if you used metrics expressions and you changed the setting, the resulting metrics would be incorrect.

Known issue: FontLab currently stores the View italic angle setting per app, and does not save it in the VFC/VFJ. So if you open a VFC/VFJ that uses italic metrics expressions and your FontLab has this setting set to upright, you’ll see incorrect metrics. Choose View > Apply Italic Angle to Metrics and you’ll see correct metrics.

Font window»

From Glyph window to Font window»

When you work in a Glyph window and you want to run an Action or operation from the Font window, choose the new Window menu item named Open Font Tab or Open Font Window (depending on your Preferences > General configuration), or press CtrlW on the Mac or CtrlAltShiftW on Windows. Then:

  • If the Glyph window is in Text mode, the Font window will open and select all glyph cells of your Glyph window’s text.
  • If the Glyph window is in any other mode, the Font window will open and select the glyph cell for the Glyph window’s current glyph.

Example: you have a set of glyphs in the Glyph window and you want to remove overlaps in all of them? Tap T for Text mode, then CtrlW (Mac) / CtrlAltShiftW (Win), then choose Tools > Actions > Basics > Remove overlap, click All Masters, then OK — done!

You can also open the font window this way if you double-click on any empty space in the Glyph window property bar.

Note: If the Font window has Hide unfiltered glyphs on and the glyphs that were in the Glyph window are not visible, they will not be selected. Turn Hide unfiltered glyphs off, switch back to the Glyph window and press CtrlW (Mac) / CtrlAltShiftW (Win) again.

Auto layer and composite glyph cell icons»

If you turn on Preferences > Font Window > Show auto layer and composite icons, the Font window glyph cells will now display additional tiny informative icons that indicate how the current glyph layer shown in the cell is built:

  • : auto layer if the icon is an upwards-pointing bright blueshogi piece” shape,
  • : partial composite (has both components and simple contours or other non-component elements) if the icon is a downwards-pointing dark rouge shogi piece shape,
  • : full composite (has only components) if the icon is a downwards-pointing light gray shogi piece shape.

The cells shown these icons at the top of the cell if Preferences > Font Window > Cell caption is set to be at the bottom, and vice versa.

Keyboard zooming»

Keyboard shortcuts for zooming now work in the Font window:

  • Cmd= zooms in and Cmd- zooms out: they switch between the different column presets, and if you choose the Flex cell mode in the bottom-right corner of the Font window, change the zoom in smaller steps.
  • Cmd1 goes (scrolls the window) to the current glyph cell.
  • Cmd2 sets the Font window zoom to 64 columns (very small cells).
  • Cmd3 sets the zoom to 32 columns.
  • Cmd6 sets the zoom to 16 columns.
  • Cmd7 sets the zoom to 8 columns (very large cells).

Font window: Deleting glyphs»

Deleting glyphs using Edit > Delete (Del) in the Font window now allows you to choose what to do with the affected composite glyphs and auto layer glyphs.

When you select one or more glyphs in the Font window and choose Delete, FontLab shows the Delete Glyphs dialog. If some of the glyphs that you are deleting are source glyphs for components in some composite glyphs that you are not deleting — FontLab offers you to resolve this situation. The top area of the Delete Glyphs dialog lists the glyphs that will be deleted and modified.

Let’s say that you try to delete A but your font has Aacute (Á) and Adieresis (Ä) that have components with A as a source. Those composite glyphs would be affected by the deletion of A, so the Delete Glyphs dialog now offers you the Composite glyphs section with three choices how to handle these composite glyphs:

Keep source glyphs»

If you choose Keep source glyphs, FontLab may delete fewer glyphs that you’ve selected.

It will not delete the glyphs that are used as component sources in glyphs that you are not deleting.

To references»

If you choose To references, FontLab will delete all glyphs you’ve selected.

In the affected composite glyphs, it will convert the affected components into element references. (This was the previous behavior of FontLab VI).

FontLab will delete the source glyph, but will keep the contours of that source glyph as a named element in the Gallery, and will place a reference to this element in all the glyphs that included the component that pointed to the deleted glyph. This way, all occurrences of the element are still linked together.

Note: If you create a new glyph and place that element as a reference and the only element in the glyph, you can then run Element > Element Reference > References to Components, and FontLab will seamlessly convert all these element references back into components that now point to the new glyph.

Decompose»

If you choose Decompose, FontLab will delete all glyphs you’ve selected.

In the affected composite glyphs, it will decompose the affected components, i.e. convert them to simple independent contours. (This was the behavior on FontLab Studio 5).

Note: Some glyphs may become “partial composite glyphs” that will have both components and simple contours as a result. When you export them into OpenType TT, they will be decomposed.

Auto layers»

The Auto layers section lets you decide what to do with glyphs that have auto layers which rely on glyphs that you’re deleting.

Turn Preserve recipes on to keep the logical structure of the auto layer, but the appearance may change. The affected auto layer glyphs will keep the auto layers property but may change visually.

  • If the affected auto layer uses a custom recipe, that recipe will stay unchanged. The component whose source was deleted disappears. However, if you add a new glyph with the name used in the recipe or assign that name to another glyph, the new component will reappear in the affected auto layer.
  • If the affected auto layer uses a built-in recipe, FontLab will try to fully rebuild the auto layer using the next-best recipe for as long as possible. For example, if your font has the glyphs A, acutecomb and acute and you turn on auto layer on Aacute, FontLab will build it from A+acutecomb. But if you delete the acutecomb glyph, FontLab will rebuild Aacute from A+acute. If FontLab cannot fully rebuild the auto layer, the component whose source was deleted disappears.

Turn Preserve recipes off to keep the appearance of the auto layer, but not its logical structure. FontLab will first convert the auto layer into a composite glyph, and will then work on the composite according to your Composite glyphs choice above.

Font info»

No style linking»

In File > Font Info, if you Alt-click Names > Build Names, FontLab will build the names without style linking, so the typographic Style name such as “Bold Italic” gets appended to the Style group and the Style link always becomes Regular.

If you Alt-click From Axes or From Masters on the Instances page, the predefined instance names will be built without style linking (this only makes a difference if you export instances as static fonts, not in a variable font).

User interface»

Easier to click buttons»

The buttons in the property bar are now easier to click — you can click slightly outside the button. This is consistent with Apple’s user interface guidelines.

Importing Artwork»

Better optical separation»

When you drag-and-drop or File > Import Artwork a bitmap image or a vector graphic that represents an entire alphabet or multiple glyphs onto the Sketchboard or into a Glyph window, that image or graphic arrives in FontLab VI as one element.

If you’ve imported an SVG, you may need to first choose Element > Image > Make SVG Editable. Once you have the element, you need to separate it into smaller elements that represent single glyphs. Finally, you can Element > Place As Glyphs to put them into a font.

Switch to the Element tool, turn on View > Element Frame, click the image and choose Element > Optically Separate. FontLab will automatically split the image or graphic into smaller pieces. If you don’t like the result, undo, go to Preferences > Operations > Optical separation and adjust the following new options that let you better control how FontLab splits the image. Then repeat Optically Separate.

  • Merge overlapping cells

    • Turn in on if glyph images like % where there is a horizontal overlap of the bounding boxes, or glyph images made of separate close-by elements (like dots), are being separated but you’d like them to be merged.
    • Turn it off if the separation produces too large elements that include several glyph images next to one another.
  • Merge stacked cells

    • Turn it on if fragments that are on top of other fragments, such as the dot over the “i”, are being separated but you’d like them to be merged.
    • Turn it off if the separation merges together fragments that are above one another but actually belong to separate glyphs.
  • Detect text baseline

    • Turn it on if the glyph images on your graphic sit on a common baseline.
    • Turn it off if the glyph images on your graphic are irregularly arranged and don’t sit on a common baseline.

Opening, saving and exporting fonts»

Opening and exporting .glyphs files»

With FontLab VI 6.1.4 (both the Mac and the Windows version), you can now export .glyphs files, and you can also open .glyphs files much more faithfully!

So now, you can easily exchange source files with users of Glyphs.app, or you can quickly switch from one app to another (and back, if need be), depending on the tasks you’re facing and the tools you need. FontLab VI also opens and exports .designSpace files and .ufo packages (both UFO 2 and UFO 3), and in the past few versions, we’ve greatly improved the support for these formats. So it has been really easy to collaborate with users of RoboFont, Superpolator or FontForge as well, and to use those apps along FontLab VI.

Note: export to .glyphs is “beta” functionality, so in this release, the Glyphs font export profile is hidden by default. Go to File > Profiles, turn on the blue checkbox next to the Glyphs entry, and click OK. Now go to File > Export Font As and choose the Glyphs profile. The Glyphs export profile exports the entire font with multiple masters into one file (into the Source-Glyphs subfolder if you turn on Subfolders by: Profile).

When FontLab VI opens or exports .glyphs, it correctly translates the most essential info:

  • masters and instance defintions
  • glyphs and layers
  • contours and ordinary components
  • guides and anchors
  • kerning and kerning groups
  • some font custom parameters such as naming
  • some master custom parameters
  • the font note, TrueType stem info and various other details

But FontLab does not read or export all data. Below are some known limitations in 6.1.4:

When FontLab opens a .glyphs file, it converts all automatically aligned components into normal manually positioned components, and reads smart components and serif components as plain contours.

FontLab does not read or export many font or master custom parameters, the do not export glyph flag, stored tabs or windows, info about the automatic alignment of components, some hinting info.

FontLab reads metrics keys from .glyphs as metrics expressions, and exports metrics expressions to .glyphs as metrics keys. However — while the syntax of the FontLab metrics expressions and that of Glyphs metrics keys is similar in many aspects, there are differences. At this point, FontLab does some conversion, but you may get keys or expressions that are valid in one app but invalid in another.

However, since both apps also store the actual glyph metrics, if you want to quickly “hop over” from one tool to another and back for a little fix — you can, and your metrics keys/expressions will survive. But if you set up more complex keys/expressions in one app and then change the spacing in another app, and go back to the first app — you may get unexpected results. You can always check which glyphs have expressions in FontLab’s Font window list view and remove them with Font > Remove Metrics Links.

If you open a .glyphs file in FontLab, and then export a new .glyphs file, you can open both files in the MergeGlyphs utility to compare what has changed, and you can even copy over some info that’s missing.

Exporting masters, DesignSpace+UFO, OpenType Variations»

When FontLab exports masters (into any format, including DesignSpace+UFO and OpenType Variations), FontLab will no longer remove final node of a contour that is on the same coordinates as the startpoint.

Previously, FontLab would replace that final node with a “closepath”, which was appropriate behavior for single-master fonts, but which made the masters no longer match if one had the final node on top of the start point, while in another, the coordinates of the two nodes would differ.

Exporting OpenType Variations TT (.ttf)»

Variable fonts that you export in FontLab VI will:

  • no longer cause horizontal shifting of composite glyphs in macOS
  • have a more compact GPOS table
  • have more correct STAT and MVAR tables

(FontLab VI now bundles version 3.40.0 of the wonderful fontTools library, and owes the variable font export improvements to the tireless fontTools project contributors. Thanks!)

Exporting OpenType PS (.otf) and Type 1»

(See Hinting above and Bug fixes > Hinting below.)

Quick Help»

Help > Quick Help Panel now shows context-sensitive help if you access File > Profiles, Edit > Find Glyphs, Font > Generate Instance, Font > Overlay Fonts, and the items in Window > Workspaces. It shows more help with Font > Generate Glyphs > Custom.

Bug fixes»

Undo»

  • Font guides and disappearing kerning. If you moved a font guide and then did Undo it, then later saved the file, FontLab would silently delete all kerning classes and kerning pairs in the saved file, even though it would still look fine in the file you were working with. This has been fixed.

  • Font guides. If you create a font guide, move it and then Undo, FontLab reverts the move but no longer deletes the guide.

  • Remove Overlap. If you Remove Overlap, then perform another operation and undo, FontLab no longer undoes the last operation and Remove Overlap in one go.

  • Anchors and Pins. When you add an anchor or pin, they appear in the Anchors & Pins panel. Now, when you undo, they will disappear from the panel. Previously, they were removed from the glyph but remained in the panel.

  • Various additional undo fixes.

Guides and grid»

  • Deleting guides. When you delete a guide, the Guides panel no longer shows that guide’s info. The guide is no longer undead.

  • Rounding font guides. If Contour > Coordinates > Round when Editing is on and you Shift-drag-and-drop from the Ruler to create a font guide, the guide’s initial position now rounded as expected.

  • Quick calculations for guides. You can now use quick calculations (e.g. entering +20 after the current value) consistently in the guide position and width fields in the property bar and in the Guides panel. Previously, quick calculations did not work in some of these fields.

  • Anchors and pins on the Grid. When you turn on Preferences > Grid > Round nodes, guides and anchors to grid points, and you have View > Show Grid and View > Snap > Grid on, pins and anchors will now hard-snap (round) to grid points. Previously, nodes and guides did snap but pins and anchors did not.

Drawing and glyph editing»

  • Non-node editing. If you edit a curve segment directly and drag it to a configuration where one of the handles would completely retract, the handle no longer erroneously bounces back to its original position.

  • Join. Using Join to close a contour immediately after moving an open node, could first delete the just-moved node, before closing the contour. This is fixed.

  • Anchor coordinates. When you edit an anchor’s coordinates in place, and then switch to a different open Glyph window, the text box now automatically closes. (Instead of being stuck in the edit mode.)

  • Crash with PowerBrush. FontLab sometimes crashed when drawing with the Power Brush. It is more stable now.

  • Inactive window. Moving nodes or contours with the keyboard in an active window no longer also moves previously selected anchors in a now-inactive Glyph window.

  • Remove Overlap with Fill. Contour > Remove Overlap applied on an element that uses a Fill filter no longer leaves orphaned nodes on the last contour segment.

  • Make Overlap. FontLab no longer produces nodes that would be “green” and “square” at the same time after Contour > Make Overlap.

In-canvas text fields. If you click a text field that is directly on the Glyph window canvas (for example for changing the guide name or coordinate, hint width, sidebearings or node coordinates) and then switch to another app, FontLab no longer crashes.

Elements and components»

  • Dragging in element group. When you dragged a selection by a segment rather than by a node, especially if the segment was in an element that was inside an element group, the contour could erroneously snap to itself. This no longer happens.

  • Nodes in element groups. FontLab will now correctly show nodes in non-active grouped elements if Edit across Elements is on.

  • Crash with composites. FontLab no longer crashes when decomposing certain composite glyphs or when generating certain composite glyphs with Generate Glyphs.

  • Stickers. You can now delete stickers that you create with Element > New Sticker, and when you click on them to edit, the text editing field appears in the correct location.

Metrics and kerning»

  • Kerning exceptions. In Kerning mode, when you show a kerning pair that forms a glyph-to-class exception, the red wiggly line no longer erroneously appears underneath the glyph that represents the class.

  • Pairs and Phrases. Removing all kerning classes in the font correctly updates the Pairs and Phrases panel so that it no longer shows class names that no longer exist.

Hints and zones»

  • Family zones. FontLab now reads the Family zones (“FamilyBlues”) from various formats. They correctly show up in Font Info > Master Properties > Zones > Family zones.

  • Recalc zones on export. When the export profile has the setting Hinting > Recalc zones on, FontLab now actually auto-calculates the zones when it exports the font. Previously, FontLab ignored this setting and only exported zones if you defined them in Font Info > Master Properties > Zones.

  • Recalc stems on export. When the export profile has the setting Hinting > Recalc stems off, FontLab now auto-calculates stems only if both H and V stems are not defined in Font Info > Master Properties > Stems. Previously, it would auto-calc stems for the H or V direction if stems for that direction were not defined.

  • Hint replacement. FontLab now performs better automatic PS hint replacement when exporting OpenType PS .otf and Type 1 fonts.

  • Hints to links. FontLab no longer reverses hints when they are converted to links in some glyphs.

  • Hints and LSB. If you change the LSB, FontLab will no longer erroneously change the vertical hint thickness.

  • Metrics & Hinting Shadows. When you turn on View > Metrics & Hinting Shadows, the Glyph window will show the sidebearings, zones and hints in light gray. Now, if you have assigned a tag to some zone in Font Info > Zones, that zone will no longer appear as a shadows in glyphs that don’t have the corresponding tag. Previously, such zones were not shown when View > Show > Zones was on, but they did appear as shadows.

  • Snapping to hints. Hints no longer lose their snap property. Previously, in some cases you could no longer snap nodes or other objects to hints.

TrueType Hinting»

  • Preview of stored TT hinting. When you open a hinted OpenType TT (.ttf) font and open Tools > TrueType Hinting, the imported binary hinting is now applied when rendering the previews in the Glyph window and the TrueType Hinting preview panel.

Glyphs and auto layers»

  • Crash with auto layers. FontLab no longer crashes when applying auto layers in certain fonts

  • Color flags. When you apply a Color flag for a glyph via the controls in the Glyph panel, FontLab no longer marks other glyphs (that share the same element) as changed.

Classes and tags»

  • Custom color flags for classes. In the Classes panel, custom color flags are applied to the selected classes. The feature was not working previously.

  • New class names. When you create a new class, FontLab shows its proposed name open for editing (in the Classes panel list), making easier to change it. You can still edit a class name at any time with a double-click on it, or with the Class Name field in the top bar of Classes panel.

  • Class names. FontLab no longer allows invalid class names for kerning classes. Previously, characters beyond the basic ASCII were incorrectly allowed.

  • Counting column in classes list. In the Classes panel, the list of classes shows the number of glyphs belonging to each class. That column had its width reduced to give more room for other UI elements.

  • Last column in list view of Classes panel. When the list view of Classes panel is active, the last column (OpenType glyph definition, abbreviated as OT Def) stretches to fill the available space. But when there is not enough space, its width is now adjusted to the minimum to improve overall view.

User interface»

  • Multiline fields in Font Info dialog. The text is no longer rendered behind scrollbars in the multiline text fields of the Font Info dialog: Master properties > Note, Font properties > Creator > Designer, Font properties > Creator > Description, Font properties > Legal > Copyright, Font properties > Legal > Trademark and Font properties > Legal > License.

  • Creation date in Font Info. FontLab for Windows no longer shows the wrong year Font Info > Creator > Creation (Windows-only bug).

  • Font window quicklook. On Windows, when you hold the Spacebar in the Font window to show the “quicklook” preview of a glyph, and then switch to some other app, the “quicklook” pane goes away as you would expect.

  • Font Map panel. Switching from the Font Map to the Glyph window correctly updates the Glyph panel, to show info for the (new) current glyph.

  • Quick Help panel. Quick Help is no longer “stuck” showing information about the Font Info dialog, after the Font Info dialog is closed.

Sketchboard and Text»

  • Text frame wrap. When you create a text frame on Sketchboard and switch its wrapping method to Auto or Table using its toolbar, and you then save the font that uses that frame, the information about the wrapping is now saved with the frame’s text, font size and position, so the frame is correctly recreated on the Sketchboard when you open the VFC/VFJ. Previously, the wrapping method was not saved.

  • Text frame wrap. You can now use Text > Wrap to change a Sketchboard text frame’s wrapping method. Previously, only the frame toolbar buttons worked.

  • Text frame wrap. When switching a Sketchboard text frame wrapping from Auto to Manual, the content is repainted properly now.

  • Sketchboard layers. When you start FontLab in the Tabs configuration, the Layers and Masters panel is no longer disabled on the Sketchboard.

  • Auto wrap in Text mode. While in text mode, typing or removing a paragraph break in the sidebar will no longer activate Auto Wrap.

Opening and exporting fonts»

  • Opening VFC. FontLab now no longer refuses to open certain VFC files.

  • Opening OpenType+COLR. FontLab now opens certain OpenType+COLR color fonts more reliably.

  • Duplicate element names. When FontLab opened an older VFC/VFJ and needed to assign some elements a name for technical reasons, that could result in different elements having the same name. This no longer happens.

  • UFO 3 glyph marks. When FontLab reads UFO 3 packages or exports them, it now correctly handles color flags (glyph marks).

  • Vendor ID. When FontLab opens an OpenType font with a Vendor code (OS/2.achVendID) that is shorter than 4 alphanumeric characters, it removes the trailing spaces so Font Info > Creator displays the vendor name correctly.

  • Crashes. FontLab no longer crashes when opening certain Asian OpenType TT fonts or certain large fonts made with FontForge.

  • Tables panel: The text area in Preferences > Open Fonts > Do not import these tables to Tables panel lists the OpenType/TrueType tables that FontLab should not decompile into the XML format when it opens a .ttf or an .otf. That list no longer accumulates duplicate entries.


FontLab VI version 6.1.3.7016»

24 March 2019

These release notes include release notes from version 6.1.3.7016, which is mostly a bugfix release, and, further down, from version 6.1.3.7013, which added many features and enhancements.

FontLab 6.1.3 Highlights»

  • FontLab 6.1.3 adds many new features, improves speed and functionality, and fixes many issues. It’s one of our most ambitious updates since the initial release!
  • Version 6.1.3.7016 fixes some problems found in 6.1.3.7013 and adds a few enhancements (indicated with ☆).
  • Note: VFC and VFJ files saved in FontLab 6.1.3 cannot be opened in FontLab VI 6.1.2 or in earlier versions.

Drawing and editing glyphs»

  • Move nodes or handles with cursor keys after dragging.
  • Edit Tunni lines more freely with cursor keys.
  • Make simple calculations in numeric text fields for widths, coordinates etc.
  • Add nodes or remove nodes, guides, components and kerning pairs using two mouse buttons.
  • Perform direct non-node segment editing with more precision.
  • ☆ Free Transform selections from multiple elements across layers in one go.
  • Instantly scale and flip selections with Selection frame.
  • Easily make slanted glyph guides.
  • ☆ Easily move nodes and handles along the italic vertical axis.
  • Automatically relocate the first node with Set Start Point.
  • Use the new Add Nodes action.
  • Manually add horizontal PostScript ghost hints.

Elements»

  • Filter and remove elements in the Gallery panel.
  • Easily add new elements/components to a group.
  • Remove or reorder elements/components while in Font window.
  • View component index and coordinates.
  • Copy appearance or element structure when filling a new layer with the content of another font or master.

Metrics, auto layers and expressions»

  • ☆ Edit kerning exceptions more intuitively.
  • Update linked metrics and auto layers live or on demand.
  • Turn auto layers on/off in all masters.
  • Get the right anchors when decomposing glyphs.
  • Easily edit glyphs from the Metrics window.
  • Search for glyphs that contain expressions.

Classes, tags and features»

  • Import and export classes.
  • Import features from multiple font formats.
  • Control what happens when you add glyphs into a kerning class.
  • Use additional virtual tags.
  • View tags in Font window cell captions.
  • Search for partial tags in the Font window.
  • Use tags and virtual tags in feature definitions.

Font formats»

  • Save backups in a subfolder.
  • ☆ Use Sketchboard text frames more easily to edit, space or kern glyphs, save them in VFC/VFJ.
  • Easily customize font export settings.
  • Use hyphens in glyph names.
  • Export single-stroke fonts for engravers and plotters.
  • Countless improvements in exporting instances, handling OpenType color fonts and UFO packages.

Performance and updates»

  • FontLab opens and saves fonts up to 2× faster and consumes up to 40% less memory.
  • Decide if you prefer to get stable or beta updates of FontLab VI.

Bug fixes»

Glyph drawing and editing, Tunni lines, Smart Corners, flattening of compound glyphs, Paste Special, the Mask layer, Kerning, Element Guides, the Gallery panel, the Font Window, OpenType features, Variations, PostScript and TrueType hinting, Undo, Python and font format support.

New features / enhancements»

Drawing and glyph editing»

Move nodes and handles along the vertical italic axis»

☆ If you have a non-zero Italic Angle in Font Info > Font Dimensions, you can now use the new menu item Contour > Coordinates > Follow Italic Angle to decide how “vertical movement” of nodes and selections works (vertical Shift-dragging or using the Up/Down cursor keys).

  • When it’s off, the movement is truly vertical, i.e. happens along the vertical axis.
  • When it’s on, the movement is actually diagonal, i.e. happens along the vertical axis slanted by the italic angle.

If Follow Italic Angle is on, moving a node or selection with Up/Down while holding Shift or Cmd will result in diagonal movement. But the results of tapping Up or Down without modifier keys depends on the font’s italic angle and the Contour > Coordinates > Round when Editing setting:

When Round when Editing is on, Up/Down will move the node or handle by 1 unit up or down. If the italic angle is within ±26.6°, the node or handle will not move horizontally as the vertical movement by 1 unit would result in a horizontal movement by less than 0.5 units. If the italic angle is outside these values, the node or handle will also move to the left or right.

Previously, this toggle was coupled with View > Apply Italic Angle to Grid, but now that three-way toggle lets you only decide between seeing upright sidebearings and grid, slanted sidebearings but upright grid, or slanted sidebearings and grid. Using this setting now no longer affects the contour editing behavior.

Glyph window»

Selection remembered when changing glyphs or layers»

☆ FontLab now remembers which components, contours, or elements you selected in a particular glyph. If you select some things in a glyph layer, then open a different glyph or switch to another layer and back, your previously stored selection will be restored.

Active elements when you open a glyph»

☆ When you open a glyph in a Glyph window that doesn’t have a stored selection, FontLab will no longer automatically make a component or the first locked element active. So when you open a composite glyph, no component is active by default. You can click a component, or use the < or the > key, to select the first component and iterate through the other components.

FontLab will by default make the first unlocked element active, which typically is the default element that holds the glyph’s contours.

Context menu»

☆ The context menu for nodes now includes the commands Duplicate and Retract Handles.

Free Transform across elements and layers»

☆ When Edit across Elements is on, and if you select contour portions (nodes, handles, segments) from multiple elements with the Contour tool, Tools > Free Transform (CmdT) now works on the entire selection.

If Edit across Layers is also on, this even works across multiple layers. Previously, it only worked on the contours of the active element.

Class kerning with exceptions»

Let’s summarize how class kerning with exception has worked until now in FontLab VI. Say you have a kerning class _T with the glyphs T Tcaron Tcommaaccent and a kerning class _y with the glyphs y yacute ydieresis ygrave.

If you enter the text Ty, Tỳ, Ťy or Tÿ etc. into a Glyph window and choose the Kerning tool, you can edit the _T _y class:class pair value using the arrow keys, or by dragging the y glyph. In the property bar, _T and _y will be shown in bold black on each side of the kerning value field. If you turn on View > Kerning Classes, the other class glyphs will be shown behind both glyphs in a “cloud”.

If your text is Tÿ, you hold Ctrl and use the arrow keys or drag the 2nd glyph, you’ll create a 1st side T _y glyph:class exception. If you hold Alt and edit, you’ll create a 2nd side _T ydieresis class:glyph exception. If you hold both Ctrl and Alt and edit, you’ll create a “both sides” T ydieresis glyph:glyph exception. The property bar will show a non-bold red glyph name on the side of the exception glyph.

You can change the current glyph that represents the 1st class using CtrlUp/CtrlDown, or by double-clicking the class glyphs in the cloud behind the T. You can change the current glyph that represents the 2nd class using AltUp/AltDown, or by double-clicking the class glyphs behind the y.

For example, if you use AltDown to change Tÿ into Tỳ:

  • If you keep holding Alt and use Left/Right, you’ll create a new _T ygrave class:glyph exception, and set its new value.
  • If you release Alt and then use Left/Right, you’ll still be editing the _T _y class:class pair.

When you’re editing an existing exception and would like to switch to the parent class pair or to another exception that descends from the parent class pair, use CtrlUp/CtrlDown or AltUp/AltDown to change the 1st or 2nd glyph, then release the modifier key.

Class glyphs behind exception glyphs»

☆ FontLab will now no longer show class glyphs behind an exception glyph if you have View > Kerning Classes on.

So if you’ve created a _T ydieresis class:glyph exception with Alt, and you have the Tÿ text in Kerning mode (so T is a class glyph and ydieresis is the exception glyph), then the _T class glyphs will still appear behind T, but the _y class glyphs will no longer appear behind ÿ. Previously, the contents of a kerning class was shown behind any glyph that belonged to a class, regardless of whether the glyph was part of a class pair or an exception pair.

Editing kerning exceptions»

☆ When an exception pair is active in the Kerning mode, you can now edit its value visually using arrow keys (Left, Right, with Shift as accelerator) or by dragging the 2nd glyph.

Previously, arrow keys changed the current exception pair but dragging changed the parent class pair even though you thought you were changing the current exception pair. It was very confusing.

Bug fixes»

Drawing and glyph editing»

  • Remove Overlap. FontLab no longer crashes when you Remove Overlap on a specific glyph and then switch to another layer.

TrueType curves»

  • Converting to TT curves. When you converted PS curves to TT curves, the change is now instantly reflected in the Glyph window.

Glyph window»

  • Nearby nodes. When you hover over a node, nodes that are very close to that node on screen (for example in thin glyphs or in far zoom levels) no longer temporarily disappear.

  • Context menus. If you select a contour or segment and then right-click on the selected segment, the context menu now appears correctly.

Font Info»

  • Trailing spaces in font names. In File > Font Info > Instances, FontLab will now remove trailing spaces from any names. Previously, FontLab allowed trailing spaces at the end of Style Group name and other names, which led to problems.

  • Style Group name. In File > Font Info > Instances, the automatic generation of Style Group name no longer occasionally builds the incorrect width portion of the name.

Variations»

  • Non-matching masters with open contours. When working with open contours and the Fill tool, spurious “ghost nodes” no longer erroneously appear in some glyphs that prevent seemingly matching masters from interpolating.

Hinting»

  • Hinting links. When you move an element, FontLab now correctly updates the position of the hinting links.

Sketchboard Text frames»

  • ☆ We have refined the way zooming and tool selection works and enabled some menu commands that were previously unavailable when you edit glyphs within a Sketchboard text frame.

  • ☆ The Text tool is now available when you deselect a Text frame and you have fonts open.

Undo»

  • Rounding. When you have hint links attached to unrounded nodes, move the nodes, then choose Apply Rounding or turn on Round when Editing, and then undo, FontLab no longer moves the nodes or links into unexpected locations.

  • Kerning. In Kerning mode of the GW, after you undo a kerning pair change, switch to another glyph, click the kerning field in the property bar and click the glyph again, FontLab no longer erroneously applies the kerning value that you’ve just undone for a different pair.

  • Kerning. In 6.1.3.7013, Undo did not record your kerning edits, so if you edited many pairs and then triggered Undo, you’d end up at the beginning of your edits. This is now fixed — every kerning edit is recorded as a separate Undo step.

Exporting»

  • OT Variations, DesignSpace+UFO. FontLab no longer writes decimal commas instead of decimal periods in some unusual system locale configurations when it writes .designspace files as part of the OpenType Variations or DesignSpace+UFO export.

FontLab VI version 6.1.3.7013»

21 March 2019

New features / enhancements»

Performance»

☆ FontLab VI 6.1.3 opens fonts 1.5–2× faster, saves VFCs 2× faster, and uses less memory than version 6.1.2.

Drawing and glyph editing»

Right-click improvements»

  • You can now easily delete nodes, handles, anchors, pins and guides using a two-button mouse, like in FontLab Studio 5: press-and-hold the left mouse button on the object, and, while holding the left button, click the right mouse button, then release both buttons. If you do the same on a curve segment, it will be converted to a line segment.

  • You can now easily insert a node on a segment using a two-button mouse, like in FontLab Studio 5: press-and-hold the the right mouse button on the outline of a curve or line segment, and — while holding the right button — click the left mouse button. FontLab will insert a smooth node on a curve segment or a sharp node on a line segment where you clicked.

  • The context menu in the Glyph window now opens when you press the right mouse button (or, on the Mac, also press Ctrl and the left mouse button). Previously, the context opened when you right-clicked (i.e. pressed and released the button), and it was possible to accidentally drag objects or start a selection with the right button pressed. Thanks to this small change, users of tablets and styluses should find it much easier to open the context menu on nodes, handles, guides etc. Note: dragging a segment with the right button pressed still performs non-node editing.

“Pantograph” non-node editing»

If you don’t have any nodes or segments selected, you can edit a segment directly via non-node editing: place your pointer over the outline (not a node) so that a blue rhombus appears, and drag it. Previously, the change of the segment directly corresponded to the distance you dragged.

Now, the segment changes by the half of the dragging distance, so you can control the curve more precisely without zooming in. You can customize this ratio in Preferences > Distances > Non-node editing changes contour by 1/2 of dragging distance. Change 2 to 1 to get the old behavior, or enter a larger number (up to 5) for even more precision. A hundred years ago, type designers used a pantograph for the same purpose!

Scale and flip selections with Selection frame»

In the Glyph window, you can now use the new Selection frame to instantly scale or flip contour selections (in Contour mode) as well as elements and contours (in Contour and Element modes). Turn on View > Selection Frame and a light gray rectangle will be shown around your selection or element with scaling handles at the sides and corners:

  • To scale the selection, drag any of the handles.
  • To also scale in the opposite direction, Alt-drag.
  • To scale proportionally, Shift-drag.
  • To flip the selection vertically, Alt-click on the left or right round handle, or tap E.
  • To flip the selection horizontally, Alt-click on the top or bottom round handle, or tap W.

Note: Choose Tools > Free Transform (CmdT on Mac, CtrlT on Windows) for more advanced transformation that includes rotation, slanting and the ability to move the center of the transformation.

Move nodes or handles with cursor keys after dragging»

When you drag a node or a handle to move it, it now becomes selected, so you can instantly move it further using cursor keys. Previously, clicking a node or handle selected it, but just dragging it left it unselected.

Tunni lines»

☆ When you turn on Tunni lines (View > Tunni Lines or L) and click a Tunni line, you can edit the line using the cursor keys. As in previous versions:

  • Up moves both handles closer to their intersection point
  • Down moves both handles further away from their intersection point

Now, you can use additional keystrokes (the direction of the movements is always from the point of view of a convex segment):

  • AltLeft moves the Tunni point to the left, parallel to the current angle of the Tunni line, by making the left handle shorter and the right handle longer
  • AltRight moves the Tunni point to the right, parallel to the current angle of the Tunni line, by making the left handle longer and the right handle shorter
  • AltUp moves the Tunni point away from the segment, orthogonally to the current angle of the Tunni line, so it increases the tension
  • AltDown moves the Tunni point closer to the segment, orthogonally to the current angle of the Tunni line, so it decreases the tension

When Preferences > Editing > Live preview is on, editing Tunni lines show live preview in the Preview panel. The preview was only refreshed after releasing the mouse button before.

If Preferences > Editing > Clicking on outline selects segment is off and you click a segment, you can perform non-node editing using the cursor keys, just as before. But now, pressing CmdAltL (Contour > Edit Tunni Lines) activates the Tunni line of the current segment for editing. Previously, this activated Tunni lines of all contours for editing.

When a Tunni line is active, you can press Esc to deactivate it.

Deselecting nodes and handles»

The Preferences > Editing > Marquee selection ignores handles when selecting nodes setting controls how the “marquee selection” (rectangular selection that appears when you drag over some nodes and handles) works. When it is off, the marquee will select both nodes and handles. When it is on:

  • When you drag the marquee over some nodes and handles, the nodes will be selected, and handles will be only selected if they belong to a segment between two nodes that you select. In other words, “free-standing” handles will not be selected.

  • When you drag the marquee only over handles, they will be selected.

Previously, when this setting was on, FontLab used the same behavior when deselecting with Shift-marquee. Many users found that confusing because some handles would not be deselected. Now, Shift-marquee always deselects whatever it captures, nodes or handles.

Make slanted glyph guides»

If you create a horizontal or vertical glyph guide, you can now click on a tiny circle on the guide to convert it to a “vector” guide. The tiny circle is then replaced by an arrow that you can drag to change the angle of the guide. Previously, converting a horizontal/vertical guide to a slanted vector guide was more cumbersome (right-click, choose Vector, click again to see the arrow).

Improved: Set Start Point»

If a node is selected in the Glyph window, the new Contour > Set Start Point command makes the node the first node of the contour.

If you use the command in the Font window with one or more glyph cells selected, or in the Glyph window with no node selected, Set Start Point will relocate the start point to the “optimal” node in each contour of the current glyph layer. FontLab will chose the sharp node point at the end of a straight vector closest to the origin point (0,0) as the “optimal” node; or if that is not found, the sharp node closest to the origin; or otherwise the node closest to the origin.

Because it is now a menu item, you can assign a keyboard shortcut to Set Start Point via Tools > Commands.

New action: Add Nodes»

Tools > Actions has a new Effects > Add nodes action, familiar to FontLab Studio 5 users. The action lets you specify a desired segment length in font units.

It divides the real length (along the curve) of each existing segment by the desired segment length, and then splits each segment into a number of new segments equal to the rounded result of the division. When splitting, it keeps the existing nodes and inserts new nodes, either at equal distances (so the length of each new segment approximates the desired segment length), or at random distances (if Randomize is on). Optionally, it converts all curve segments into line segments.

For example, if you specify the desired segment length of 100 and turn off Randomize, a line segment that is 752 units long will be split into 8 equal segments of 94 units each.

Improved action: Set Contour Direction»

Tools > Actions > Basics > Set Contours Direction now works better. If different parts of a glyph have different contour direction, they will get the proper TrueType or PostScript direction, depending on your choice.

Drawing ellipses and rectangles»

When you started to draw an ellipse or a rectangle at a sidebearing, FontLab VI used to move the sidebearing instead of drawing the contour. This no longer happens, but you can still move the sidebearing using the Spacing Controls triangles.

When View > Suggest > Stems is on, FontLab now suggests stem distances (defined in Font Info) as you draw with the Rectangle tool.

Smart Corners»

  • The rounding of coordinates when applying Smart Corners was much improved, so the results (especially very small ink traps) are much smoother now.

  • When a Smart Corner handle is on top of a node, you can now use Alt-drag to grab and manipulate the Smart Corner handle instead of the node.

Esc key in the Glyph window»

When you have selected some object (contour, element etc.) in the Glyph window, the Esc key moves the focus up one level. If your glyph has several levels, such as groups of elements inside other groups, tapping Esc multiple times activates the higher-level object and ultimately deselects the selection. When nothing is selected, tapping Esc deactivates the glyph, so no glyph is active. This is especially useful to preview a longer text in Glyph Window.

You can now reactivate a glyph with a single click anywhere in the Glyph Window. Previously, reactivation needed a double-click on the glyph contour.

Elements and components»

Components: coordinates and index»

☆ When View > Show > Coordinates is on, FontLab will now show the component index (starting at 1), its coordinates (if they’re different than 0,0) and its scale and rotation (if non-default) below all components in the Glyph window. The readout for the active component is slightly darker.

Elements/components in Scoreboard»

If you turn on View > Scoreboard, the Scoreboard (the large resizable coordinate readout) now also appears when you move a component or an element, and shows the placement coordinates.

Better rendering of selected elements»

When using Preferences > Glyph Window > Outline thickness > Thick, the selected element now presents more contrast from the unselected ones. The difference is more visible when View > Show > Smooth Outline option is on.

Remove or reorder elements/components while in Font window»

While in the Font Window, you could use the Elements panel to reorder elements via drag-and-drop. You could also select an Element and change its properties. Now, while in Font window, you can also delete the selected element from Elements panel with the button or Del, and you can reorder Elements using Element > Arrange: Send to Back (ShiftCmd[ which makes the element or component “first”), Send Backward (AltCmd[), Send Forward (AltCmd]) and Send to Front (ShiftCmd]).

Previously, you had to open the Glyph window to perform these operations. Note: Elements and components in the Elements panel are ordered in visual stacking order, like layers in design apps. The first element or component is listed at the bottom of the panel.

Metrics when inserting a component or reference»

The Glyph > Add Component dialog, as well as the Add Element Reference and Replace Element Reference dialogs from Element > Element Reference, now remember whether you last chose Keep metrics or Replace advance width. However, if the glyph is blank, Replace advance width is always chosen.

Add new elements/components to a group»

Now you can add another element or component to an existing group of elements. To do so, select the group and the additional element/component, then choose Element > Group (CmdG). The new element will be added, preserving the group name. This is particularly important when the element group is referenced by other glyphs because the reference is fully preserved this way.

Previously, you needed to ungroup and then regroup the elements with the extra element included, losing references to the group.

Glyphs, layers and masters»

Adding Glyphs»

☆ In Font > Add Glyphs:

  • In the Categories, Scripts and Ranges tabs, you can now enter a Unicode codepoint (e.g. 0105), a Unicode character (e.g. ą) or a glyph name (e.g. aogonek) into the Filter text box. The group that contains the match will be shown in the list. If the list only shows one result, the map automatically shows the matching character cell.
  • When you click a character cell, you can hold Space to display the character rendered in the system font, with additional information.

Append Glyphs now uses references»

When you copy and append glyphs to the same font in the Font window (Edit > Copy Glyphs and Edit > Append Glyphs), FontLab now builds the new glyphs with references instead of unlinked copies. It no longer changes the names of previously existing elements by adding numeric suffixes — the element names are preserved.

Filling layers with the content of other fonts or masters»

If you choose Glyph > Add Layer or click the Plus button in the Layers and Masters panel, and turn on Fill new layer with content of this font, you can add the content of a master layer of another open font or the current font (“content”) as a new layer to your current font. If you haven’t entered your own name for the new layer, FontLab automatically names the new layer .content font (previously, it would always overwrite your name with the autogenerated name).

For each glyph in your current font where you’re adding the new layer, FontLab looks up the glyph name in the content font and master, and when it finds a matching glyph layer:

  • If the content glyph layer contains simple elements or contours, it copies them to the new layer.

  • If the content glyph layer contains components, it copies them as components that refer to the new layer of your current font. If the content glyph layer was a composite, but you haven’t filled the new layer for the component source glyphs, the new layer of the composite glyph will have blank components.

  • If the content glyph layer contains named element references, FontLab previously copied the content elements as standalone, unlinked elements. Now, if you turn on the new Reuse named elements that exist in new font layer setting, FontLab will instead check for any glyphs in the current font that contain a pre-existing layer with the same name as the new layer. If the pre-existing layer in any glyphs already contains elements with the same name as the element references you’re adding from the content font master, FontLab will add references to the pre-existing elements instead of adding standalone elements.

In other words: with Reuse named elements that exist in new font layer on, you copy the element structure from the content font master, but the appearance is taken from the current font. With Reuse off, you copy the elements’ appearance from the content font master.

If you work with element references, you can create different versions of the same-named element across different masters, and then use this new setting to copy the structure of elements of some compound glyph layers from one master to a second master, but use the appearance of the elements already defined in the second master.

Editing across exportable and service layers»

If Edit > Edit Across Layers is on, you can select objects on other exportable layers (e.g. master layers) if an exportable layer is active, or on other service layers (e.g. Mask) is a service layers is active, but you cannot select across both exportable and service layers at the same time. This should improve working with masks and other service layers.

Variations»

Interpolation of named elements»

☆ FontLab now prefers names of elements over the element order when determining the order in which elements match across masters for interpolation. This change makes it easier to work with compound and color glyphs that use many elements. This does not affect components and elements that don’t use names.

When you interpolate (use the Variations panel to see an instance, generate or export instances), and if your glyph contains named elements:

  1. FontLab now uses names of elements as the first step to identify elements as matching across masters. For each unique element name present in any master, FontLab finds matching elements with the same name in all masters. If more than one element have the same name in each master (when you use several element references within one glyph, e.g. for serifs), FontLab orders the same-named elements by their Elements panel order. If the number of elements with the same name differs across the masters, it matches the smallest common number of elements.

  2. In the second step, FontLab uses the element order defined in the Elements panel to match the remaining elements (this was previously the behavior for all elements).

Metrics and kerning»

In the Kerning panel local menu, Import Kerning is now called Copy Kerning From for consistency.

Locked metrics»

When you turn on View > Lock > Glyph Metrics, you can still edit the glyph metrics in the Metrics mode. The primary purpose of locking glyph metrics is to prevent users from accidentally changing glyph metrics while working with contours or elements.

Metrics Table»

The Metrics table (View > Metrics Table) now shows the metrics fields for the current glyph in bold on a slightly darker background.

Open glyphs for editing more easily»

Previously, in the Metrics and Kerning modes, you could Cmd-double-click (Mac) or Ctrl-double-click (Win) the visible glyph contents (the “black” portion), and the glyph would open in a Glyph window for editing. If Preferences > Spacing > Double-click to glyph in Metrics mode opens it for editing was on, a simple double-click would also open the glyph for editing, and if the setting was off, a double-click would activate the glyph.

Now, all this also works when you double-click (optionally with Cmd or Ctrl) the whitespace of the glyph.

Right-click to remove kerning pair»

In Kerning mode of the Glyph window, while you are changing a kerning pair by dragging either the kerning handle (with View > Show > Spacing Controls on) or the 2nd glyph, you can now remove the kerning pair by also clicking the right mouse button, while already holding the left mouse button (like in Fontlab Studio 5).

Linked metrics, auto layers and expressions»

Auto layer for all layers»

To turn the auto layer property on or off for all layers of a glyph (in Glyph window) or of the selected glyphs (in Font window), hold Alt and choose Auto Layer from the Glyph menu or the context menu.

To toggle auto layer in all layers and also copy the auto layer recipe from the current layer to all other layers when turning auto layer on, hold Cmd (Mac) or Ctrl (Win) and choose Auto Layer from the Glyph menu or the context menu.

Auto layer contents»

Auto layers place components, anchors and guides automatically using recipes, so you cannot visually edit or move them. To indicate this more clearly, the Elements panel now shows names of components in an auto layer in lighter gray and no longer shows the color and the number of contours. This way, you can easily see if the current layer is an auto layer even if the Layers panel is hidden.

Also, previously, you could temporarily drag objects in an auto layer in the Glyph window, and those objects would “snap back” to their recipe-defined positions. Now, you can no longer drag them.

Note: If you want to change the contents of an auto layer, either adjust the auto layer recipe or turn off auto layer and edit the contents manually.

Live update of metrics and auto layers»

FontLab VI allows you to build complex relationships between and within glyphs using three mechanisms:

  • auto layers: automatically build composite glyphs using “recipes” that you can specify per master; those recipes tell FontLab which glyphs to insert as components and where to position them; auto layers inherit glyph contours, metrics, guides, hints and anchors from the component glyphs; the recipes can also modify the metrics
  • linked metrics: make glyph metrics (width and sidebearings) dependant on the metrics of other glyphs, using expressions
  • location expressions: position guides, alignment zones, anchors and pins using expressions that can refer to positions of other objects (guides, anchors etc.) or to per-master named parameters

In previous versions, FontLab was always automatically recalculating (updating) the location expressions and auto layers whenever you changed some glyph, and was updating the linked metrics either automatically (when the global setting Preferences > Spacing > Automatically update linked metrics was on) or manually (when you triggered Font > Update Metrics).

We have now removed the preference and added a new submenu Font > Live Update. It contains two checkboxes: Live Metrics which causes FontLab to always update the glyph metrics that use expressions, and Live Auto Layers that causes FontLab to keep rebuilding the automatically generated composite glyphs.

If your font uses many auto layers or many linked metrics, live updating may be slow and can impact the performance of FontLab. If that’s the case, turn off either of those checkboxes and periodically trigger Font > Update Glyphs (AltCmdM) to force the update.

FontLab now saves the state of the Live Update checkboxes inside your VFC/VFJ, so you can easily set one font to have live update on and another font to have it off.

Location expressions»

We have also improved some aspects of location expressions for guides, anchors, zones and pins. Note: they are always updated automatically.

  • ☆ You can now search for glyphs that contain a certain location expression (or its portion) in the Search box of the Font window property bar or in Edit > Find Glyphs.

  • If a location expression contains an error, for example an unknown variable, FontLab shows an error message in the Output font whenever you open the VFC/VFJ or you edit an object of that type. These error messages are now more meaningful.

Strong ligature attachment in legacy recipe syntax»

Previously, when writing a glyph generation or auto layer recipe using the legacy syntax, if you wanted to build a ligature, you could use the _ ligature attachment operator. The _ operator had a limitation: the + non-spacing attachment operator ignored _ and always attached marks to the first component of the ligature. The recipe a+acutecomb_b+gravecomb resulted in both acutecomb and gravecomb being attached to a.

We have now added an additional, “strong” ligature attachment operator: &. The recipe a+acutecomb&b+gravecomb will first attach acutecomb over a, then attach gravecomb over b, and then assemble these results into a ligature.

Anchors when decomposing composite glyphs»

When you create an auto layer in a glyph using a recipe, the component glyphs specified in the recipe are used to build anchors in the auto layer as follows: First, the anchors from the source glyph of the first component are inserted, let’s say bottom and top. Then the anchors from the source glyph of the second component are inserted, let’s say left and top. The previously-inserted top anchor is replaced with the new top anchor, so the glyph now has bottom from the 1st component and left and top from the 2nd component. Then the anchors from the source glyph of the third component are inserted in the same way etc., so for any same-named anchors that exist in different source glyphs, the anchor from the last component ends up in the auto layer. When you turn off auto layer or decompose the glyph, those anchors are retained.

When you create a composite glyph by inserting components manually, the new glyph does not receive anchors automatically. When you decompose a manually-made composite glyphs, the anchors now get inherited in the same manner as described above. However, the anchors specified in the composite glyph itself have the highest priority, so decomposing the glyph will not replace those anchors by same-named anchors inherited from the component source glyphs.

Previously, the mechanism of inheriting anchors from component source glyphs was inconsistent. When you decomposed a manually-built composite glyph, the way anchors were inherited was different (the first component had priority rather than the last).

Calculations in numeric text fields»

You can now perform simple calculations in many numeric text fields in the user interface using + for addition, - for subtraction, * for multiplication and / for division. For example, if you select two nodes and the Width field of the property bar will say 400, you can add /2 there (so the field becomes 400/2) and press Enter, the value will become 200 and the horizontal distance between the nodes will be halved. To move a node horizontally by 25 units, just enter +25 after the current node position in the x field in the property bar or the Node panel.

Calculation of zones, hints and guides thickness»

In the fields where you’re supposed to enter a thickness of any guide (including a zone or a hint), you can now enter = followed by the absolute position of the “end” of the guide. For example, if you have a zone that starts at 700 and is supposed to be 20 units thick, in the thickness field, you can enter =720 and it will be recalculated to 20.

Hinting»

Ghost hints»

☆ When FontLab opens a VFB, OTF or Type 1, it now correctly reads the top ghost hints as -20 and the bottom ghost hints as -21. It also correctly exports the top and bottom ghost hints into VFB, OTF and Type 1.

You can now create horizontal ghost hints: select one node or several nodes that have the same y-coordinate, for example on the top or the bottom of the I, and choose Tools > Add Horizontal Hint (CtrlX) command. FontLab will pick the hint value depending on the geometry of the segments adjacent to the node.

Note: When you convert a bottom ghost hint to a link or add a horizontal bottom ghost link, that link gets the width 21 (because the nodes it links from are at the bottom), but FontLab will change the hint back to -21 when you export.

StdW vs. StemSnap PostScript stems»

☆ OpenType PS (.otf) and Type 1 fonts define have two kinds of stems for each direction: one standard stem (horizontal StdHW and vertical StdVW) and a list of common stems (horizontal StemSnapH and vertical StemSnapV). The standard stem is sometimes included in the common stems list, and sometimes it is not — FontLab now supports this distinction.

Previously, when FontLab opened a font, FontLab created the stems list in Font Info > Master Properties > Stems by first checking if the StdHW/StdVW values are also present in the StemSnap lists, and if they were not, it would it would always add them to those lists. Then, it would give the name Hstem name to the horizontal stem value that corresponded to StdHW, and give the name Vstem to the StdVW stem value. When FontLab exported the font to a format with PostScript outlines, it always wrote all Font Info stems into the StemSnap lists.

Now, if the StdHW/StdVW stem values are also found in the StemSnap list, FontLab will name these stems Hstem and Vstem. But if those stem values are not found in StemSnap, it will name them std.Hstem and std.Vstem. When exporting fonts, FontLab will export these stems with the std prefix as StdHW/StdVW stems, but will not include their values in the StemSnap list. If the stems don’t have the std. prefix, FontLab will export them as StdHW/StdVW and will include their values in StemSnap.

Note: When you open a Type 1 or an OpenType PS (.otf) font in FontLab Studio 5 and save a VFB, the app stores the values for StdHW/StdVW but, erroneously, does not expose them in the user interface. If you open such a VFB in FontLab VI, you’d see these stems in the stems lists even though you do not see them in Studio 5.

Classes and tags»

The Classes panel Class type dropdown now separates the Tags and Virtual Tags entries from the classes entries.

Import and export classes»

Note: In FontLab VI, kerning classes are defined per master while tags and OpenType classes are defined per font.

We’ve improved the Classes panel’s local (“hamburger”) menu:

  • Copy Classes From (renamed from Import Classes From) lets you copy classes into the current font and master from a different master or from another currently open font.

  • Remove All Classes… now shows a dialog where you can choose to remove kerning classes (from current master or all masters) and/or OpenType classes from the font.

  • Export Classes.. lets you export all class definitions into:

  • a .classes.json file which will contain kerning classes for each masters, all OpenType classes and all manually assigned tags; tis format is recommended for use in FontLab VI and is based on the VFJ format

  • an .flc file which will only contain the OpenType classes and the current master’s kerning classes; this format is intended for interchange with FontLab Studio 5

  • Import Classes… lets you import class definitions from a .classes.json or an .flc file.

When you use Copy Classes From or Import Classes…, a dialog appears where:

  • You can choose the type of classes to copy or import. OpenType classes are always copied from the selected font to the current font, and kerning classes are copied from the selected master to the current master.

  • You can turn on Replace existing classes to completely replace the selected type of classes, or turn it off to only import classes with names that don’t already exist in the font (so existing classes will be preserved).

Adding glyphs into a Kerning Class»

When you drag-and-drop or paste some glyphs into a “1st” or “2nd” Kerning class, FontLab checks if the glyphs are already included in another same-side Kerning class. Previously, FontLab silently removed these glyphs from the old classes and placed them in the new class.

Now, FontLab shows a dialog that tells you which glyphs are already part of another same-side Kerning class. You can choose to:

  • Move the glyphs to the new class,
  • Keep the glyphs in the old class and only paste those glyphs that were not part of a class,
  • Cancel the paste operation.

Tags in Classes panel»

  • The Classes panel now works much faster when you create tags, delete tags, or add/remove glyphs in a tag.
  • The Classes panel now sorts tags alphabetically by default and shows larger icons. Text display in the status bar was also improved.

Virtual tags»

FontLab automatically assigns virtual tags to your glyphs based on:

  • linguistic criteria (e.g. uc for uppercase glyphs, lc for lowercase glyphs, fig for figures, and 4-letter tags for glyphs belonging to a particular Unicode script),
  • technical criteria (e.g. blank if all printing layers in the glyph have no contents, composite if any of the layers uses components, references if any of the layers is used as a component or element reference),
  • the OT Glyph Definition Class entry in the Glyph panel (corresponding to the virtual tags otnone, otsimp, otliga, otmark and otcomp), that translates into the GDEF table classes.

In this version:

  • We’ve added the noblank virtual tag that is automatically assigned to all glyphs where at least one visible layer has some visible content (contours, components, images).
  • We’ve added the ALL virtual tag that is automatically assigned to all glyphs in the font.
  • We’ve added the svg virtual tag for all glyphs where at least one exportable layer has an SVG element, and the image virtual tag for all glyphs where any of the layers includes images.
  • The Categories > Properties section of the Font window sidebar now includes additional entries based on virtual tags: Blank, Color, Image and SVG.
  • The color virtual tag no longer appears erroneously.

Features»

Applying features in Glyph window and Preview panel»

The setting Preferences > Open Fonts > Compile feature definitions now works as expected.

  • When it’s on, FontLab will compile the feature definitions so you can use features in the Glyph window.
  • When it’s off, FontLab will open the font, but not compile the features. You can now turn on the Features checkbox in the Glyph window sidebar or in the Text mode property bar to compile the features in this situation. Previously, you had to manually compile the features using the Compile features button in the Features panel.

The Script selector in the Glyph window sidebar, in the fi Features dropdown of the Text mode property bar and in the Features popup of the Preview panel now lists:

  • The Auto script that performs automatic script identification and text run segmentation depending on the text that you’re testing.
  • The Default script that lets you test the features defined in the DFLT script.
  • The scripts that the font’s Unicode coverage actually supports.

Previously, the selector listed Auto and all Unicode scripts, which wasn’t useful.

Features panel»

When you add a feature in the Features panel, FontLab asks you to type in the 4-letter feature tag, and then generates the feature code snippet.

The Go to glyph or class at cursor button in the Features panel has a new icon.

Import features»

We’ve improved the Features panel’s local (“hamburger”) menu:

  • Import Features… (renamed from Import Features File) now lets you import feature definitions not just from .fea files, but also from .ufo, .vfb, .vfj or .vfc.
  • Copy Features From was renamed from Import Features for clarity. It lets you copy feature definitions from another open font.

Classes and tags in feature definitions»

When you compile the features in the Features panel or when you export a font into OpenType, FontLab automatically performs a conversion of FontLab classes defined in the Classes panel into “FEA classes”, and includes them on-the-fly into the feature definition code (“FEA code”).

We have now extended how the conversion of FontLab-to-FEA classes works. The Features panel local menu now includes a Include Classes submenu with four checkboxes:

  • Kerning (off by default): this replaces the previous Include Kerning Classes checkbox. If turned on, FontLab also automatically converts and includes in the FEA code on the fly the FontLab Kerning classes defined in the Classes panel. Normally, you should turn this off, because our algorithm that creates the kern feature converts the FontLab Kerning classes into FEA classes in an optimized way that prevents subtable overflows, and writes their definitions inside the feature.
  • OpenType (on by default): this converts OpenType classes from the Classes panel into FEA code, and includes them on the fly when you compile the features or export the font. This setting exposes the functionality that was previously always happening. You may want to turn it off if you prefer to write your own class definition entirely in the FEA code.
  • Tags (on by default): this converts Tags that you can manually define (in the Classes panel or in the Glyph panel) into FEA classes, and includes them on the fly when you compile the features or export the font.
  • Virtual Tags (off by default): this converts the Virtual Tags into FEA classes, and includes them on the fly when you compile the features or export the font.

Below the Include Classes submenu, there is an Import Classes and Tags menu item. Its label changes depending on which checkboxes are on in the Include Classes submenu. When you click Import Classes and Tags, FontLab converts the enabled types of classes and/or tags into FEA classes, and writes them explicitly into the Features panel’s Prefix section.

The types of classes turned on in Include Classes will also be written into the FEA file when you use Export Features….

Why are tags useful in OpenType features when we have OpenType classes? Since you don’t explicitly control the order of the glyphs in tag-based classes, they are not very useful in class-by-class substitutions, but they can be very useful in contextual lookups. For example, you can easily write a contextual substitution that occurs if a glyph is not followed by a noblank glyph (is at the end of a word), or if it’s not followed by an ALL glyph (is at the end of a line or a text run):

feature swsh {
  ignore sub [c e]' @ALL; sub [c e]' by [c.fina e.fina];
  ignore sub f' @noblank; sub f' by f.fina;
} swsh;

If both Tags and Virtual Tags are turned on, FontLab will create FEA classes that are the result of merging a tag and a virtual tag with the same name.

If Tags and/or Virtual Tags are turned on, and also Kerning and/or OpenType are turned on, and there is a kerning or OpenType class with the same name as a tag or virtual tag, FontLab will create an FEA class from the kerning or OpenType class and will ignore the tag. This way, you can define your own ALL or noblank class at any time which will override the classes generated from virtual tags.

Note: glyphs in an OpenType class have an explicit order that you can define in the Classes panel. Glyphs in a tag-based FEA class are ordered by their glyph index.

Font window»

Font window cells»

☆ You can now view the glyph tags in Font window cell captions: choose Tags in the Cell caption dropdown in the Font window property bar.

☆ The text of the glyph notes will start showing in Font windows cells at a smaller cell size than previously.

Font window filters»

In the Font window property bar, the underlined Filter label now correctly shows any current font filter that is applied to the window, including font filters applied via the Search box or the Sidebar. The if you click on the Filter label, you can still choose the most popular types of font filters there.

The Font Window presents six filter kinds: Encoding, Unicode, Codepage, Category, Script, and Index. Each (except Index) offers several additional options. Now, when you change the filter type, FontLab VI remembers the last choice used for that type (for example, Script: Greek or Category: lowercase), and restores it.

☆ When you click Categories > All in the sidebar, the Font window will retain its filter type but will set the filter value to None or All, which always has the effect that no glyph cells are filtered. Previously, Categories > All was less intuitive.

Opening Glyph tabs/windows from a Font window»

When you select many or all glyphs in the Font window, and you open a Glyph window (by tapping Enter, clicking one of the Toolbar buttons or choosing Window > New…):

  • If you’ve selected fewer than 5000 glyphs, FontLab will now open all selected glyphs in the Glyph window.
  • If you’ve selected 5000 or more glyphs, FontLab will show a warning that opening so many glyphs in a Glyph window may slow down the app and offer you to open all selected glyphs or just the first 5000 glyphs.

Previously, FontLab only opened the first 200 selected glyphs in the Glyph window.

User interface»

Measurements panel»

☆ You can now make the text in the Measurements panel larger or smaller using the two new buttons in the panel’s control bar.

Output panel»

In various cases, FontLab prints error messages to the Output panel. Now, whenever FontLab prints the error messages, the Output panel automatically appears on screen.

Keyboard shortcuts»

The Tools > Commands dialog now lists the commands that you can currently run in black, and the disabled commands that you cannot currently run in gray. This allows you to use the dialog to assign custom keyboard shortcuts to all commands, even those that are not accessible in the current UI context.

While editing a value in a panel, you can go to previous or next glyphs using keyboard shortcuts Cmd+BracketLeft and Cmd+BracketRight. These shortcuts were already available when editing an element name, but have now been extended to work in all panels. This makes easier to do repetitive actions, like changing recipes, adjusting metrics or fixing anchors.

Toolbar and dropdown text buttons are easier to click»

You can now activate a Toolbar button or an underscored dropdown text button by clicking the area slightly outside the button, so it’s easier not to miss it.

Windows and tabs configuration»

The settings in Preferences > General > Windows and tabs configuration now have text captions in addition to the icons.

Anchors and Pins panel»

The glyphs table at the bottom of the Anchors and Pins panel is now shown only in the Anchors tab, since it has no relevance for the Pins tab. Pins are only used in elements.

Cell sizes in Add Glyphs dialog»

In the Font > Add Glyphs dialog, cell sizes were increased to better show glyphs that extend to the height limits (diacritics, descenders, etc.).

Sketchboard: Text boxes»

In FontLab VI, you can use the Text tool on the Sketchboard to create text boxes that you can arrange into “mini-specimens”. Each Sketchboard text box behaves like a Glyph window, so all glyphs are fully editable. You can change the font of a Sketchboard text box using the Fonts panel.

Now, FontLab saves the Sketchboard text boxes that use a particular font in the corresponding VFC/VFJ file. So if you close the font, the text boxes that use it disappear from the Sketchboard, and if you re-open the font, the text boxes appear in the same locations on the Sketchboard.

Also, now, the Text tool is only available on the Sketchboard if at least one font is open.

Opening, saving and exporting fonts»

Improved backups when saving files»

When you save a font, FontLab can create backup copies of the previously-saved versions of your working file. This has now been improved. In Preferences > Save Fonts:

  • If you set Existing font files to Rename and turn on the new Save backup files to subfolder setting, FontLab will create a subfolder named the same as your working file but with a .backup extension, and will save the backups inside that subfolder.
  • If you set Existing font files to Rename and turn off Save backup files to subfolder, FontLab will behave like in previous versions, saving the backup files directly in your working folder.
  • If you set Existing font files to Overwrite, FontLab will not create any backup files.

Easier handling of export profiles»

The File > Export Font As… dialog has a new Customize… button that opens a Customize Profile dialog where you can quickly change the technical settings of the currently selected export profile. Note: If the currently selected profile is a built-in profile, shown in bold in the profiles list, FontLab will create a duplicate custom profile with the name suffix (clone) that you can change.

Previously, to change the export settings, you first had to open File > Profiles, choose or clone a profile, customize it, close the dialog, then open File > Export Font As… and choose the just-customized profile.

When you now open File > Profiles to customize a profile, the profile that you last used in File > Export Font As… will be selected. Previously, the Profiles dialog opened with the first profile selected.

In the File > Profiles dialog, the profiles list is now wider.

Hyphens in glyph names»

FontLab now permits hyphens in glyph names when used in classes and feature definitions, and retains them when opening fonts.

When exporting the font into final formats (OTF, TTF):

  • If the profile setting Use standard PDF-compatible glyph names is used, most glyph names will be converted to small set of standard human-readable names and to uniXXXX names.
  • If the setting Use current glyph names is used or if some glyphs cannot be converted into PDF-compatible names, FontLab will apply “camelCase” to glyph names that contain hyphens: it will remove the hyphen and will convert the letter that follows the hyphen to uppercase (so Zhe-cy will become ZheCy).

Opening and exporting UFO»

  • When you open a UFO package, FontLab now reads the lib entries of each .glif file and stores them as a lib dictionary in the glyph object.
  • When you open a Designspace+UFO package, FontLab reads the lib entries of each .glif file of the first master and stores them.
  • FontLab saves the stored glyph lib dictionaries in VFC/VFJ.
  • You can edit the contents of the lib dictionary using the Source panel.
  • When you export a UFO 3 package, FontLab now writes the glyph lib dictionary for each glyph as a lib dictionary inside the .glif files.
  • FontLab currently ignores custom lib.plist keys when reading UFO. We plan to add support for handling them in the future.
  • This version has many more UFO-related improvements, please check the Bug Fixes section.

Note: the built-in UFO Package and DesignSpace + UFO profiles export UFO version 2. To export UFO version 3, open File > Profiles…, duplicate the built-in profiles and turn off Format settings > Use legacy format version.

Exporting OpenType+CBDT color fonts»

Previously, if your font had ppm.XX layers where the XX PPM size was larger than 127, or if the font had contour-based or SVG color glyphs, and Preferences > Save Fonts > Default rasterization PPM was larger than 127, and you exported the font with a profile that had Export color font files > OpenType+CBDT turned on, FontLab would export a -CBDT.ttf font that would be technically invalid since the OpenType+CBDT color font format has 127 as a technical limit of the maximum permissible PPM size.

Now, when you’re trying to export an OpenType+CBDT font in such situations, FontLab will present a dialog box that will list the PPM sizes that will not be exported or that will prompt you to enter a rasterization PPM smaller no larger than 127. Note: OpenType+sbix fonts can be rasterized into larger PPMs.

Also, OpenType+CBDT export now works with both TTF- and OTF-based font profiles.

Exporting open contours as single-stroke fonts for engravers and plotters»

The Open contours setting in the Outlines section of the export profile is now called Export open contours and has three settings, one of which is new:

  • Do not export ignores contours that are not closed and omits them from the exported font
  • Close with straight line joins both ends of an open contour with a line and exports them as closed contours
  • Duplicate and close (a new option) places a copy of an open contour on top of the original and joins them, in the exported font; this is useful if you’re making fonts for plotting or CNC engraving.

Install stable or beta versions of FontLab VI»

You can now choose between receiving notifications about the availability of stable versions or beta versions of FontLab VI.

  • Turn Preferences > General > Get beta versions on to get notified when we release a beta version of FontLab VI. Beta versions contain preview functionality which is thoroughly tested. They often contain hotfixes for urgent bugs, but may introduce new bugs and problems. If you install beta versions, you may have a greater chance to get a fix for a bug faster, and you can report on functionality changes as we develop it. However, it may be a good idea if you keep the last stable installer around.
  • Leave this setting off (default) to only get FontLab VI updates that we consider stable. We release stable updates approximately once a month.

Bug Fixes»

Glyph drawing and editing»

Open contours»

  • Joining. When you drag some multiple open contours by a node, and drop onto some other open contours, the contours will be joined in all expected places. Previously, only some of the dropped contours were joined with the other contours.

Smart Corners, Tangent nodes, Tunni lines»

  • Dragging selections. If one of the nodes at the edge of a contour selection is a tangent node, the selection no longer randomly jumps back and forth when you drag it with the Contour tool.

  • Tangent and Tunni distortions. When you were editing a Tangent node or a Tunni line using the mouse (especially with Contour > Coordinates > Round when Editing turned on), the contours could get distorted because rounding errors would accumulate. Now, FontLab applies the coordinate rounding only at the very end of the editing operation, so the contours no longer get distorted.

  • Tunni lines. When you edit Tunni lines (CmdAltL), and you choose Nodes at Extremes or some other operation from the Contour menu, FontLab will now deselect the Tunni lines. Previously, it kept them selected, but the editing behavior was unexpected.

  • Coordinates. After you add a Smart Corner, if View > Show > Coordinates is on, selected nodes now show their coordinates (as expected).

Eraser»

  • Filters. It’s no longer possible to erroneously use the Ctrl-click Eraser mode on contours that are being generated dynamically by a filter such as Power Brush or Smart Contour.

Power Brush»

  • Rough contours. Under some circumstances, Power Brush would create very rough final contours made out of short line segments. Now Power Brush always creates smooth contours as intended.

  • Empty elements. Switching to the Brush tool in Power Brush mode no longer creates an empty element. FontLab will only create an empty element after you’ve actually drawn something with Power Brush.

  • Free Transform. After transforming a curve with Free Transform, Power Brush no longer sometimes acts as if the curve was still in its pre-transformation state.

Suggest stems»

  • Dragging. With the option View > Suggest > Stems on, FontLab VI suggests the object to use the nearest stem value. The feature was working for rectangles drawn with the Rectangle tool, but not while dragging nodes or segments. It is fixed now.

Remove Overlap»

  • Contour > Remove Overlap now gives more consistent results in some cases.

TrueType curves»

  • Adding nodes to TrueType curves with the Knife tool works correctly.

Guides»

  • Element guides. Elements guides now follow transformations. Now, when an element or a contour is flipped or transformed, any Element guide linked to nodes follows these changes. Guides are also transformed appropriately if the element is part of a group, and a transformation is applied to the whole group. Previously, element guides lost their node links after transformations.

  • Guide angles. Element guides were wrongly modified, with arbitrary angles applied to them, in two specific situations: (a) when the user duplicates an element/component doing a click, hold and drag operation; and (b) when a reference is unlinked. This is fixed, and neither operation causes a change in element guides now.

  • Direction matching. The x location expression of an anchor can now refer to the position of a vertical guide, but not of a horizontal guide. The y anchor expression can link to a horizontal guide but not to a vertical guide. Previously, you could link the x position of an anchor to a horizontal guide, which was mostly confusing.

  • Font metrics. You can no longer enter location expressions for Font metrics. Font metrics are represented as special guides, but their position is defined in Font Info.

Paste Special»

  • Copy Layer. In a multi-layer font, Paste Special after Copy Layer no longer crashes.

  • References. If you Copy Layer and then Paste Special > contours & images > as references, FontLab no longer pastes a duplicate unlinked element with the same name but correctly pastes a reference instead.

  • References. If you Copy and then Paste Special in another layer with contours & images > as references on, FontLab will now correctly insert an unlinked element. Previously, FontLab inserted an element reference that would link to another layer, but cross-layer references are not implemented reliably and are not supported.

  • Expressions. When using Paste Special to paste a guide whose position uses an expression, the expression is no longer removed from the pasted guide.

  • Expressions. The Paste Special operation was abnormally slow when pasting guides with expressions. This is fixed: all Paste Special operations perform at similar speed now.

Elements and components»

  • Decompose. FontLab no longer crashes when you use Tools > Actions > Contour > Decompose.

  • Contour direction. When you design a glyph using elements, FontLab draws each element separately so you don’t see “holes” in intersecting areas. But when the glyph is decomposed or flattened (manually or during export), holes could appear if the elements were flipped or transformed because of different contour directions. Those holes would also influence how overlaps are removed. Now, FontLab automatically corrects the contour direction of flipped and transformed elements when flattening the glyph.

  • SVG. When you convert an SVG element into editable contours using Element > Image > Make SVG Editable, FontLab no longer creates duplicate nodes at the start points of the contours.

  • Element guides. When you move an anchor, and then you move an element guide to the same position as the new anchor position, FontLab no longer reverts the anchor movement.

  • Deleting elements. Selected elements are deleted if user hits the Delete tool, click on the minus button of Elements panel or triggers Edit > Delete, regardless the elements are locked or not. Previously, this procedure was working in an inconsistent way.

  • Deleting elements. After an element was deleted, hitting the up arrow key made the first element selected, instead of the next up. This is fixed now.

  • Element names. Changes in names of elements, components, and groups now show in the History panel and can be Undone.

  • Paste as Glyphs. Element > Place as Glyphs > Current Element no longer sometimes crashes.

  • Windows. Using the arrow keys to move a selected element with rounded corners no longer causes a crash (Windows-only bug).

Variations, Layers and Masks»

  • Layers & Masters panel. Up and Down arrow key work as expected in the Layers & Masters panel (switch between layers) after using keyboard shortcuts for menu commands.

  • Deleting from mask. If all the settings in Preferences > Variations > Synchronize in matching masters are on and you delete some objects from a Mask layer, the master layers will not be affected. Previously, deleting nodes or contours from a Mask layer would sometimes delete nodes or contours from a master layer.

  • Copy to mask. You can now copy selected contours to Mask (CmdM) even if the contours are part of a filter that has an element transformation

  • Variations panel. Turning on/off the options Sort contours and start nodes and Check masters geometry in Font Info > Axes correctly updates the corresponding options in the Variations panel.

Glyph window»

  • Context menus. The context menus in the Glyph window now appear slightly further away from the pointer so it’s no longer possible to accidentally trigger menu items when you merely open the context menu. The context menu for elements now behaves correctly.

  • Property bar. The Current font (F) indicator in the Glyph window property bar now only shows the font name. Previously, it also showed the master name but did not update that name when you switched the master.

  • Light fonts. In the Glyph window, extremely light glyphs no longer render with dropouts at some size/zoom levels.

  • View. Showing or hiding Zones, Hints, or Guides no longer moves the view in the Glyph window.

  • Lock. View > Lock > Anchors and Pins was no longer working in 6.1.2, works again.

Metrics and kerning»

  • Disappearing kerning. FontLab no longer completely removes kerning and kerning classes after some operations.

  • RSB. Changing the right sidebearing in one Glyph/metrics window is now correctly reflected in all other windows.

  • LSB. Editing the LSB using the keyboard (Ctrl with arrow keys) works correctly now.

  • Expressions. If you used metrics expressions (linked metrics) in auto layers, the metrics values would sometimes be set to 0 and then updated to the correct values later. Now, glyph metrics of auto layers are correctly calculated if expressions are used.

  • Expressions. If the left sidebearing has an expression, the LSB value in the glyph window is now rendered red. Previously, only RSB and Width fields that contained an expression were rendered red.

Font Window»

  • Copy. Select all and copying in the Font window no longer causes a crash.

  • Layers. The Layers & Masters panel no longer sometimes fails to update its content, after you replace a glyph in the Font window.

  • Drag-drop. Drag-drop of selected glyph cells in the Font window no longer sometimes fails for glyphs without Unicodes.

  • Gallery. A double-click on any cell in the Gallery panel selects the matching glyph in the Font window. This now still works in cases when the Gallery shows an element that appears only once in the font.

  • Docking. FontLab no longer crashes if you dock a Font window to the main window. It is also no longer allows you to dock the toolbar to a Font window (as that causes problems with changing Font windows). You can dock the Toolbar and panels to the main window, however.

  • Context menu. The Font window context menu now correctly highlights menu items when you hover over them.

  • Copy. You can once again copy selected glyph cells in the Font window and paste them in the Glyph window.

Glyphs»

  • Decompose. When you delete some glyphs from the font using the Font window, components in the remaining glyphs that pointed to the deleted glyphs are no longer shifted to the origin point when they are decomposed.

  • Tags. Glyph tags are no longer lost after you assign them. Previously, if you used the Glyph panel to assign a tag to a glyph, and then jumped to the previous or next glyph by keyboard shortcut (Cmd[/Cmd]) without first clicking in the glyph, the tag would not be assigned.

  • Recipes. Improved initial auto-generation of the fax glyph (facsimile or uni213B). The glyph is now built by adding the glyphs F, A, and X side by side rather than on top of each other. FontLab’s internal standard.nam and alias.dat files were updated.

  • Recipes. The _ ligature operator in the legacy syntax for generating glyphs now works correctly even if the component glyphs have . in their names.

  • Required glyphs. Glyphs uni0000 and uni000D no longer erroneously marked with a red horizontal line that would indicate that they had an incorrect name or Unicode, even if their names and codes were correct. This was fixed.

Font window»

  • Changed glyphs. When sidebearing in one glyph is changed, FontLab no longer masks unrelated glyph cells as changed (with the grey bar).

Font Info»

  • Curve tension. You can now set Font Info > Font Dimensions > Curve tension to 0, and the value is saved to VFC/VFJ correctly.

  • Stems. After importing an OpenType PS (.otf) font, FontLab now shows the imported Type 1 standard stems on the Font Info > Stems page.

Features»

  • aalt feature. Incorrect parsing of the aalt feature in FEA code is fixed.

  • GPOS. When you applied a positioning feature such as palt in the Glyph window that changed both the origin point and the width (e.g. pos [uni30A3] <-137 0 -339 0>;), the rendering in the Glyph window only reflected the change the width. Now it adjusts both.

  • Features panel. FontLab now correctly displays the line numbers in the Features panel code, and correctly reports line numbers when you compile the features, taking the automatically included classes into consideration.

  • Features panel. FontLab no longer displays { in the features list erroneously.

  • Kerning. If the font includes FontLab kerning pairs that refer to a class that is not defined in the Classes panel, FontLab now omits such kerning pairs when generating the kern feature. Previously, FontLab would fail to compile the kern feature.

TrueType Hinting»

  • TTH. Renaming a stem or a zone in the TTH Stems or the TTH Zones dialog box no longer causes FontLab to hang.

  • TTH. The dialog asking whether to also change names in existing links or keep the old names is fixed now.

  • TTH. Tools > Actions > Hinting > TT autohint no longer crashes on hinting rotated/transformed element references.

User interface»

  • Cell sizes. Clicking the button to increase the cell size in mini-glyph maps (in the Classes, Elements, Font Map and Gallery panels) no enlarges the cell by two sizes (from 1 to 3), but by one size.

  • Panels. FontLab no longer (under some circumstances) crashes trying to restore panels’ sizes and positions from a VFC workspace.

  • Measurements. The contents of the Measurements panel are no longer blanked out by doing File > Revert Font on a multi-layer font. (Windows-only bug).

  • Elements. The Name field of the Insert and Replace Reference dialogs now allows you to copy or cut the text. The right-click (Ctrl-click) context menu in the dialog no longer shows white text on white background.

  • Preview. If the Preview panel is in the Context mode and you switch between font windows/tabs, the preview now correctly shows the glyph of the current font in context.

  • Tab key. FontLab no longer gets stuck, with panels hidden and the interface blocked, from hitting the Tab key repeatedly.

  • Quick Find. In the Quick Find Glyph dialog (invoked with the / key), it’s now possible to paste, and issues with typing some characters have been resolved.

  • Commands. In the Tools > Commands dialog (ShiftCmdP), Classes is now correctly named Export Classes, and Classes panels is now Classes panel.

  • Actions. FontLab no longer crashes on opening the Actions dialog, when a multi-master font is active and the #instance layer is present.

Undo»

  • Remove Overlap. FontLab no longer crashes when you undo a Remove Overlap operation that involved empty elements.

  • Guide expressions. When you edit an expression in one font guide, then move another font guide, then undo, FontLab no longer undoes both edits.

  • Import Artwork. FontLab no longer crashes after you importing artwork into a glyph cell in the Font window and then Undo.

  • Elements. After Element > Separate Contours to Elements, Undo only undoes that operation, instead of also undoing the previous one.

  • Expand Filter. Undo after an Expand Filter operation now reverts only the previous operation.

  • Cut. If you move a component, cut it, and then do Edit > Undo, FontLab undoes just the cut, and not the move as well.

  • FontAudit. Undoing and then redoing the Fix All FontAudit operation no longer also undoes the previous operation (for example, glyph note editing).

  • Paste. Undo works as expected for pasting contours via Paste Special.

  • TTH. When using the TrueType Hinting tool, Undo now reverts only the last change, instead of reverting all the TrueType hinting.

  • Element names. Changes in names of elements, components, and groups now show in the History panel and can be Undone.

  • Paste. When repeatedly doing Place as Glyph from the Sketchboard, Undoing one no longer reverts all previous placing operations.

  • Paste. Undo of pasting glyphs in the Font window correctly restores glyphs that were over-written by the paste operation.

  • Gallery. Undo for dropping elements from the Gallery to glyph cells in a Font window is fixed.

  • History. Append Glyphs no longer appears as Replace Glyphs in the History panel.

  • Numerous other Undo fixes

Opening, saving and exporting»

FontLab VI (.vfc, .vfj)»

  • VFC. FontLab no longer crashes when opening certain VFCs.

  • VFC. FontLab now correctly opens VFC files saved in old versions of FontLab VI.

  • VFJ. In very rare cases, FontLab would export a VFJ that contained some invalid data. This no longer happens.

  • Typo metrics. FontLab correctly saves and reads the Font Info > Other values > Prefer typo metrics option to and from VFC/VFJ files.

  • Zones. FontLab now correctly saves Font Info > Zones in multi-master fonts to VFC/VFJ.

  • Linespacing. The Custom hhea linespacing setting is read correctly from VFJ.

OpenType fonts (.ttf, .otf)»

  • DSIG. When you sign the font with DSIG, FontLab no longer exports an additional font with a dummy DSIG.

  • OpenType PS. FontLab no longer sometimes crashes when exporting some particular fonts as OpenType PS (.otf).

  • Element references. Exporting a font no longer fails when there is a glyph with a duplicated element reference, one on top of the other. The font is now exported correctly.

  • Legacy kerning. When exporting a legacy kern table, FontLab correctly uses the specified maximum number of pairs. The default number for the maximum pairs in the kern table was changed in the built-in export profiles from 10240 to 10920 (the actual technical limit), and FontLab will not export more pairs even if you enter a larger number.

  • Anchors. FontLab no longer misses anchors in composite glyphs when importing and decompiling mark and mkmk features from TTF files.

Webfonts»

  • Web PS. The built-in Web PS export profile correctly uses .otf instead of .ttf in the sample CSS file.

Color OpenType fonts»

  • OpenType+CBDT. PNG compression works again when exporting OpenType+CBDT color fonts.

  • OpenType+CBDT. When exporting OpenType+CBDT color fonts, FontLab no longer includes an empty glyf table. Previously, this table caused the font to not render on Android.

  • OpenType+sbix. Under some circumstances FontLab could generate an empty OpenType+sbix color font. This is fixed now.

  • OpenType+SVG. When some OpenType+SVG font with PostScript outlines (.otf) were opened, the SVG color glyphs were incorrectly shifted below the baseline. This is now fixed.

OpenType Variations (.ttf)»

  • STAT. FontLab no longer crashes when opening a variable TTF with an invalid STAT table.

  • varLib. The varLib library, used in variable fonts export, was updated. It now does more error checking during the export process. Some fonts that did not export before can now be exported.

Generating instances»

When you generate an instance via Font > Generate Instance, FontLab will now:

  • Tags. Correctly assign tags to font guides, the same way they were assigned in the masters.

  • Hints. No longer lose hints when there are two links linking the same pair of nodes.

Exporting instances»

Export of instances. When you export instances as fonts, FontLab will now:

  • TTF auto-layers. Export all glyphs built with auto-layers (TTF).

  • Version. Write the Font Info-specified version to the name table. Previously, it would always write 1.000.

  • OTF components. Correctly interpolate and apply hints to decomposed shifted components (OTF).

  • Mark attachment. No longer create and export mark and mkmk features if the export profile is set to not export them (OTF).

  • Mark attachment. Generate and export mark and mkmk features even if generating these features issues some warnings, for example, if some anchors are missing (OTF, TTF).

  • GDEF. Export the GDEF table (OTF, TTF).

  • Glyph masters. Export glyphs that contain glyph masters (named :axislocation) if they contain element references (all formats).

  • Tags. Include tags and virtual tags if enabled in the Features panel local menu’s Include Classes submenu when compiling feature definitions (OTF, TTF).

  • VFB/UFO color flags. Write color flags and the contents of the Font Info pages Unicode Ranges and Codepages (VFB, UFO).

  • VFB/UFO components. No longer drop components in glyphs that contain both components and contour elements (VFB, UFO).

  • VFB/UFO kerning. Generate the kern feature for all instances (not just masters) if the option Create [kern] code if not present is on in the export profile (VFB, UFO).

FontLab Classic (.vfb)»

  • VFB creation date. When FontLab opens a VFB, it now retains the font creation date embedded in the VFB.

  • VFB version. When FontLab exports a VFB, it now correctly writes the Font Info > Creator > Version into the TrueType Version record.

  • VFB ghost hints. FontLab VI will no longer set wrong direction to ghost hints from files saved in FontLab Studio 5. Fonts exported as VFB also get the hints correctly.

  • VFB font and glyph notes. Texts embedded inside VFB files (font note, glyph notes, license text, copyright info, designer name etc.) can have different encodings.

  • FontLab Studio 5.1 for Mac OS X saved these texts in UTF-8, FontLab Studio 5.0.x for Mac OS X saved them using MacOS Roman, and FontLab Studio 5 for Windows saved them using the current user’s 8-bit encoding.

  • When FontLab VI opens such a file, it presents a dialog that lets you choose which encoding to use when converting these text to Unicode.
  • Previously, FontLab VI did not include MacOS Roman in the list of the encodings, and only showed this dialog when glyph notes had non-ASCII contents.
  • Now it also shows the dialog when non-ASCII characters are found in other texts embedded inside VFB. ~#3601

UFO Packages and DesignSpace+UFO (.ufo)»

  • UFO marks. FontLab now stores glyph color flags (marks) in a new “compact” format (public.markcolor lib key) when exporting to UFO3.

  • UFO lib. FontLab-specific keys for layer attributes now use com.fontlab. prefix instead of the incorrect public. prefix when exporting to UFO3.

  • UFO guides. Glyph guides are exported to UFO3 correctly now. Note: element guides (created with the Guides tool) are not exported to UFO.

  • UFO guides. Vertical guides are correctly imported from UFO3, instead of being converted to horizontal guides.

  • UFO Typo Metrics. Font Info > Other values > Prefer typo metrics is no longer automatically turned on when importing and exporting UFO3 files.

  • UFO layers. When opening UFO, different glyphs of the same layer always get the same visibility attribute.

  • UFO Mask. When opening UFO, FontLab no longer changes the contents of the mask layer. FontLab also exports the mask back to UFO correctly for all glyphs.

  • UFO fontinfo. When exporting UFO, FontLab now sorts the fontinfo.plist keys.

  • UFO Groups. Import and export of UFO groups is improved so that FontLab no longer adds duplicate groups in the feature file.

Importing and exporting artwork»

  • Import Artwork. After you use the CtrlD shortcut for File > Import > Artwork once in the current font, FontLab no longer disables that shortcut so you can use it again.

  • Exporting Window Contents. Export > Window Contents:

  • ☆ When exporting as SVG, the resulting SVG file will contain vector graphics rather than rasterized bitmaps.

  • ☆ When exporting as PDF, the resulting PDF file will actually contain PDF data, and its page formatting is improved. In 6.1.2, the files erroneously contained SVG data.

Python»

  • Python Kerning Groups. Using fgKerningGroups.asDict() in Python no longer causes a Memory Error.

FontLab VI version 6.1.2.6927»

21 December 2018

New Features / Enhancements»

With FontLab VI 6.1.2, you can now print, synchronize text across multiple windows with Echo Text, override and add custom OpenType tables using the new Tables panel, quickly add and edit classes in the improved Classes panel, create OpenType symbol encoded fonts, restore your panels when you open a VFC/VFJ, and much more!

Support and exporting of OpenType fonts»

Tables panel: Define custom OpenType tables»

The new Tables panel allows you to store, edit and export OpenType table definitions for arbitrary OpenType tables using the popular TTX syntax. The Tables panel is a convenient way to override the tables that FontLab exports by default (for example name or gasp), and/or to add tables to the exported font that FontLab VI does not support (for example MATH, BASE or meta).

Open an existing OTF or TTF and FontLab will decompile font tables except those listed in the Preferences > Open Fonts > Do not import these tables to Tables panel. Open Window > Panels > Tables to view the decompiled table definitions, to add or edit custom table definitions, to copy-paste them between fonts, and to enable some of the custom table definitions for export.

To add a definition for a new table, click +, double-click the XXXX table tag and type your desired table tag. Then input a valid TTX definition for that table in the editing area. To perform a basic verification of your custom table definition, select it and click Verify. To remove a table definition, click .

To enable custom table definitions for export, turn on their checkboxes. Whenever you export a non-variable OpenType font (OTF or TTF), FontLab will override the tables it generates with enabled custom tables, and will add any enabled custom tables that are suitable for the format.

Note: Currently, FontLab will not write custom table definitions into OpenType Variations fonts. Also, if you are generating instances from a variable font, each custom table definition that you enable for export in the Tables panel will be exported into all instances.

See the FontLab VI Help article about the Tables panel for more info.

Export Font As: Enable and disable instances»

In the File > Export Font As dialog, Instances tab, you can now Alt-click any blue checkbox to enable or disable all instances for export. Example: Alt-click on a checkbox to disable all instances, then click on some checkboxes one by one to export only the selected instances.

Export Font As: Export single masters or instances as VFC/VFJ»

In the File > Export Font As dialog, the FontLab VI (.vfc) and FontLab VI JSON (.vfj) profiles at the top of the list export the entire multiple-master source font as one file. This is equivalent to File > Save As, i.e. exports your font source losslessly.

The same-named profiles in the lower portion of the list are different: they allow you to export the current layer, all or some predefined instances or each master as separate single-master files. This may be particularly useful if you wish to perform some external processing of those files, or export them to other formats.

OpenType Symbol fonts»

FontLab VI 6.1.2 now allows you to export OpenType Symbol fonts.

TTF fonts with a cmap Platform ID 3, Encoding ID 0 are called “Symbol” or “cmap 3.0” fonts. Windows handles these fonts in a special way: the glyphs that have the Private Use Area (PUA) Unicodes in the range from U+F020 to U+F0FF are also accessed when you type normal text characters on a English or other Latin-script keyboard.

FontLab VI now lets you export “cmap 3.0” Symbol fonts in OpenType TT (.ttf) format. Even though “cmap 3.0” does not work in OTF fonts, FontLab will export Symbol fonts into OpenType PS (.otf) using double-encoding (each glyph getting two codepoints), so users will be able to type the glyphs the same way they can with TTF Symbol fonts.

To create an OpenType Symbol font:

  1. In the Font window property bar choose Filter > Codepage, and in the next dropdown choose MS Windows Symbol from the MS Windows subgroup.
  2. Drag your glyph cells to the filtered glyph cells that have the Unicodes U+F020–U+F0FF. This will reassign the names and Unicodes of the glyphs. U+F020 will correspond to the space character.
  3. Delete any glyphs outside the filtered area U+F000–U+F0FF from the font.
  4. In Font Info > Codepages, turn on the new checkbox Symbol font. This will automatically set the Symbol Character Set bit in the Selected codepages column.
  5. Use Font > Export Font As and choose the OpenType TT (.ttf) or the OpenType PS (.otf) profile, or any other OpenType-based export profile.

OpenType TT Symbol fonts with the “cmap 3.0” work as follows:

  • on Windows, the system “double-encodes” the PUA glyphs on the fly using codes used in the Windows 1252 Western codepage offsetted by 0xF000. For example, the glyph with the PUA Unicode U+F041 will also be accessible as U+0041 (so you can press the key for “A” to get it), and the glyph with the PUA Unicode U+F096 is also accessible as U+2013 (which is the character “–”), because the hex code 0x96 maps to U+2013 in the 1252 codepage.
  • on macOS and in Adobe apps, the on-the-fly double-encoding may not work, or may only partially work, but the glyphs will in any case be available via the PUA Unicodes.

When FontLab VI exports a Symbol font into OpenType PS (.otf), it writes a “cmap 3.1” where it assigns an additional Unicode from the Windows 1252 codepage to each glyph that has the PUA Unicodes U+F020–U+F0FF. Functionally, these fonts should work the same way as OpenType TT Symbol fonts.

Glyph names»

  • When exporting to OTF: OpenType with PostScript outlines OpenType PS format, FontLab now correctly renames the glyphs to the AGLFN+uniXXXX convention if the Glyph names profile setting is Use standard PDF-compatible names. This affects he OpenType PS (.otf) profile and its derivatives. Previously, FontLab always exported the current glyph names into OTF. To export an OTF without renaming the glyphs, add a new profile based on OpenType PS in File > Profiles…, set Glyph names to Use current glyph names, and export the font using the new profile.

  • You can now use glyph names that contain hyphens inside metrics expressions and auto layer recipes if you surround the glyph name with single quotes (e.g. 'A-cy') or double quotes (e.g. ="A-cy"-20). Font > Link Glyph Metrics and Edit > Paste Special > as links now correctly use quotes with such glyph names when building metrics expressions.

Special glyphs “NULL” and “CR”»

When the font source does not have the glyphs NULL or CR and:

  • You export an OTF with the profile setting Use current glyph names, FontLab will now add those glyphs named NULL or CR. Previously, it would add them as .null or nonmarkingreturn
  • You export a TTF with the profile setting Use current glyph names, FontLab will now add those glyphs and export them as Macintosh standard names. It will also export them as Macintosh standard names if they already exist in the font and have the names NULL or .null and CR or nonmarkingreturn.
  • You export an OTF or a TTF with the profile setting Use standard PDF-compatible glyph names, FontLab will now add those glyphs and export them as font-specific names uni0000 and uni000D, which is compatible with the AGFLN glyph naming. It will also rename them to uni0000 and uni000D if they exist in the font and have the names NULL or .null and CR or nonmarkingreturn.

When you open a TTF font where the post table entries for glyph ID 1 or 2 are Macintosh standard names, those glyphs will now be opened with the names NULL (rather than .null) and CR (rather than nonmarkingreturn).

Windows and Panels management»

On a monitor with the horizontal resolution larger than 1600 pixels, the width of any newly opened Font window will now be 1600 pixels rather than the full screen width. You can resize the window as you like.

Save and restore windows, tabs, panels and font filters»

FontLab VI 6.1.2 saves your entire workspace in the VFC or VFJ file: the contents, sizes and positions of windows and tabs, and now also the positions of visible panels. Use Preferences > Open Fonts > Restore workspace from VFC/VFJ to decide what should happen when you open a saved file: by default, FontLab will restore the windows and tabs, but you can also decide to restore panel positions.

FontLab VI 6.1.2 now also saves (to VFC/VFJ) and restores filters and sorting settings for all open Font windows.

Windows and window tabs»

  • You can now dock floating windows (turn them into tabs inside another window) using two new commands in Windows > Docking, which makes it easier to work with multiple windows, and to revert an accidental window undock.

  • Merge To Font Windows will dock all Glyph windows into their corresponding Font windows. Merge All Windows will dock all windows into one window.

  • Merge Window will dock the current window into the default window, or that font’s Font window.
  • Note: The availability, labeling and precise behavior of these commands depends on your Preferences > General > Windows and tabs setting.

  • The minimum width of a window tab heading is now smaller, so you can open more tabs before a scroll bar appears. Also, the borders between tabs are more distinct.

Control Bars view settings»

The View menu has a new Control Bars submenu that includes toggles to show and hide four control bars:

  • the Property Bar lets you perform common actions in a Font or Glyph. Toggling it is a new setting.
  • the Sidebar provides font filters in the Font window, and various text and features controls in the Glyph window. This setting was previously only available as a button in the property bar.
  • the Text Bar lets you input the text visible in the Glyph window using the glyphtext notation; the Glyphs Bar provides a simplified navigation of the font’s glyph set. These menu items only work in the Glyph window. They were previously available directly in the View menu.

Text improvements»

Each Glyph window or tab in FontLab VI contains “text.” In FontLab VI, “text” has a somewhat specific meaning: it is a sequence of glyph specifiers. Those specifiers can either be Unicode characters that produce the glyph which has the particular Unicode codepoint, or glyph specifiers that directly produce a particular glyph.

Echo Text: synchronize text between Glyph windows»

With the new Text > Echo Text menu item or the Echo text button in the Glyph window’s property bar, you can now set any Glyph tab or window to automatically receive (“echo”) the text of the current window. When a Glyph tab or window is an “echo window” i.e. has the “Echo text” property turned on:

  • When another Glyph tab or window is active, and you change the text in the active window, the same text will appear in the echo window.
  • When a Font window or the Font Map panel are active and you select some glyphs, these glyphs will show as text in the echo window.

“Echo windows” are most useful when you work with undocked windows (rather than tabs), especially if you have multiple monitors. You can work on a glyph or some text in one Glyph window using the Contour tool in a high zoom level, and have one or more Echo windows that provide an alternate view onto the same glyph or text.

Echo windows can act as a set of “supercharged Preview panels.” They can have a different tool active (for example the Text or Metrics tool), can use the Alternative view with different view details (for example, with hidden guides or font metrics).

You can change the text in both a non-Echo and an Echo window: whenever you change the text in the active window, all Echo windows will reflect that change. For example, you can turn on Text > Echo Text in two Metrics windows that have a different zoom level, and use the Kerning panel, the Pairs & Phrases panel or the Metrics panel to browse through some texts or pairs, and these texts or pairs will be instantly visible in both large and small point sizes. And if you edit the text in either of those Echo windows, the same text will appear in the other.

When you type in your own text into the Preview panel, the Content setting of the panel’s sidebar changes to Custom. Choose Content > Echo text (renamed from Current) in the sidebar or click the new Echo text/Custom button in the lower-right corner of the panel to synchronize the panel’s text with the current window.

Unicode glyph specifiers»

Various user interface elements of FontLab VI allow you to specify a glyph by using the glyph name (for example a, adieresis or adieresis.smcp), a glyph name synonym (for example uni00E4 if the glyph name is adieresis, or vice versa) or a single Unicode character (for example ä). We have now extended the glyph specifiers to allow:

  • Unicode characters with suffixes to match alternate glyphs; for example if you specify ä.smcp, FontLab will match the glyph named adieresis.smcp. Note: The suffix must match exactly so tt will not match adieresis.sc.
  • Unicode characters (also with suffixes) concatenated with _ (underscore) to match ligatures; for example if you specify f_ä, FontLab will match the f_adieresis glyph.

You can now use Unicode glyph specifiers:

  • in metrics expressions; for example, you can write an expression such as ш.alt + 20
  • in Generate Glyphs recipes and auto layer recipes; for example, you can use the extended syntax recipe = f_f & ä.alt or the legacy syntax recipe 'f_f'_ä.alt to build an auto layer in the f_f_adieresis glyph
  • in Edit > Find Glyphs…, Glyph > Add Component…, Element > Element Reference > Add Element Reference…

You can now also input Unicode glyph specifiers in the following interface elements, but FontLab will immediately convert them into real glyph names:

  • the text area of the Classes panel where you specify the contents of the class
  • the glyph name field in the Glyph panel
  • the New name field in Glyph > Rename Glyph…

We have also extended the glyphtext notation used in predefined texts (Preferences > Texts), in the Pairs & Phrases panel’s texts, and in the Glyph window Text Bar. In addition to Unicode characters (AÄĄ etc.), /-prefixed glyph names (e.g. /A/Aacute/Aogonek), and \u-prefixed hex Unicode codepoints (\u0041\u00c4\u0104), you can now use Unicode text in glyph specifiers, for example , /ä.alt or /f_ä.

Thanks to these enhancements, you can create more “portable” kerning lists, glyph generation recipes or sample texts for glyph design and spacing. This is particularly useful for non-Latin type design.

Note: in glyphtext, FontLab will match Unicode glyph identifiers in alternates or ligatures (e.g. /ä.alt or `/f_ä) only if the specified glyph uses a default AGLFN-compatible name prefix or portion (such asadieresis.altorf_aacute), and will not match non-default or synonym names such asuni00E4.altorf_uni00E4`.

Pairs & Phrases Panel»

The Pairs & Phrases panel allows you to browse short text phrases or kerning phrases. Editing these phrases is now easier: click the Edit Pairs & Phrases button in the property bar of the Metrics mode or in the bottom-right of the Pairs & Phrases panel to open the Pairs & Phrases editor. You can now drag the editor dialog around; importing text files and resetting to defaults is also easier.

Click the Texts or the Pairs buttons to edit the phrases for the respective mode. Click Cancel to ignore the changes, click Apply to apply the changes but keep the editor open, click OK or click outside the editor to apply the changes and close the editor.

Unicode glyph specifiers now also work in Text phrases and Pair phrases. For pair phrases, you can use either of the MetricsMachine-compatible formats:

The KPL:P pairs format that uses glyph names or Unicode glyph specifiers, with space to indicate the kerning pair:

#KPL:P: Pairs
T adieresis
T ä
T ä.alt

The KPL:W words format that uses glyphtext with space to indicate the kerning pair:

#KPL:W: Words
T ypography
auf arbeiten
k/lslash amstwo
/T.sc /Ä.sc/S.sc/T.sc

Glyph design»

Drawing and glyph editing in FontLab VI 6.1.2 should feel much faster than in previous versions.

Alt-dragging a node»

If you Alt-drag a sharp node, the results are now more predictable:

  • If an adjacent segment is a curve that has a collapsed handle, Alt-dragging the node will pull out the handle.
  • If an adjacent segment is a line, Alt-dragging the node along that line segment will convert that segment to curve, and pull out a handle.
  • In other cases, Alt-dragging the node will move the node, but keep the handles of any adjacent curve segments in place.

Previously, the different actions were triggered in a somewhat less predictable manner.

Marquee selection of nodes vs. handles»

To select some points using the Contour tool, you can drag a rectangular marquee. We have fine-tuned how this works and renamed Preferences > Marquee selection selects nodes but not handles to Marquee selection ignores handles when selecting nodes.

Previously, with this preference on, rectangular marquee selection only selected nodes. To only select some handles (without selecting nodes), you had to use the lasso selection (Alt-drag). Now, if this preference is on, then:

  • If your marquee covers both nodes and handles, then only nodes will be selected (as previously).
  • If your marquee only covers some handles, but no nodes, then those handles will be selected (new behavior).

If this preference is off, then rectangular marquee selection works like the lasso selection: it always selects whatever it covers, i.e. either nodes or handles or both.

Aligning of nodes, handles and contours»

The Transform panel now includes the Align vertical center button as the last one in the top section. You may need to make the panel wider to see it.

Aligning partial contours in the Contour tool now differs from aligning complete contours. Previously, alignment using the Contour tool always aligned selected nodes and points individually. Now:

  • If you select a single complete contour with double-click on the outline or Cmd-click near the outline:

  • Align left in the Transform panel or the { key will align the contour to the left sidebearing

  • Align right (}) will align to the right sidebearing
  • Align center (|) will center within the advance width
  • Align bottom (Alt{) will align to the baseline
  • Align top (Alt}) will to the caps height
  • Align vertical center (Alt|) will center vertically between the baseline and the caps height

  • If you select two or more complete contours and align them using the Transform panel buttons or the keyboard shortcuts listed above, the entire contours will be aligned to each other without changing the shape of the contours.

  • If you select one or more complete contours and one or more partial contours (or just individual nodes or handles), and align, the complete contours will be aligned with all individual nodes and handles of the partially-selected contours.

  • If you select a node and one or two adjacent handles and align, the handle(s) will be aligned to the node vertically or horizontally, whichever distance is smaller. You can also use the Transform panel alignment buttons. Previously, vertical or horizontal aligning of handles to a node was only possible with Shift-double-click on a handle.

Free Transform»

In Tools > Free Transform (CmdT or CtrlT):

  • When the transform rectangle is extremely narrow in either direction, only the circular side handles are accessible, so you can easily scale in a single direction. Previously, the circular side handles and the rectangular corner handles were visible at the same time and overlapped, and it was difficult to select the side handle.

  • The center handle of the transform rectangle that defines the center of the transformation now snaps to corners, nodes, contours, guidelines and anchors when you drag it.

  • To skew the selection around the opposite side of the transform rectangle, hold Cmd and drag one side of the transform rectangle. Now, you can also hold AltCmd and drag the edge to skew around the center handle.

  • To distort the selection around the opposite corner of the transform rectangle, hold Cmd and drag one corners of the transform rectangle. Now, you can also hold AltCmd and drag the corner distort around the center handle.

  • You can now double-click the center handle to reset its position to the middle of the transformation rectangle.

Coordinates and measurements»

  • The font size in Preferences > Glyph Window > Show coordinates for current node and… is now also used for angle, length and quick measurement.

  • “Lengths & Angles” of handles attached to selected nodes are visible even when the View > Show > Coordinates option is turned off. They are persistent when a node is selected. The visibility of Lengths & Angles was also improved.

  • When you move selected nodes with the mouse or arrow keys, the selection size fields on the Property bar show the movement offset (distance from the point you started the movement), like in FontLab Studio 5.

Loop corners with Scissors tool»

When you click a sharp node with the Scissors tool, or choose Contour > Unlink Corners, FontLab cuts open the contour on that node, lengthens the lines to overlap, and creates a compound Fill. ShiftAlt-drag the new nodes to elongate the segments further.

Now, you can also Alt-click a sharp node with the Scissors tool, and it will keep the contour closed and create a “loop corner”: a crossover that is similar to an unlinked corner but where the new nodes are still connected. If the loop corner is outside the filled contour, FontLab will also apply a transparent fill to the loop. Looped corners inside filled contours are useful in OpenType Variations.

Paste Mask»

The new Tools > Paste Mask command pastes the contents of the current layer’s Mask layer into the current layer. This operation was available in FontLab Studio 5 but not in FontLab VI.

Paste Special: element references, linked metrics, tags»

The Paste Special dialog now has a new design and additional option toggles.

When you select some glyph cells in the Font window and choose Edit > Copy, or when you choose Edit > Copy Layer in the Glyph window, and you select one or more glyph cells in the Font window or navigate to another glyph in the Glyph window, you can use Edit > Paste Special to paste only specific aspects of the copied glyph layer to the current layer of the current glyph or of the selected glyphs, replacing the previously existing information.

The Contour and images toggle has a new as references checkbox:

  • when on, the elements (contours and images) pasted into the same layer of the target glyph(s) will be element references, so a bidirectional link will be formed between the source and the target glyph layers
  • when off, the elements pasted into the target glyph(s) will not be linked to the source glyph

The glyph metrics toggles (Left sidebearing, Right sidebearing, advance Width) have a new as links checkbox:

  • when on, metrics links that point to the source glyph will be pasted into the target glyph for the selected metrics, so whenever you change the metrics of the source glyph, the metrics of the glyph(s) where you pasted the links will update to match.
  • when off, the selected glyph metrics will be pasted as numerical values.

The new Tags toggle allows you to copy-paste tags between glyphs.

Stroke and Power Brush»

The Preview panel has a new Stroke setting that allows you to preview your glyphs with a stroke. This is great to quickly simulate ink spread and to visually prototype how your glyphs might look if you added or removed weight.

  • Click the underlined word Stroke to turn on stroke preview.
  • Move the slider to the right (above 0) to add text-color stroke, so your glyphs become visually bolder.
  • Move the slider to the left (below 0) to add background-color stroke, so your glyphs become visually lighter.
  • Click Filter > Inverted preview to swap text and background color and customize the colors with the color selectors.
  • Note: This does not apply the stroke permanently to your glyphs as the Stroke panel would.

To actually apply a stroke, use the Stroke panel. Now, you can select multiple glyphs in the Font window and Cmd-click the panel’s Apply button to apply the stroke to the current layer of all selected glyphs. Glyphs with an applied stroke will be exported into color font formats. Use Element > Expand Stroke to convert the applied stroke to contours and export them into traditional monochrome fonts.

Previously, the thickness of a stroke applied via the Stroke panel were considered part of the “ink” (the printable area of the glyph), so it was taken into account when calculating sidebearings. Now, Preferences > Spacing has a new setting Ignore Stroke thickness when calculating sidebearings. If you turn this option on, FontLab will calculate the sidebearings based on the actual contours, ignoring the stroke thickness.

Note: this does not affect Power Brush or SVG elements that use strokes. FontLab always considers them “ink” and uses them to calculate the sidebearings.

Power Brush is now much faster. The resulting contours are smoother. We’ve also eliminated many problem cases when Power Brush was applied on sharp corners, especially with non-round brushes.

Font window and Glyph panel»

Index filter in Font Window»

When you now choose Index in the Filter dropdown of the Font window property bar, the Sort dropdown is disabled and the glyph cells are always sorted in ascending glyph index (GID) order.

Glyph panel with multiple selected glyphs»

When you select multiple glyph cells in the Font window with Shift or Cmd/Ctrl, the Glyph panel fields now show the word multiple if the width, a sidebearing, the kerning class within the current layer differs between the selected glyphs, or if the OT Glyph Definition Class or the Glyph Note differ. The fields show the actual value if it is identical across the selected glyphs.

You can set the OT Glyph Definition Class or enter a Glyph Note for multiple selected glyphs. You can enter a new value into any of the metric fields (width, LSB, RSB) to assign it to the current layer of all selected glyphs. You can also enter an arbitrary expression. For example, you can select the glyph cells for ÀÁÂÃÄÅ and enter A into the LSB and RSB fields to link the sidebearings of the accented glyphs to the base glyph.

Note: Sort the Font window by LSB, RSB or Width and use the List view to group glyph cells with similar metrics together for easier selection. You can also use Paste Special to paste into selected glyphs a simple metric expression that links to the copied glyph.

Glyph name synonyms in Font window quick preview»

When you hold Space in the Font window, a quick preview popup of the current glyph cell appears with additional information. The top portion of the popup now lists all synonyms available in the standard.nam database for the current glyph name.

Master switching on empty glyph cells»

When the Font window has a prospective filter and an empty glyph cell is active, you can now use the property bar master switcher to switch between font masters.

Components, Generate Glyphs and auto layers»

Generate Glyphs»

  • You can now use simple glyph names (e.g. Eth, Zhe, Aacute, uni0123) and simple legacy-syntax recipes such as a+>acute in the Custom tab of Font > Generate Glyphs even if the Use legacy (FLS5) code checkbox is off. Generate Glyphs will expect that the extended syntax is used if the recipe contains an equal sign (=), otherwise it will expect a glyph name or a simple legacy-syntax recipe.

  • You can add glyph notes to the glyphs you generate in Generate Glyphs. When you use the extended recipe syntax (Use legacy code off), FontLab will insert the text that follows !# at the end of the recipe into the glyph note, for example Agrave = A + gravecomb @ top, #! This is a note.

  • The bottom of the Generate Glyphs dialog now shows a glyphtext-formatted (slash-separated) list of glyph names that will be generated. This allows you to correct mistakes in your recipes and lets you copy that glyphtext for later re-use.

Auto Layers: showing built-in recipes»

If a layer is an auto layer that uses a built-in recipe (based on alias.dat or the Unicode decomposition), then the Auto Layer recipe text field in the Layers & Masters panel is no longer empty, but shows the built-in recipe (on gray background). This way, when you turn on Auto Layer, you immediately see what recipe FontLab uses to build the composite glyph.

To customize the recipe, click the Edit recipe button next to the text field. When the auto layer uses a custom recipe, that button turns into a Reset recipe button, and the background of the text field becomes white. Click the button to remove your custom recipe and to revert to using the built-in recipe.

Auto Layer column in Font window List view»

The List view of the Font window that you can open with the 4th button of the property bar can now display the Auto Layer column. This column shows whether the glyph layer is an auto layer (then the cell background is yellow), whether it uses a built-in recipe (then the recipe text is light gray) or a custom recipe (then the text is black).

To edit a recipe right in the cell, double-click the cell.

To sort the List view by the Auto Layer property, click the Auto Layer column heading. The ascending sort first lists cells that are auto layers without recipes, then alphabetically sorted auto layers with recipes (built-in and custom, intermixed), and finally “manual glyph layers” (non-auto layers). Click the heading again to reverse the sort.

To show the Auto Layer column, click the gear icon, turn off Sync with cell caption, turn on Auto Layer and any other columns you wish to show, and use drag-drop to change their order. Then click OK.

Custom glyph metrics in auto layers»

In FontLab VI 6.1.2, you can now override the auto layer metrics (width, LSB, RSB) generated by the recipe. To do that, enter a metrics expression directly in the appropriate glyph metrics field (width, LSB or RSB): in the Metrics Table, the property bar of the Metrics mode or in the Glyph panel.

Normally, auto layers inherit the advance width and the sidebearings from the base components. For example, if the auto layer recipe in the dcaron glyph is = d + caron.alt @ `right + 100`,, then the glyph will inherit the left sidebearing and the advance width from d. If the caron.alt glyph has the OT Glyph Definition Class “Mark” set in the Glyph panel and Preferences > Open Fonts > Automatically assign nonspacing… is on, then the caron.alt component in dcaron will be set to Nonspacing so the right sidebearing of the dcaron glyph will also be identical to that of d.

This is not always what you may want. Sometimes, you may wish to change the width or the sidebearings of the auto layer glyph. In previous versions, it was already possible to specify different sidebearings right in the extended-syntax recipe, such as = d + commaaboverightcomb @ `right + 100`, ^ d, d + 50 (that would increase the RSB by 50). However, this made the recipe less portable and difficult to use.

Now, you can override the auto layer-generated metrics using metric expressions. In the above example, use the first recipe to generate the glyph, and then in the dcaron RSB field enter d+50. This will set the RSB to be 50 units larger than the RSB of d (ignoring the comma.alt nonspacing mark). To override auto layer-generated metrics in an auto layer with a specific numeric value (e.g. 350), use the expression =350 or 350+0.

To reset the overridden value back to the value generated by the recipe, enter 0 into the appropriate metrics field and press Enter.

Note: If you use _both the ^ operator in the extended-syntax recipe to set custom glyph metrics in the auto layer (as in the 2nd example above) and an expression override, the resulting metrics will be incorrect. Please only use one or the other of the two mechanisms._

Other improvements»

  • If a glyph has an auto layer, Glyph > Decompose turns off the Auto Layer property, and decomposes the glyph. Previously, you had to turn off Auto Layer before decomposing.

  • The Tools > Actions dialog now has a Contour > Decompose action. This way, you can easily decompose composite glyph layers (convert components into simple contours) in all masters of selected or all glyphs.

  • Glyph > Add Component has keyboard shortcuts: CtrlShiftA on macOS and AltIns on Windows.

  • The Add Element Reference and the Replace Element Reference dialogs remember the last-used settings.

  • Extended-syntax recipes can now produce zero-width glyphs if you specify a zero width in the recipe (e.g. acutecomb = acute@center, ^ 0) or if your base component has a zero width.

  • The positioning operator @ in the extended recipe syntax recipes now accepts named Font Info parameters and font metrics (such as ascender) as the first value after the @.

Metrics and classes»

Glyph metrics without and with Measurement line»

The values shown in the editable text fields for the advance width and for the sidebearings in the Glyph panel and in the Metrics mode property bar depend on whether you have View > Measurement Line on or off. But next to those fields, you can now always see two values:

  • The upper gray values show the traditional metrics calculated based on the extrema. These values take slanted sidebearings into account but ignore the Measurement line and Nonspacing elements.
  • The lower violet values show the metrics calculated where the design intersects with the Measurement line, even when the Measurement line is not visible. They ignore Nonspacing elements.

Also, the Auto spacing button has a new icon and the text fields for the width and the sidebearings in the Glyph panel are now slightly wider.

Metrics panel»

You can now easily show and hide the preview area of the Metrics panel with the Show metrics preview button at the bottom. Previously, you could hide and show the preview area only by dragging the top of the area.

Classes panel»

We have extended the List view of the Classes panel:

  • It shows a glyph thumbnail along the glyph names
  • If only one class is selected in the panel’s sidebar, it shows additional columns that you can sort by clicking on the headings (Unicode, LSB, Width, RSB, OT Def).
  • For alternate glyphs such as E.sc, the Unicode of the base glyph is shown in gray if it is known.

When you select some glyph cells in the Font window, or when you select a source class in the Classes panel sidebar and select some glyphs in its Table or List view, you can copy (CmdC/CtrlC) or drag-drop. Then:

  • To add glyphs to an existing class, select a destination class and drop or paste (CmdV/CtrlV) into the Table, List or Text view of the class.

  • To add glyphs to a new class, drop or paste into the Classes panel sidebar. Them select the type of class you wish to create (Kerning 1st, Kerning 2nd, OpenType, Glyph tag), and a new class will be created that contains the pasted or dropped glyphs.

To remove glyphs from an existing class, you can now select them in the panel’s Table or List view, and tap Backspace.

Also, FontLab now preserves the order of classes when you open a VFB file.

Font Info and Variation»

Automatic master location on the width and weight axes»

In fonts with multiple masters, FontLab VI uses the Font Info > Names > Weight and Font Info > Names > Width style attribute values to automatically build the weight (wght) and width (wdth) axes, and to infer the location of the master on those axes — even if these axes are not defined in Font Info > Axes. FontLab also makes glyph layers work as font masters if the glyph layers use names such as Regular, Bold or similar (using one of the registered weight or width keywords) — even if these font masters are not defined in Font Info.

This behavior was always on. Now, there is a new checkbox in Preferences > Variations: Guess [width | weight | width and weight] axis location from master style attribute or layer name. When the checkbox is on and one of the entries (weight, width, width and weight) is chosen in the dropdown, FontLab will behave the same as it did in previous versions.

To disable this “guessing”, turn the checkbox off. If the Output panel reports errors like KeyError: : 'wght' when you export an OpenType Variations font, turn the checkbox off. Then, masters and layers will be variable along the weight and/or width axes only if the axes are defined in Font Info > Axes and if the corresponding masters are defined and set to variable using the blue AAA toggle in Font Info > Masters.

Font Info: Adding font masters improved»

To add a master to a font, you click the Plus button in Font Info and pick one of the entries from the dropdown that appears. We have redesigned the dropdown to make these choices clearer.

Choose Duplicate master, copy glyph layers to duplicate the current font master entry, the current masters’s glyph layers for all glyphs, kerning classes and the kerning pairs list and values.

Use this if you’ve finalized the design of the current master and you want to derive a new master from the current one for all glyphs (for example making a condensed or bold variant). The new master will have the same axis coordinates as the source master, you should change it on the Masters. Rename the master on the Names page.

Choose Duplicate master, blank glyph layers to duplicate the current font master entry and kerning classes, and create glyph layers for all glyph with the same advance widths as the current master’s, but without any contents (elements, contours or images). This does not create any kerning pairs.

Use this if you have not finalized the design of the current master and plan to draw contours in several masters concurrently or copy-paste between layers.

Choose Duplicate master, no glyph layers to duplicate the current font master entry and kerning classes but without creating any glyph layers or kerning pairs. Change the name of the new master on the Names page. Then select one or more glyph cells in a Font window, click the + button on the Layers & Masters panel and enter the same name as the new master. The new layer will appear in the panel only in glyphs where you created it.

To only make a few glyphs variable, for example along the Ascender axis, you can add a “long ascenders” font master without glyph layers and then add glyph layers only to the glyphs that actually change.

Choose Empty master to create an empty font master with no glyph layers, no kerning classes and no kerning pairs.

The Copy from entries list all currently open fonts and (in submenus) their masters. Choose one to copy glyph layer contents, kerning classes and kerning pairs from another font and master into a new master in the current font.

When you copy a master from another font and the Add missing glyphs when copying from font checkbox in the dropdown is off, FontLab will only copy glyph layers and kerning for glyphs that exist in both fonts.

To add all glyphs that are present in the other font but not in the current font, and to copy all glyph layer contents and kerning from the other font and master into the new master, click +, turn the option on, click + again and choose Copy from a font and master. Note: This will create additional glyphs in the current font, but will not create additional glyph layers in the masters of the current font for glyphs that are not present in the source font.

Font Info: Parameters»

Parameters are named variables that you can define in Font Info > Parameters and use in expressions.

  • You can now use fractional values in Font Info > Parameters.

  • The range of the Font Info > Parameters slider has been reduced, and now goes from –UPM/2 to UPM, to allow finer movement of the slider.

  • The parameters section of the Font Info panel (not the Font Info dialog) now has three buttons to control what is shown: font metrics, font guides and parameters. (Note: of the three, only parameters are editable directly in the panel.)

Font Info: Guide expressions»

When you start typing in any of the fields in the Font Info > Guides dialog section, an autocomplete dropdown will now appear if your input matches a parameter or guide name.

Hinting»

  • Tools > Add Vertical/Horizontal Hint now adds hints even to very thin features (less than 10 units).

  • Autohinting no longer affects composite glyphs if they consist solely of components.

User interface enhancements»

  • The main Toolbar has smaller margins now, so more tools fit on smaller laptop screens

  • The Show spacing controls and Show kerning buttons in the Glyph window property bar have new, clearer icons.

  • When you turn on Show properties in the Element and Layers & Masters panels, the properties area now has a contract/expand button that hides some less-essential properties. When properties are contracted, the panel’s status bar shows a zigzag line.

  • FontLab Studio 5 for Windows saves glyph notes in VFB files using pre-Unicode encodings. When you open such a VFB, FontLab VI will show a dialog asking you to identify that encoding, and will correctly convert the glyph notes to Unicode. Glyph notes in VFB files saved in FontLab Studio 5 for Mac are saved in Unicode, so the dialog will not appear.

  • When you type in a glyph name in the Glyph panel, the Font window List view or the Font window cell captions, FontLab will validate the glyph name after you’ve finished typing and not while you are typing.

Bug fixes»

Undo»

  • When you Undo a node movement, and the node has a link, the apparent position of the link is correctly updated on screen.

  • Undo now works on more things. The following are now correctly handled by Undo:

  • Moving a link.
  • Changing color of a guide, hint or alignment zone.
  • Changing the recipe field for an auto layer, or activating/deactivating the auto layer in the Elements panel

Editing contours»

  • When Round when Editing is on and the element is scaled vertically or horizontally, moving a selected node with arrow keys works correctly now.

  • Moving a segment with Cmd-arrows. When the option to click in an outline to select a segment is off (Preferences > Editing), using Cmd with an arrow key still moves the segment by 100, as you would expect.

  • FontLab VI no longer hangs or fails to convert the curves, when the user converts some particular configurations of TrueType curves to to PostScript, using the Alt+click procedure.

  • Free Transform scale with AltShift keeps proportions correct (even when center handle has been moved).

  • Calling Contour > Remove Smart Corners when there are no smart corners in the current glyph no longer causes a crash.

  • Contour > Expand Contour command correctly uses its settings and options when called from a Font window (instead of only when used from a Glyph window).

  • Fixed a problem moving a selected node using the arrow keys, when Contour > Coordinates > Round when Editing is on.

  • When doing direct segment editing, pressing and releasing Alt (i.e. switching between fixed and free handle direction) no longer turns smooth nodes into sharp nodes. Releasing Alt no longer changes the handle’s direction before fixing it.

  • When Preview Rounding and the crosshair are both on, and you move a point, the crosshair snaps to integer coordinates along with the point.

  • When you create a handle by dragging it from a node with Alt, and then Undo, it does not change links.

  • ShiftCtrlAlt-click on a TrueType segment consisting of two or more consecutive TT off-curve points now correctly inserts the implied TT node instead of producing odd results

  • Dragging guides in the Glyph window is much faster now.

  • Font metrics no longer visually jump in the Glyph window when you perform a marquee selection.

Classes, metrics and kerning»

  • Color flags for glyph classes (which can be set in the Classes panel) respect Preferences > Font Window > Color flag brightness.

  • In the Classes panel List view, Unicodes are now shown in either uppercase or lowercase, depending on the Preferences > Font window setting.

  • Applying a flag (color) to a class in the Classes panel no longer gives an unnecessary warning about removing the kern feature.

  • Adding a tag in the Classes panel could prevent the class/tag from updating its content. This is now fixed.

  • Extend Class Kerning works not only for glyph to glyph pairs but also for class to glyph pairs.

  • Under some circumstances, FontLab flattened bound sidebearings and/or linked metrics information when opening a VFC, converting the information to simple numeric values and losing the link. This has been fixed.

  • When edit a glyph that has bound sidebearings, the Preview panel correctly updates glyph metrics.

  • Clicking in the non-editable metrics readout fields in the Metrics mode property bar no longer inserts a text cursor that cannot be removed.

Font and Glyph windows»

  • When the 2nd or 3rd Preferences > General > Windows and tabs setting is active, closing the Sketchboard no longer disables menu items such as File > Font Info or Edit > Find Glyphs.

  • When you open FontLab or any window, the windows or panels no longer flash (blink) briefly. .

  • When you double-click on a cell in the Font Map to open it in a Glyph window, FontLab moves the app focus to the Glyph window. (So for example, if you then select all, it affects the Glyph window instead of the Font Map.)

  • Switching between fonts in the Font Info dialog is faster.

  • Switching fonts in the Fonts panel, and cells in the Font Map panel, updates the contents of the Glyph window correctly.

  • Switching between the basic and alternative view with Cmd/ updates the Glyph window correctly.

  • Power Brush contours are now smooth when Contour > Coordinates > Round when Editing is on.

  • Switching to the mask no longer moves the Glyph window content if View > Center Glyph or Pair is on.

  • We’ve made cosmetic UI improvements to the dropdown next to the Filter dropdown in the Font window property bar.

Elements, components, Generate Glyphs, auto layers»

  • When changing the font UPM and scaling glyphs was on, components in composite glyphs no longer are scaled twice.

  • Edit > Select All (CmdA) now works correctly with groups of elements.

  • Edit > Paste Components now works as expected in the Font window.

  • Unlinking an element reference no longer changes the angle of element guides.

  • When you add a component or element reference, it becomes the current and selected element.

  • You can no longer paste contours into a locked element reference.

  • Element > Element Reference > Add Element Reference now consistently adds references for named elements to all layers.

  • Moving a component position in one glyph (which has no effect on any other composite glyphs) no longer marks all glyphs sharing the same component as changed.

  • In a glyph with a group of elements and also a separate one, selecting the group no longer also shows the separate element as selected.

  • In the Elements panel, buttons for flipping elements and components now work as expected, adding to the corresponding edit box.

  • A composite glyph built from a recipe using auto layers, now only gets anchors from its base glyph (not from diacritics). If the composite has a diacritic above or below the base glyph, the anchor position is adjusted to allow stacked diacritics.

  • Anchors in auto-layer diacritic glyphs: With auto layers, it is possible to replicate a glyph by using its name in the recipe field, like Alpha=A to produce a Greek Alpha identical to the Latin A. When you use this to duplicate a stand-alone diacritic (accent), FontLab no longer omits the the _name anchors (e.g. _top or _bottom) in̤ the replicated glyph.

  • When you turn on Auto Layer in a Glyph window, odd rotated hints or guides no longer appear on screen.

  • Fixed a problem with automatic building of the glyphs LJ and NJ. Their built-in recipes are now fixed in alias.dat.

  • Toggling the Generate Glyphs > Use legacy (FLS5) code checkbox now correctly updates the preview.

  • Sidebearings specified in extended-syntax glyph generation recipes such as dcaron = d + caron.alt @ `right + 100`, ^ d, d now correctly ignore Nonspacing components

Opening, saving and exporting»

  • FontLab no longer occasionally loses glyph contours in a saved file if the glyph also contained elements without any content.

  • If FontLab cannot complete saving a file because the save folder is not writeable, an error message will now appear.

  • When you turn on additional save formats (VFJ, UFO, VFB) using Preferences > Save Fonts > Save VFC and also and you perform File > Save As:

  • FontLab now always “also saves” the files in the same folder as the VFC file.

  • The Font window tab heading and window heading now points to the VFC file rather than to the last “also saved” file.
  • “Also saved” files no longer appear in File > Recent Fonts.

  • FontLab no longer crashes when opening certain fonts such as Apple Chancery.

  • The preview of fonts in the File > Open > Installed Fonts dialog no longer shows odd spacing, esp. for condensed and wide fonts.

  • When you export an OpenType PS+SVG or OpenType TT+SVG font, FontLab will correctly export the monochrome bw layer and will create the layer on the fly if it is not present.

  • When you export UFO files, FontLab no longer includes its own auto-generated node names.

  • After File > Revert, Save As no longer presents two save dialogs.

  • FontLab now correctly exports rotated components into OpenType TT (.otf).

  • Some glyphs without contours no longer get unexpected zero width when exported to UFO 2.

  • In VFJ, the name attribute of a master is now stored inside the fontMaster element.

  • The keyboard shortcuts ShiftCmdO (Open > Font Folder…) and
    AltShiftCmdO (Open > Installed Fonts…) were no longer available in 6.1.1; they have been restored.

Layers and variation»

  • When generating/exporting individual instances from a font that has multiple masters:

  • names for ssXX (stylistic sets) and cvXX (character variants) features that you define in the Features panel are now exported correctly.

  • if strikeout and/or underline thickness/position values are different in different masters, they are interpolated in the instances.
  • All zones and stems are included.

  • OpenType variable font export no longer fails when some masters are outside the design space (axis range) and are not included for interpolation.

  • When exporting .designspace files, FontLab now correctly uses periods (never commas) for decimal notation, regardless of your computer’s region or locale settings.

  • Exporting some OpenType Variation fonts no longer fails if they contain an axis with the code st.

  • Exporting some OpenType Variation fonts no longer fails with IndexError: list index out of range

  • Adding new layer/master by duplicating the current one no longer reverses hints or breaks links in the glyphs on the new layer.

Stickers»

  • After editing a sticker, clicking outside its edit box closes it as expected.

  • Closing or opening the Glyph window after sticker edit box was not closed no longer crashes.

  • If handles of a sticker are visible in the Glyph window, they move together with the rest of the window contents when you scroll.

Miscellaneous»

  • In the Preview panel, handling of right-to-left text rendering triggered by turning on the Features button produces better results than previously. The mark and mkmk features are on by default.

  • FontLab generates mark and mkmk features even when layers are hidden.

  • One-to-many glyph substitutions are rendered correctly now, including in the Glyph window and the Preview panel.

  • When a diacritic is added to an uppercase base glyph, anchors are not in use, and the diacritic has a glyph name with an extension such as .cap or .uc, the automatic diacritic positioning is improved (no longer far above a reasonable position).

  • You can now delete selected anchors in the Anchors & Pins panel with the Delete key (in addition to the button).

  • Choosing Edit > Append Glyphs with glyphs copied from the same font no longer crashes.

  • Select All now only selects contents from other layers when Edit Across Layers is on.

  • The Font window MS Windows 1252 Western encoding filter no longer shows one glyph (such as exclaim or dollar) moved to the end of the encoding.

  • In the Glyph panel, the numeric field for glyph color flag values accepts numbers from 1 to 360 (instead of only up to 255), and works correctly now.

  • Glyph color flags are better preserved when importing/exporting to and from VFB. (Previously there were some color shifts related to the different value system involved.)

  • FontLab sometimes crashed when you moved panels around in compact (bar) mode. This is fixed.

  • You can now edit a Tunni line even if it appears on top of another Tunni line.

  • The scrollbars for top and bottom parts of the Generate Glyphs dialog have the same size and position now.

  • Ghost hints set in masters are shown correctly on the #instance layer.

  • In Python macro scripting, FontLab no longer crashes if you use the old fl.glyph method to access a multilayer glyph that has different numbers of nodes on different layers.

Windows-specific bug fixes»

  • The Font Info dialog box no longer gets hidden behind Font windows.

  • Pressing the Windows button to open the Start menu while using the Free Transform operation no longer crash FontLab.

  • Signing fonts with a digital signature (DSIG) works again on Windows.

  • Profile names in the Profiles dialog box now have normal spacing.

  • Ctrl-click now acts like Cmd-click on macOS, instead of opening context menus like a right-click.

  • Clicking on the glyph canvas, outside the Similar Glyphs pane, closes the pane as expected (Windows-only bug)

  • Clicking outside the modal Texts pane closes the pane as expected (Windows-only bug)

  • The Font > Add Glyphs dialog displays glyphs with diacritics now. Previously they were mostly clipped.


FontLab VI version 6.1.1.6879»

2 November 2018

Version 6.1.1.6879 fixes a few issues on top of 6.1.1.6878:

  • All composite glyphs (including those where the source glyphs contain images) now appear in the Font window glyph cells, in the Layers & Masters panel and in the Elements panel. The Element Frame is shown around all components if View > Element Frame is turned on.
  • The checkbox Preferences > Glyph Window > Highlight nodes on alignment zones works correctly now. Previously, the highlight (pale gray rectangle superimposed over a node) appeared regardless of this setting.
  • Scaled image elements retain their scaling in OpenType+CBDT fonts

FontLab VI 6.1.1 adds a few enhancements and some bug fixes on top of our recent 6.1 release. Please check the web version of the Release Notes for details.

In FontLab 6.1, we restarted the free 30-day trial period. If you’ve tried FontLab VI before, and your trial expired, you can download FontLab VI 6.1 and enjoy it again for a month!

Backwards compatibility note: If you save a VFC file in FontLab 6.1.x, you might not be able to open it in 6.0.x (definitely not if it uses Components). You definitely cannot open a VFJ file saved from 6.1.x in 6.0.x. Version 6.1.1 is a highly recommended update, but if you want to keep an older version installed as well, you can always rename the older app before you install 6.1.1.


FontLab VI version 6.1.1.6878»

1 November 2018

New Features / Enhancements»

Alternative view in Glyph window»

You can now quickly switch between a “detailed” (basic) and a “minimalist” (alternative) view of your glyphs inside the Glyph window using the View > Alternative View menu toggle, the Cmd/ (macOS) or Ctrl/ (Windows) keyboard shortcut, or the “A/B” icon in the View panel.

When you open a Glyph window, some aspects or properties of your glyph are shown (visualized), and some are not shown, for example Nodes, Handles, Guides, Ruler etc.

You can turn these so-called View details on and off using the View menu (including the View > Show submenu), the Window > Panels > View panel, or (for some key details) directly in the Toolbar.

Press Cmd/ (macOS) or Ctrl/ (Windows) to turn on the alternative view. Your Glyph window becomes much more “minimalist”—most View details are hidden, so you have a very clean view. Here, you can also change (customize) the View details.

Press Cmd/ / Ctrl/ again to turn off the alternative view. You’re now back to the basic view so you see your Glyph window as it was before you turned alternative view on. Press the shortcut again, you’re in the alternative view again.

Instead of laboriously turning some particular details on or off, you can use Cmd/ / Ctrl/ to quickly switch between the basic view that has some more details (that you can customize), and the alternative view that is more minimalistic (that you can also customize).

The following sections describe how this works in a bit more detail.

Current and default View details»

When you change the View details in any Glyph window, FontLab remembers the them as current View details for the current Glyph window, and as the default View details for any new Glyph window that you create from within a Font window. When you change the current View details, FontLab will not change the View details of other Glyph windows that are already open. When you open a Glyph window from within an existing Glyph window, the new window will have the same View details as the current View details. Each window’s View details are also saved in the VFC or VFJ.

View details in Metrics, Kerning and Text mode»

The Metrics mode (when you activate the Metrics tool), the Kerning mode (when you activate the Kerning tool) and the Text mode (when you activate the Text tool) have View details that are separate from the common View details used in other modes. So when you change the View details in a Metrics window (a Glyph window that is in the Metrics mode), you change the default View details for the Metrics mode only, not the common View details.

Basic and Alternative view»

The common View details, and the View details for the Metrics, Kerning and Text modes, now have two sets of details: basic and alternative. Normally, each window opens in basic view, that is, it uses using a basic set of View details, which you can change in the way described above.

But when you turn on View > Alternative View, or press Cmd/ (macOS) or Ctrl/ (Windows), the window changes to the alternative view, that is, it then uses an alternative set of View details.

The starting point for the basic view is to show more information, while the starting point for the alternative view is more minimalist. But you can customize each as you prefer.

When you switch tools in a Glyph window, FontLab remembers whether you were in the basic or alternative view per mode and stores both the basic set of View details and the alternative set of View details separately for the common mode, the Metrics mode, the Kerning mode and the Text mode.

For example, when you’re in the Contour tool (common mode), you activate the Metrics tool (Metrics mode) and press Cmd/ to turn on Alternative View, the Metrics mode now shows the alternative set of View details. You can change these details (and those will be remembered as the default alternative View details for the Metrics mode). When you then activate the Contour tool, you’re back to the basic view of the common mode.

So effectively, FontLab VI now has eight “default sets” of View details: basic common, alternative common, basic Metrics, alternative Metrics, basic Kerning, alternative Kerning, basic Text and alternative Text. Whenever you’re one of these in a Glyph window and you change the View details, you’re influencing the current details and the default details. But remember: the default details will be used if you open a new Glyph window from a Font window. When you open a Glyph window from an existing window, the current details will be used. One of the eight “default sets” only changes when you actually change some details.

View details when you upgrade FontLab or open a VFC/VFJ»

If you’ve upgraded FontLab VI to 6.1.1 from a previous version, or if you open a previously-saved VFC or VFJ, your basic view won’t change, but the alternative view will be more minimalistic. If you install FontLab VI from scratch or if you reset FontLab’s preferences, the basic view will have some additional details turned on (because we now have the alternative view). But you can always turn the details on or off in each view and mode.

Glyph placeholders»

FontLab renders light placeholder glyphs in the background in the Glyph window for your reference. These are character placeholders or missing glyph placeholders.

Character placeholders»

Character placeholders are rendered in light gray, and are shown when a glyph exists but is blank, lacking any content.

Character placeholders are now on by default, but they will now hide automatically if you draw anything in the glyph. You can completely hide them via View > Character Placeholders, or you can show them even if the glyph has some content by turning off the new Preferences > Editing > Hide character placeholders if layer is not empty setting.

Missing glyph placeholders»

Missing glyph placeholders are rendered in pale blue, and are used if the text of a Glyph window contains some characters or glyph names but the corresponding glyphs do not exist in the font.

New: If you select some empty glyph cells in the Font window (produced by a prospective filter) and then choose Window > New Glyph Tab or New Metrics Tab or New Kerning Tab, or if you click the Contour or Text tool in the Toolbar, a new Glyph window will open, and the window’s text will contain the characters or glyph names for the missing glyphs.

The missing glyph placeholders will be shown. When you navigate through your Text via Text > Next in Text or Previous in Text, FontLab will skip the missing glyphs but if you double-click on any of the missing glyph placeholders, FontLab will create the glyphs. Previously, creating glyphs was only possible in the Font window.

If you turn off Preferences > Editing > Show missing glyph placeholders, you won’t see the missing glyphs placeholders in the Glyph window, and you won’t be able to create them there.

User interface»

Window and tab switching»

Previously, the keyboard shortcut Cmd` was Next Tab or Window and ShiftCmd` was Previous Tab or Window. If you’ve worked with multiple windows and multiple tabs within them, the switching was not very intuitive.

Now, the keyboard shortcuts for switching windows are: Cmd` (Next Window) and ShiftCmd` (Previous Window). This is consistent with other apps. The keyboard shortcuts for switching tabs are:

  • on macOS: AltTab (Next Tab) and ShiftAltTab (Previous Tab). Unfortunately, this is inconsistent with how other apps works, for certain technical reasons. We are working towards improving this.
  • on Windows: CtrlTab (Next Tab) and ShiftCtrlTab (Previous Tab)

Non-English keyboard shortcuts»

Preferences > General now has new Non-English keyboard shortcuts setting. If you turn it on, FontLab will interpret single-key keystrokes (like those for activating tools) as if your active keyboard layout was English even if it actually is something else.

So with this option on, if you use a Russian, Arabic or German keyboard layout, the key to the right of the P key will be interpreted as ++LeftBracket++ (the shortcut for Text > Previous in Text), and the top-left letter key will always be interpreted as Q (Scissors tool).

Glyph window zoom»

When you choose View > Zoom > Zoom… or click on the 3rd button in the bottom-right corner of the Glyph window, you get the Free Zoom tool where you can zoom in via click or click-and-drag, and zoom out via Alt-click.

Font window»

  • The Font window got two more increments for a predefined number of columns: 10 and 12.

  • In the Font window Property bar, if you Shift-click on the tiny + and - color flag buttons, the flag’s color value increases or decreases by 10. Simple click still changes the color value by 1. Also, it is now possible to use these buttons on unflagged glyphs (the transparent flag has the numerical value of 0).

  • The “quick look” preview of a glyph that appears when you press Space in the Font window now lists synonym glyph names.

  • The Scripts > Cyrillic section of the Font window sidebar was simplified: it now includes a Basic Cyrillic subsection that includes characters for Belorussian, Bulgarian, Macedonian, Russian, Serbian and Ukrainian (without localized glyph variants), while the Extended Cyrillic and Historic Cyrillic contain the other Unicode characters for the Cyrillic script.

Other improvements»

Text frames on Sketchboard»

The text frames that you can create on the Sketchboard using the Text tool now include a Features button (“fi” icon). Click the button and turn on the Features checkbox to activate Unicode and OpenType processing of the text. This will activate bidirectional or right-to-left support and will let you turn some features on and off. Previously, bidirectional text did not work in Sketchboard text frames. Note: Use the Fonts panel to switch the font in a Sketchboard text frame.

Paste Special»

The Edit > Paste Special dialog now has a checkbox that lets you paste color flags to all layers/masters of the font (instead of just the current layer).

Opening VFC/VFJ files»

When opening a VFC or VFJ file, FontLab will detect and correct some structural problems.

If the font has multiple glyphs that have the same name, a dialog appears to alert you. When you click OK, FontLab will rename the conflicting glyphs by assigning a unique numeric suffix to all but one, and will print a report in the Output panel.

If the font has multiple separate elements that have the same name, a dialog appears that offers you to Rename the conflicting elements by assigning a unique numeric suffix to all but one, Keep As Is or Clean Up (convert the elements into references if they are identical or rename if they’re not).

If the font contains any element that is referenced across multiple layers, a dialog appears to alert you. When you click OK, FontLab will unlink the problematic references. Currently, referencing elements across layers leads to technical problems — we plan to re-introduce this ability when we’ve ironed these out.

New defaults»

In addition to the new default View settings in the Glyph window, we’ve changed some additional defaults. If you’ve upgraded FontLab, the app will keep your current preferences.

  • FontLab VI on macOS will now by default start with Preferences > General > Windows and tabs configuration set to Fonts open in windows, glyphs open in tabs.

  • The View > Zoom > Actual Text Size zoom level (Cmd1) which is used if you open a new Metrics tab is now by default 128 rather than 288. This is more appropriate for most spacing workflows.

  • Contour > Coordinates > Round when Editing is now on by default, so when you create new fonts or open fonts, FontLab will work in all-integer mode.

  • When you create a new font via File > New Font, the Font window will show the Latin Simple encoding as the prospective filter, so you will see 232 glyph cells suitable for a simple Western Latin-script font. You can switch to any other encoding or other prospective filter using the Filter dropdown or the Font window sidebar.

  • When you open an existing TTF, OTF or UFO font, FontLab will not apply any prospective filter, so the Font window will show all glyphs in your font ordered automatically. To change the default prospective filter and glyph ordering for opened TTF, OTF or UFO fonts, change the defaults in Preferences > Font window.

Kerning mode»

In the Kerning mode, numerical kerning values are shown the effective size of 72 points above. Setting the Actual Text Size below 72 or zooming out below that effective size hides numerical kerning values in the Glyph window canvas.

Bug fixes»

  • When exporting variable font instances (other than masters) to OpenType TT and OpenType PS, FontLab no longer loses name table data (including designer URL, trademark and font version).

  • FontLab interpolates and exports PostScript hints correctly, when generating standalone instances from a variable font.

  • No crash when exporting font using kerning classes, to VFB.

  • When exporting to UFO format, FontLab doesn’t rename kerning groups as long as they meet the naming rules required for UFO.

  • When scaling components using the Free Transform operation, FontLab shows contours filled correctly without a shift in the fill.

  • After MM vfb file import, Fontlab no longer shows glyphs from the wrong master when typing in Text mode.

  • Keyboard shortcuts for Text > Next Phrase and Previous Phrase commands are now working properly in the Metrics and Kerning modes.

  • In Kerning mode, the Glyph window Property bar correctly updates the current pair when you add a kerning class. Previously the new class was not available immediately.

  • In the Kerning mode, toggling the Ruler off and then on again (CmdR) correctly shows the “spacing” ruler instead of the “drawing” ruler.

  • Changing metrics in the Glyph panel, for a glyph selected in the Font window, can now be undone.

  • Under some circumstances, you could move nodes within a component without going into component editing. This has been fixed.

  • FontLab does not crash when you create a circular component reference (for example, A uses B, but B also uses A). Instead, a corresponding warning appears in the Output panel.

  • The reset x button now works properly in the Search field of the Features panel.

  • Adjusting glyph metrics using Actions > Adjust metrics by percentage works properly now.

  • An issue in Actions > Match Metrics is fixed, so you can copy the advance width from one master to other masters.

  • Node names were sometimes shown regardless of the preferences and view settings. This is fixed now.

  • Under some circumstances, new fonts (or newly opened fonts from formats other than VFC) would not pick up the correct settings for showing sidebearings, metrics, etc. This has been fixed. (See also: Alternative View to quickly toggle between two groups of view settings.)

  • The state of the View > Glyphs Bar menu toggle is now in sync with the Glyphs bar visibility in different Glyph window modes.

  • When exporting to UFO3, FontLab no longer builds unneeded decomposed background layers for composite glyphs.

  • The metrics values in the Metrics Table visually refresh as expected.


FontLab VI version 6.1.0.6871»

25 October 2018

Introduction»

FontLab VI 6.1.0 brings major new features:

and a wealth of other large and small enhancements, as well as bug fixes.

We’ve also reset the free 30-day trial period. If you’ve tried FontLab VI before and your trial has expired, you can download FontLab VI 6.1 and enjoy it again for a month!

Additional Reading»

New Features / Enhancements»

Glyph Drawing»

Length or angle of handles and line segments»

The Glyph window now shows not only the coordinates of a node or a handle but also the length of handles and line segments if they are perfectly horizontal or vertical, or, otherwise, their angle.

  • To see coordinates for only the node that you hover over with your pointer, turn on Preferences > Glyph Window > Show coordinates and turn off View > Show > Coordinates. To also see lengths or angles of adjacent handles and line segments, also turn on Preferences > Glyph Window > Show lengths and angles.
  • To see coordinates and lengths or angles also for all or selected nodes, turn on View > Show > Coordinates, and in Preferences > Glyph Window > Show coordinates, choose all or selected.
  • To hide lengths and angles but still see coordinates, turn off Preferences > Glyph Window > Show lengths and angles.
  • To completely hide coordinates, lengths and angles, turn off Preferences > Glyph Window > Show coordinates.

Free Transform corner scaling»

When you use Free Transform (CmdT) to scale a selection (contours, image, element) by the corner, the scaling is now non-proportional (independent in X and Y). Hold Shift to constrain to proportional scaling.

Previously, scaling was proportional without Shift and non-proportional with Shift. If you prefer that old behavior, turn on Preferences > Editing > Free Transform scaling: non-proportional with Shift, otherwise proportional.

Zoom sub-menu in View menu»

The View menu now has a Zoom sub-menu that lists all the zoom-related entries that were previously listed directly in the View menu.

Scoreboard»

The Scoreboard now displays and updates coordinates of anchors, pins, guidelines, hints, zones, and the measurement line, when you move them with arrow keys.

Components and Elements»

Components»

FontLab VI 6.1 (re-)introduces Components as a standards-compliant way to build glyphs from other glyphs.

Components in FontLab VI 6.1 work very much like components in FontLab Studio 5, UFO or in TrueType-flavored OpenType fonts. Components in FontLab VI 6.1 point to a source glyph and have a transformation (usually shift, optionally also scale, rotation or slant). That’s it. If you’ve used Components any other font editor, you’ll find yourself at home easily.

To start using Components:

  • Open a TTF, VFB or UFO if Preferences > Open Fonts > Use Components is on.
  • Open a VFC or VFJ, select all glyphs in the Font window, and choose Element > Element Reference > References to Components. Repeat this for each master.

In previous versions of FontLab VI, you could use Element References to work with repeatable shapes across a font. Element References work great when you want to re-use a design pieces such as a stem, a serif or other glyph fragments (contours or images) across multiple glyphs in the same layer, and maintain a link between all the places where you’ve placed it. All Element References are equal. There is no source glyph to which they point to — they all link to each other. Element References have no knowledge about glyph metrics or anchors. In a way, they’re very similar to subroutines used in PostScript-flavored (CFF) OpenType fonts.

Previous versions of FontLab VI simulated components using Element References, by locking some references and dynamically finding the best candidate glyph for a component source. But this was never a fully satisfying experience, so we’ve decided to add support for real Components.

Element References are great if you link between pieces of glyphs, or even between pieces within the same glyph. Components are great if you build composite glyphs from other glyphs. So FontLab VI 6.1 has both mechanisms, each to fit its purpose.

You can build composite glyphs from Components in one or all masters — via Generate Glyphs, Add Component, Copy-Paste or Auto Layers. You can mix Components and simple contours in one layer. You can use nested Components that point to glyphs that are made of Components (for example, you can build a dieresiscomb glyph from two dotaccentcomb Components, and then build Adieresis from the Components A and dieresiscomb).

FontLab VI will keep your Component structure when it exports your font to a format that supports components (TTF, VFB, UFO), and will decompose Components as needed when a format does not support components at all, or does not support some aspects such as rotated Components or Components mixed with contours.

Start using Components»

You can decide to use Components or keep using Element References in FontLab VI. For that, in Preferences > Open Fonts > Composite glyphs, choose:

  • Use components and FontLab VI will prefer to use Components.
  • Convert components to element references and FontLab VI will prefer to use Element References.

Opening FontLab VI files (VFC, VFJ)»

When you open a font in the .vfc or .vfj format, FontLab will keep your Element References as Element References, and will keep your Components as Components. If you wish, you can convert Element References to Components at any time (see below).

The exception is Auto Layers, since FontLab builds them dynamically: if Use components is on, FontLab will use Components, and if Convert components to element references is on, FontLab will use Element References to dynamically build your Auto Layers.

Opening font formats that support components»

When you open a font in a format that supports components (.ttf, .vfb, .ufo, .fog, .glyphs, and their derivatives such as .woff):

  • if Use components is on, FontLab will import the Components exactly as they are in the font
  • if Convert components to element references is on, FontLab will convert the components to Element References

Opening font formats that don’t support components»

If you turn on Preferences > Open Fonts > Detect composites and open a font in a format that does not support components (e.g. .otf or Type 1), FontLab will build Element References between repeating contours across the font. If Use components is on, FontLab will then convert Element References to Components (see below).

Converting Element References to Components»

To convert existing Element References to Components, select all (or some) glyphs in the Font window, and choose Element > Element Reference > References to Components. Repeat this for each master.

  • If the font has a glyph where a referenced Element is used by itself, FontLab will use it as the source glyph for the Components, and will convert all other Element References into Components.
  • If the font has is more than one glyph where a referenced Element is used by itself, FontLab will use the glyph as source where the referenced Element is unlocked and is “least transformed”, i.e. it is placed closest to the origin point (0, 0) and has no other transformations applied.
  • If the font does not have a glyph that can be used as the source glyph for the Components, FontLab will keep Element References as they were.

If you’ve created some “helper glyphs” that hold your design parts like serifs or stems, then Element References to those glyphs will be converted to Components.

If you use Element > Element Reference > References to Components in the Glyph window, FontLab will attempt to convert all Element References in the current layer into Components using the just-described mechanism.

Automatically adding components»

If Use components is on, FontLab will use Components:

  • when you use Font > Generate Glyphs
  • when you turn on Glyph > Auto Layer for a glyph layer or turn on the Auto layer button in the Layers & Masters panel
  • when you have Preferences > Operations > New glyphs > fill created glyphs with content when available turned on and you double-click on an empty glyph cell in the Font window
  • when you perform Font > Detect Composites (will use them if it can)

If Convert components to element references is on, FontLab will use Element References instead (and the menu item will be Font > Detect Element References).

Tip: To quickly replace your manually-constructed composite glyph master with an automatically generated glyph master that will use the “correct” components (if it’s in FontLab’s alias.dat database), turn on Glyph > Auto Layer. If you want to correct the placement of the components, turn Glyph > Auto Layer off.

Glyph > Add Component…»

Choose Glyph > Add Component… in the Glyph window (or right-click and choose it from the context menu) to add a component to the current master or all masters of your current glyph. Or use it in the Font window to add the same component to multiple glyphs at once.

In the Add Component dialog, start typing the glyph name of the component you want to add, and you’ll see a list of results. When the Find glyph name synonyms toggle is on, FontLab will also find Decyr if you type in uni0414 or vice-versa. By default, FontLab will insert the first glyph on the list but you can pick a different one.

At the bottom of the dialog, you can decide where to place the inserted component:

  • If you leave the X and Y fields empty, FontLab will:
  • use matching anchors if available (e.g. top in the current glyph and _top in the component glyph)
  • otherwise it will center the inserted component horizontally, and will shift the component upwards by the difference of caps height and x-height if you’re adding a mark component to an uppercase letter, but will do no vertical shift if the mark’s name ends with .case or .cap or if you’re adding a component that isn’t a mark
  • You can enter a numeric value into either X or Y or both, then FontLab will use the value for the specified coordinate, but if a field is blank, FontLab will use the above procedure for that coordinate (so you can enter 0 in Y and leave X blank, and you’ll get a horizontally centered component with no vertical shift)
  • You can enter an anchor name into either field — if the current glyph and the component have several matching anchors, the specified anchor will be used
  • You can also mix anchor-based and absolute positioning, e.g. enter 0 into X and top into Y will place the component at the origin point horizontally but use the specified anchor for vertical positioning

Use the Flip horizontally and Flip vertically buttons to mirror the inserted component.

Choose whether the current glyph should keep its metrics, or whether the advance width should be replaced by the width of the inserted component.

Use the Apply to all masters toggle to insert the component into the current master or to all masters.

Copy-Paste»

In Font window, select one glyph cell and choose Edit > Copy. Then select one or more glyph cells and choose Edit > Paste Components, and FontLab will insert the copied glyph as a component into all selected glyphs in all masters.

In Font window, select more than one glyph cells and choose Edit > Copy. Then select one ore more glyph cells and choose Edit > Paste Components, and then FontLab will insert the first copied glyph as a component into the first selected glyph, the second copied glyph as a component into the second selected glyph, and so on — again, in all masters.

Using Components»

Components in FontLab VI 6.1 are special Elements which are “glyph filters.” So you can use the Element tool to move components (but you can also use the Contour tool). You can use most of the Element menu and the Elements panel to work with Components. For example:

  • Use the < and > keys to switch between Components in the current glyph.
  • To open the Component’s source glyph for editing next to your current glyph, double-click a Component, or when a Component is active, press CtrlE, or right-click and choose Edit Element, or choose Element > Element Reference > Edit Element.
  • To make a Component “first”, choose Element > Arrange > Send to Back or drag the Component to the bottom of the components list in the Elements panel.
  • Align components and other elements within the glyph layer with the the Element > Align menu items.
  • Use Element > Group if you want to always move several components in a glyph together, and Ungroup them if you don’t.

Replace a Component»

When you use the Contour or the Element tool and a Component is active, the Glyph window property bar will show an underlined C: icon, and a text field that shows the name of the component’s source glyph.

Type a different glyph name (or a synonym) into the text field, or click on the C: icon and type it in the Replace Component dialog, and press Enter — and the current component will be replaced in the current master with a component that points to a different glyph.

You can also replace a component in the current master by typing a new glyph name in the Glyph name field of the Elements panel (use the Show element properties to show the field).

To replace a component in all layers, you need to perform the replacement in each layer.

Decompose»

When a Component is active in the Glyph window, you can click on the Decompose button in the Glyph window property bar on in the Elements panel, and the component will be decomposed in the current layer, i.e. its contours and guidelines will be inserted into the current glyph.

To Decompose all components in the current layer, choose Glyph > Decompose or right-click in the Glyph window and choose Decompose from the context menu. However, if you’re in the Element tool and you Shift-click one or more Components, Glyph > Decompose and Decompose context menu item will decompose only the selected component(s).

When decomposing Components, FontLab will combine the contours of the decomposed Components and contours that pre-existed in the glyph into one single element — unless the source glyphs used different strokes or color fills.

Note:

  • Element > Expand Filters will decompose a Component and remove any other Filters that exist in the source glyphs (for example Power Brush)
  • Glyph > Flatten Glyph will decompose, remove filters and combine the decomposed elements into a single Element if possible
  • Element > Separate Contours to Elements and Element > Optically Separate will also decompose, and then perform the separation

Composite glyphs in the Elements panel»

The Element References section of the Elements panel (when you turn on Show element references button, the section appears at the bottom of the panel) shows glyphs in which the current element is used as a component or as an element reference.

  • Double-click a glyph cell there to open the glyph next to the current glyph in the Glyph window
  • Cmd-double-click a glyph cell there to open the glyph replacing the current glyph in the Glyph window
  • select multiple glyph cells and press Enter to open all selected glyphs in the Glyph window

If you select a component in the Elements panel, then select multiple glyph cells in the Element References section, and then in the Element Properties section you apply an X or Y shift, the component will be shifted in all selected glyphs.

Some fields in the Elements panel change when you are working in a glyph that has Components, for example, the Glyph Name field appears. If the layer is an Auto layer, many properties (such as advance width) become non-editable, because they are built automatically by the Auto layers recipe.

Components/elements in Auto layers»

When viewing a glyph with an Auto layer in Glyph window, you can now double-click a component (or an unlocked element reference that has a “source glyph”) to open that component’s source glyph for editing next to the current glyph.

Contour tool and locked elements»

In a Glyph window, when Edit Across Elements is on, the Contour tool is selected, and the current element is not locked, Edit > Select All (CmdA) now selects all contours of all elements in the current glyph. If the current element is locked, or the Element tool is selected, Edit > Select All (CmdA) selects elements.

Remove Empty Elements action»

Remove Empty Elements is a new command in the Actions dialog, which removes empty Elements and references to them.

Measurements Panel»

The Measurements panel is a table where you can keep track of the most important proportions and numerical values of your design. You can open the panel with View > Panel > Measurements.

The panel’s rows are predefined measurements for uppercase and lowercase letters: vertical and horizontal round and straight stems and their ratios, counters, overshoots, the contrast and some font-wide dimensions. To show/hide some measurements, click the Options button at the bottom.

These measurements are for your reference only, and are independent of the font’s technical values in Font Info. FontLab will save them in your VFC/VFJ, but not write any of those values (e.g. stems or Ascender) into Font Info or the exported font.

If you have multiple masters, the first column shows the measurements for the current master, then values for all masters are shown. To switch the master, double-click the the column heading.

To enter your own value, double-click a cell.

To auto-calculate some measurements, select the cells in the panel and click the Recalculate button at the bottom. This is useful if you’ve added more glyphs to your font or have entered some custom values that you no longer need. Note: auto-calculation uses Latin glyphs from your font.

If you need to note down a custom measurement that is not in the list, use any predefined measurement row to your liking.

Glyph Set»

Font filters and Font window sidebar»

In the Font window, you can use font filters to find certain glyphs in the Font window, and to focus on them by sorting them ahead of (or displaying instead of) other glyphs. Note: Do not confuse font filters with glyph filters in the Glyph window — those are for special effects like Power Brush or Smart Corner.

The Font window in FontLab VI had a Sidebar with the Search History and Bookmarks sections. In FontLab VI 6.1, the Font window Sidebar is much more powerful. It now also has:

  • a Basics section for beginners
  • a Categories section that lets you filter glyphs by their Unicode categories or OpenType glyph class definitions, by some design properties (glyphs that use components, glyph filters or color), and by the layers that each glyph includes
  • a Scripts section that lets you filter glyphs by their Unicode script (writing system)

FontLab VI 6.1 also has an easier way to hide unfiltered glyphs in the Font window and the ability to Search for glyphs using their synonym names or layer names that they contain.

The Font window shows all glyphs that exist in your font, sorted by whatever you choose in the Font window’s property bar Sort dropdown. But if you want to focus on a particular set of glyphs or if you want to create some glyphs that don’t exist in your font yet, you can use a font filter.

Font filters show you the glyphs that exist in your font and match some specific criteria. Font filters differ in how they perform the matching:

  • exact filters only match a glyph if its name, Unicode codepoint or other property exactly matches the criteria,
  • fuzzy filters also match a glyph if it’s a variant or alternate of a glyph that matches the criteria (glyph name suffixes and glyph ligature naming is used to find the alternates),
  • prospective filters also show empty glyph cells, which are placeholders for glyphs that you could add that also match the criteria; prospective filters are exact because they have a maximum possible number of results that is known up front.

Hide unfiltered glyphs»

When a font filter is active, the Font window glyph cells are divided into two groups: the filtered glyph cells (the ones that match the filter) and the unfiltered glyph cells (those that don’t match the filter).

The Font window property bar now has a new toggle button: Hide unfiltered glyphs (in previous FontLab VI version, this toggle was called All glyphs and existed at the bottom of the Font window sidebar).

  • When Hide unfiltered glyphs is off (the default):
  • Filtered glyph cells are shown first at the top of the Font window, and they are highlighted in yellow. You can change the color and intensity of the highlight Preferences > Font Window > Highlight.
  • Unfiltered glyph cells are shown after the filtered glyph cells, and they are not highlighted.
  • The Font window status bar shows (in the bottom-right) how many glyphs are selected, and how many glyphs are there in total.
  • When Hide unfiltered glyphs is on:
  • Only filtered glyph cells are shown in the Font window.
  • Unfiltered glyph cells are hidden.
  • The Font window status bar shows (in the bottom-right) how many glyphs are selected, how many are filtered and how many glyphs are there in total.

So if your font filter is “Uppercase Letter”, the filtered glyph cells will contain uppercase letters and will always be shown. The unfiltered glyph cells that contain all other glyphs in your font will be shown after the filtered glyphs or will be hidden.

Filter dropdown»

The Filter dropdown (located in the property bar between the Cell caption dropdown and the Sort dropdown) produces prospective filters for the following types of criteria: Encodings, Unicode ranges, Codepages, Unicode Categories and Unicode Scripts. The dropdown has two parts: in the first, you choose the type of criteria, in the second, the actual filter.

In FontLab VI, we’ve updated the Encoding filters in the “OpenType” group to no longer include empty glyph cells at the beginning of each encoding.

Font window sidebar»

We’ve greatly extended the Font window Sidebar which you can open using the 2nd button in the Font windows’s top property bar.

Previously, the Sidebar included two resizable areas: Search history which lists the filters that you’ve previously applied to the Font window, and Bookmarks where you can save some filters from the Search history section for later re-use.

Now the Sidebar’s first resizable area is a hierarchical list of font filters grouped into three sections:

  • Basics
  • Categories
  • Scripts

You can collapse or expand a section (and any sub-sections) by double-clicking its heading.

Custom font filters»

To quickly create your own exact font filter, select some glyphs in the Font window, press CmdC, click the Search box, press CmdV and in the dropdown list choose Text. This font filter shows just the glyphs that you’ve selected and shows up in the Search History section of the Font window sidebar. You can drag it from Search History to the Bookmarks section for later re-use.

To create and later re-use your own prospective font filter, write a custom Encoding file in a text editor. In FontLab VI 6.1, you can use Preferences > General > User data folder to specify your own location of the User data folder. Then, place your own Encoding files inside the Encoding subfolder of that folder.

Add Glyphs dialog»

In the Font > Add Glyphs dialog that lets you add glyphs for Unicode characters into your font:

  • the Scripts sidebar is divided into “Basic” and “Extended” scripts; both sections are sorted alphabetically
  • the new Ranges tab shows all Unicode ranges (blocks)
  • the new Filter field lets you search for a name of a Unicode category, script or range (depending on the active tab); only matching names will be shown in the left sidebar

Note: In the Font window, glyph cells on white background show the glyphs you have, and glyph cells on gray background show missing glyphs. In the Add Glyphs dialog box, it’s the other way around: the glyphs you have are on gray background and the glyphs you can add are on white background.

Character placeholders»

FontLab has improved use of character placeholders (gray glyphs shown for your visual reference):

  • in prospective filters in the Font window, for glyphs that do not exist in your font but that could be added
  • in the Add Glyphs dialog, for glyphs that do not exist
  • in the Glyph window, for glyphs that do not exist, when Preferences > Editing > Show missing glyph placeholders is turned on
  • in the Glyph window, for any glyphs, when View > Character placeholders is turned on

FontLab VI 6.1 now shows character placeholders using a bundled font derived from Noto, which includes glyphs for nearly 24,000 non-CJK Unicode characters. For characters not supported by the bundled font, it uses system fonts (like previous versions of FontLab VI). To use a different font, choose Preferences > Font window > Placeholder font.

List view of the Font window»

We’ve improved the List view of the Font window. To open the List view, click the List button in the Font window’s property bar (4th button from the left).

  • When you click the column headings to sort the list, an indicator of the sorting direction appears in the heading. Click again to reverse the sort.
  • The column names are more descriptive, and columns that contain values you can edit are underlined.
  • The rendering of the Show columns button (gear icon on the right) is improved.
  • If you reorder the columns in the List view by dragging the column headings, the same order is shown in the Show columns dialog.
  • The Show columns dialog has an option to colorize the background of columns that contains grouped or numerical values.
  • FontLab now remembers your changes to the column widths.
  • FontLab no longer shows entries for non-existent glyphs in the List view (they are still shown in the Table view, as empty glyph cells).

Color flags»

When you assigned a color flag (“mark”) to a glyph in earlier versions of FontLab VI, the flag was assigned to the current glyph layer, and to the glyph (as a fallback flag). In glyph layers with the “transparent” flag (that is, “unflagged layers”), the fallback flag was shown, but if a glyph layer had a layer flag (that is, it was a “flagged layer”), the layer flag was shown. This was confusing.

FontLab VI 6.1 makes a better distinction between layer flags and fallback flags. In a font with more than one layer or master:

  • To completely reassign a new color flag (to all its layers and to the fallback), in other words to replace all layer flags by the new flag:

  • Shift-click any color cell in the color flag picker

  • or click the “down” arrow in the color flag picker and then click “…”, then in the Color Flag dialog, choose a flag, turn off Keep custom layer flags and click All Layers.

  • To assign a new color flag to those layers that are unflagged or that have a flag identical to the glyph flag, and to the fallback, in other words to preserve custom layer flags:

  • Click any color cell in the color flag picker

  • or in the Color Flag dialog, choose a flag, turn on Keep custom layer flags and click All Layers.

  • To assign a new color flag to only to the current layer, in other words to preserve all other layer flags and not change the fallback flag:

  • Alt-click any color cell in the color flag picker
  • or in the Color Flag dialog, choose a flag and click Current Layer.

The fallback flag is now only used as the layer flag when you create new layers or masters in the glyph.

When FontLab VI 6.1 opens an older VFC or VFJ file, it will automatically update your flags so that:

  • If a glyph had a color flag in one layer and no flag in other layers, the flag will be assigned to all layers and as fallback.
  • If there are different flags for different layers of a glyph, they will be preserved as layer flags, but glyphs without a flag will get the fallback flag assigned as their layer flags.

This may sound complicated, but in reality, it’s simple:

  1. If you start a new font or open an existing VFB or a final font format, you can just use the normal “click” to assign flags to all layers at the same time. Just don’t use Alt-click and you’ll have consistent flags across all layers.
  2. If you open an older VFC or VFJ file and wish to get rid of any inconsistent flags, choose your main font master, set the Font window sorting in the property bar to Flag, and for each group of glyphs that are flagged with the same color, select them and Shift-click on a color cell in the color flag picker to “reapply” the color flags while removing any custom layer flags. You only need to do this “cleanup” once, then you can just use normal clicking.

Also, you can now copy-paste color flags using Edit > Paste Special (like in FontLab Studio 5).

Append Glyphs»

With the Append Glyphs command, which is now in the Edit menu and works when you’re in the Font window, you can copy-paste glyphs between fonts without replacing existing glyphs in the destination font.

When you copy some glyphs in the Font window of one font, switch to the Font window of a second font, and use Edit > Append Glyphs, FontLab adds the copied glyphs to the second font, without replacing any existing glyphs. The glyphs will keep their names and Unicodes if possible, but if glyphs with a certain name exist in the first font, FontLab will add a numeric suffix to the names of the appended glyphs.

Remember that in FontLab VI, if a glyph layer has the same name as a font master in Font Info, it is assigned to that font master. The appended glyphs will retain all layers that existed in the first font, but FontLab will not automatically create new font masters in Font Info of the second font. If some layers in the appended glyphs match existing font masters by name, they will be assigned to masters. You can also create empty masters in Font Info in your second font after you’ve appended the glyphs, giving the masters the same name as the layers in the appended glyphs — then those layers will also be assigned to the new masters.

When you copy some contours in the Glyph window of one font, switch to the Font window of a second font, and use Append Glyphs, FontLab creates a new glyph named glyph (with an optional numeric suffix if such glyph already exists) in the second font, and then pastes the clipboard contents into this new glyph.

Layers and Variation»

When you switch layers through Glyph > Previous/Next Layer or Alt, / Alt., FontLab skips any/all mask and service layers.

Matchmaker tool»

We’ve improved the Matchmaker tool (Tools > Tools > Matchmaker) which you can use to make your masters interpolate better.

When you turn on the Show intermediates toggle, Matchmaker will show not just the masters but also a number of intermediate interpolation steps. You can change the number of steps (up to 32), and change the opacity with which the intermediate steps are drawn.

The intermediate steps help you see how your interpolation works. The steps do not correspond to your font’s instances, because Matchmaker does not use the masters’ axis locations. Instead, it orders all masters in the same sequence as your Layers & Masters panel and shows the interpolation across one “ad hoc” axis. You can change the masters order by drag-and-drop in Font Info > Masters.

Note: Currently, Glyph > Match Masters and the Matchmaker Match masters operations decompose any composite glyph. You should use these operations only in simple contour glyphs.

Keep in mind that the Sort contours and start nodes and Check masters geometry toggles in Font Info > Axes and in the Layers & Masters panel influence the way the Match masters operations work.

Kink detection in Font Audit»

FontLab VI 6.1 has a new Kink in variation FontAudit test that checks if interpolated instances will have a visible “kink.” Specifically, if you have a smooth node in all matching masters, FontAudit will show the “Kink in variation” problem if the proportions of the handles across masters differ by more than 5%, and if the angles of the handles differ by more than 3°. In those cases, even if the nodes are smooth in the masters, they will form slight corners (“kinks”) in the interpolated instances.

To see FontAudit tests, choose View > Show > FontAudit. You may also want to open Window > Panels > FontAudit and in the panel’s options, make sure the Kink in variation test is turned on.

To spot how the kinks occur, open Window > Panels > Preview and in its sidebar, set Outline to Thin and turn on Show nodes. Then explore your design space using the map or the sliders in the Variations panel, and watch how the green round smooth nodes in the Preview panel sometimes turn into red square corner nodes. You may also switch to Text tool in the Glyph window and navigate the design space in the Variations panel.

Unlike other FontAudit tests, “Kink in variation” does not have a “fix” function. You need to reconfigure the nodes yourself to avoid the kinks.

Hinting and Smart Rounding»

When generating or exporting instances as static fonts, FontLab uses the “PostScript” Hints defined in the font’s main master. Use the blue circle in Font Info > Masters to decide which master is your main master.

If have hints in your main master’s glyphs (that you’ve added via Tools > Autohint or Tools > Add (…) Hint), and if you turn on Preferences > Variation > Smart rounding, FontLab will use the hints to regularize stem thicknesses in instances that you export via File > Export Font As… > Instances tab or generate via Font > Generate Instance.

Smart rounding eliminates “off by one” rounding errors that are inherent to any interpolation. If any glyphs had equal stems in PS-hinted masters, they will have equal stems in any instance.

Smart rounding works even if you export instances as OpenType TT (.ttf) static fonts, but works only if “PostScript” hints exist in your main master. If you don’t have hints in your source font, or if you only have TrueType Hinting (TTH) commands, and you export instances into final fonts, FontLab will first interpolate the instances (without smart rounding) and will only then autohint unhinted glyphs if needed.

Note: Smart rounding has no influence on the export of OpenType Variation fonts.

Custom Family name for predefined instances»

You can now expand the lower section of Font Info > Instances using the expansion triangle. The expanded section reveals additional properties of the instances that will be used when you export instances as static fonts (those properties will be ignored when you export an OpenType Variations font).

In addition to the Style group and Style link entries (that existed there before), the section now has a new field Family Name. You can use it to set a different Family name (typographic, or “preferred” family name) for any instance. If the field is empty, it shows the font’s Family name specified in the Names section. You can enter another Family name for some instances, which allows you to divide your exported instances into multiple families.

Other Variation improvements»

  • The Generate Instance dialog box now has an Add Instance button. This adds a new instance to the list of predefined instances using the current coordinates specified in the Variations panel.

  • The bundled fontTools library is now version 3.29.0 instead of 3.24.3, which brings a number of improvements to export of variable fonts.

Merging layers (color fonts)»

When you click the Merge Visible Layers button in the bottom-right of the Layers and Masters panel, all layers which are set to “visible” using the eye icon in the panel are merged into one layer, that is, all elements, contours etc. of all visible layers are placed on top of each other in one layer.

This is particularly useful when you design color fonts. You can define each layer as a font master in Font Info (and make the masters non-variable by turning off the AAA icons in Font Info > Masters). Then, you can export each master into any font format via Font > Export Fonts As…, choosing the Masters tab. But afterwards, you can merge the visible layers and export the font as a series of static color font (in SVG, COLR, CBDT and sbix variants).

The “Merge Visible Layers” operation now works better:

  • When you click the Merge Visible Layers button, a popup will ask you which glyphs should be merged.
  • The layer order after merging reflects the order in the Layers and Masters panel.
  • If the current layer is a font master, the result will have the font data (glyph metrics, classes, kerning, Font Info data etc.) of the current master.
  • If the current layer is not a font master, the result will have the font data of the main master that is indicated by the blue circle in Font Info > Masters.

Metrics (Spacing)»

Nonspacing components and elements»

FontLab VI now lets you declare some components or elements as nonspacing. Nonspacing components/elements don’t change the advance width of the glyph, but they change the way FontLab calculates and shows sidebearing values inside the app.

Unicode has a concept of “nonspacing characters” and OpenType fonts have “nonspacing glyphs.” During typesetting, nonspacing glyphs don’t contribute to the metrics of a line. They are positioned in relation to the preceding glyphs (the spacing glyphs) but their own metrics are ignored — so in the typesetting process, nonspacing glyphs have “invisible” metrics.

FontLab’s new Nonspacing components and elements perform a similar function when you build a glyph: they are visible, they are exported into the final font, and they don’t change the advance width of the glyph in any way, but inside FontLab VI they are “invisible” to the metrics engine. FontLab will ignore the Nonspacing components or elements when it shows the numerical values for the width and the sidebearings, when you copy metrics across glyphs using Paste Special, or when linked metrics are calculated using metrics expressions.

FontLab has a special guide called the “Measurement Line.” When you turn on View > Measurement Line, FontLab shows sidebearing values calculated at the intersection of the Measurement Line and glyph’s “ink.” This still works the same way. When you turn the Measurement Line off, the sidebearing values are calculated based on the bounding box of the entire glyph layer. With Nonspacing elements, you can exclude certain elements or components from that bounding box for the purposes of calculating the sidebearings. Of course when you export your font into a final format, FontLab will write the correct “absolute” metrics into the font.

Example: in the “ī” (imacron) glyph, you can make the macron component Nonspacing and then set the LSB and RSB to =dotlessi. The macron component will be ignored when the final imacron sidebearings are calculated, so it’s easier to link the imacron metrics to those of dotlessi.

Using Nonspacing components and elements»

When you click a component using the Contour or Element tool in the Glyph window, or you click an element using the Element tool, a Nonspacing toggle appears in the Property bar. Use that toggle to set or unset the Nonspacing property of a component or element, or use the toggles in the Nonspacing column in the Elements panel.

When you turn on Preferences > Open Fonts > Automatically assign nonspacing property to accent components and you open any font, FontLab will assign the Nonspacing property to those components where their source glyph or its default variant (without glyph name suffix):

  • has the glyph name circumflex or caron,
  • or has the Unicode U+02B9–02BD, U+02C6–02CF, U+02EC,
  • or is in the Unicode “Nonspacing Mark” or “Modifier Symbol” category,
  • or has the OT Glyph Definition Class “Mark”

When this preference is on, FontLab will also use the above method to assign the Nonspacing property to components in Auto layers.

When you use Element > Nonspacing > Detect Nonspacing in the Font window, FontLab will use the above method to assign the Nonspacing property to components in the current layer of the selected glyphs. To do it for all layers, use Tools > Actions > Metrics > Nonspacing > Detect nonspacing.

If you use Element > Nonspacing > Detect Nonspacing in the glyph window, FontLab will use the above method to assign the Nonspacing property to the current element or to selected elements (so only the components that fit the criteria will become Nonspacing).

To unset the Nonspacing property in all masters, i.e. make all components and elements spacing, use Tools > Actions > Metrics > Nonspacing > Clear nonspacing. To do it in current layer only, use Element > Nonspacing > Clear Nonspacing.

If you do not want to use Nonspacing components or elements, use Tools > Actions > Metrics > Nonspacing > Clear nonspacing on All Masters and entire font, and turn off Preferences > Open Fonts > Automatically assign nonspacing property to accent components.

Metrics expressions (linked metrics)»

FontLab VI 6.1 brings several improvements to metrics expressions that you can use to link glyph metrics across different glyphs and layers. Updating linked metrics is now much faster, metrics expressions consistently take precedence over static numerical values, you can link metrics to other glyphs on other font masters, and you can use additional functions (and straight quotes) in metrics expressions.

Faster updating of linked metrics»

FontLab now updates expressions much faster, so Preferences > Spacing > Automatically update linked metrics is now on by default. If you have a font with thousands of glyphs that use linked metrics, you may want to turn it off, and instead trigger Font > Update Metrics manually.

Metrics expressions take precedence»

The interaction between expressions and explicit numerical values in the three metrics fields (left sidebearing (LSB), right sidebearing (RSB), advance width) is now more logical: expressions take precedence over simple number values; and for conflicting expressions, the last expression you entered takes precedence.

  • If you use just one expression in any of the three fields, the other fields will adjust. So if you enter i into the RSB field of “j” and change the RSB of “i”, the spacing of “j” will update correctly.
  • If you use expressions in any two of the fields, the third field will adjust. So if you link the RSB and the width of “j” to i, the LSB of “j” will adjust.
  • If you use expressions in all three fields (a bad idea, which will likely lead to future problems/inconsistencies), the last expression you enter will take precedence, and one of the others will be adjusted by adding a constant.

Additional notation and functions in metrics expressions»

Whenever you specify a glyph in a metrics expression, you can use the glyph name (e.g. aogonek) to refer to the current layer of that glyph. This works inside functions, in simple expressions and as a constant in extended expressions.

In addition, you can specify a glyph and layer using the following methods (but these won’t work as constants in extended expressions):

  • ą: a single Unicode character. Specifies the current layer of the glyph that has the Unicode codepoint of that character.
  • :Thin: the layer name after a colon, without a glyph name. Specifies a different layer of the current glyph
  • ą:Bold or aogonek:Regular: the layer name after a colon, following a character or glyph name. Specifies a different layer of that glyph

The following table lists FontLab-specific functions that you can use inside expressions. Note: glyphspec portion stands for a glyph and/or layer specified as above. New: You can now surround glyphspec and guidename with single quotes ('), or, as previously, with double quotes (").

Function Description
l() LSB of the current glyph and layer
r() RSB of the current glyph and layer
b() new: bounding box width of the current glyph and layer
w() advance width of the current glyph and layer (l()+b()+r())
lsb("glyphspec") LSB of the specified glyph and/or layer
rsb("glyphspec") RSB of the specified glyph and/or layer
width("glyphspec") advance width of the specified glyph and/or layer
g("guidename") x position of a vertical guideline named guidename within the current glyph and layer

For example, if you enter :Regular+10 or =width(':Regular') + 10 into the advance width field of the space glyph in the Bold layer, the width will be 10 units larger than the width of the same glyph’s Regular layer.

In addition, you can use all built-in functions and operators built into the muParser library that FontLab VI uses. This includes:

  • conditional expressions that use the syntax (condition) ? value_if_true : value_if_false. If you enter =(d>0) ? d : o into the LSB field of “q”, then its LSB will be equal to LSB of “d” if the LSB of “d” is larger than 0, but if the LSB of “d” is 0 (which would be the case if it has no contours), the LSB of “q” will be equal to LSB of “o”.
  • statistical expressions such as =max(i, w, m) or =avg(width(':Thin'), width(':Bold'))

Other improvements in linked metrics»

  • Metrics resulting from expressions are now always rounded to integers. For example, when H has the width 100, and I has the width expression = H / 3, it results in 33, and when K has the width expression = I * 2, it results in 66. Inside expressions, fractional values are still used, so an expression like = H / 3 + 0.18 will result in 34.

  • When you use an expression in a metrics field of a glyph and then manually adjust that glyph’s metrics (by using Ctrl or ++Alt+ with the arrow keys, or by dragging the spacing controls), your adjustment modifies the expression (by adding or subtracting the value). So when you enter i into the RSB field of “j” and then drag the RSB control of “j” by 10 units to the right, the RSB field will have the expression i+10. Previously, any manual edits caused the expression to be replaced by an explicit numerical value.

X-Ray view in Preview panel»

The Preview panel now has a new view filter called X-Ray. The “X-Ray” view offers you a “bird’s eye” view on your text. It allows you to see the visual rhythm of your text more clearly, so stems and counters are immediately visible. X-Ray can help you to achieve more balanced spacing and kerning.

To use X-Ray, click the sidebar toggle in the top-right corner of the Preview panel, in the Content dropdown, choose Current (to see the same text as is shown in the current Glyph window), Custom (to type in your own text) or any other entry except the waterfalls.

Now click the Filter > X-Ray view button in the sidebar, and instead of the text rendered with your actual glyphs, you’ll see the “X-Ray” rendering of your text. What looks a bit like grayscale barcodes is a one-dimensional projection of the visual density (grayness or “typographic color”) of the text (your glyphs) along the X-direction.

Imagine a tiny machine that slides at the bottom of your glyphs along your text in the X-direction, and emits a pixel-sized ray that gets captured by a tiny one-pixel camera at the top of your glyphs. The more “obstacles” (“ink”) the ray has met while traveling from bottom to top, the darker the image will be at that point. FontLab then shows you the “X-Ray” image by stretching the captured pixels to the font’s x-height. So whenever the X-Ray bar is very dark, there is a vertical stem, if it’s white, there is whitespace, when it’s very light, there is a counter. Glyphs like = or are uniform gray, but = is darker than .

For italic fonts, FontLab shows upright X-Ray bars based on glyphs backslanted using the font’s italic angle. When glyph boxes overlap (via Kerning or through calligraphic connections), the X-Ray will be darker. If the Outline dropdown in the Preview panel’s sidebar is set to None, only the X-Ray preview is shown, but you can choose to show the outline of the original glyphs (in three thicknesses) behind the X-Ray preview. You can combine X-Ray with other Preview panel settings (Invert, Blur, Flip, Slant, Tracking, Color etc.)

Kerning»

Match Kerning»

When you work with variations, each font master in FontLab has its own kerning classes, and the kerning in each master is fully independent, so each master has its own list of pairs, some pairs are class-based, other pairs are glyph-based. This is sensible during the design stage.

When FontLab exports instances or a variable font, it needs to “match” the kerning so that it is structurally compatible in each master. In previous versions, this was done automatically during export. Now, you can perform the matching yourself, and review the results: the Match Kerning operation is now accessible in the “hamburger menu” at the bottom right of the Kerning panel.

Match Kerning first expands all class-based kerning pairs in each master. Then it replaces the kerning classes in all masters with the classes defined in the default master. you can choose which master is default using the blue circle in File > Font Info > Masters.

Once the kerning classes are identical, FontLab makes the “flat” number of kerning pairs in all font masters equal: it keeps existing kerning pairs and their values, but adds kerning pairs that exist in other masters. When a master is at the edge of the design space, the added kerning pairs get the value 0, if the master is intermediate, the pairs get the interpolated kerning value.

Finally, FontLab compresses kerning pairs into class-based kerning with exceptions, using the new kerning classes. As a result, all masters have the same number of pairs, and each pair has the same structure (class-to-class, class-to-glyph, glyph-to-class or glyph-to-glyph), but of course the kerning value of each pair is the same as in your original kerning before matching. (Some values may be zero to keep the pairs matching.)

You may use Match kerning as an audit tool — once kerning is matched, it’s easier to spot odd pairs or pairs that you may have forgotten to kern.

Remember: Before you Match kerning, your intermediate masters may omit some pairs that you have in your edge masters. When you change any of the pairs in one edge master (before Match kerning), FontLab re-interpolates the intermediate values on export. But after you Match kerning, the interpolated values are added as real pairs into your intermediate master. So after Match kerning, when you change kerning in an edge master, the values will no longer be automatically interpolated for the intermediate master—you will now have to adjust intermediate masters manually.

Other Kerning improvements»

  • The Kerning panel lists exceptions as sub-entries of their “superior” class pair. You can show and hide the exceptions in the list using the expand/collapse triangles. In 6.1, all exceptions are now shown by default, so you can easily see, select and copy all pairs.

  • Kerning no longer may have fractional values, it is always rounded to integers. When you open an older VFC that has fractional kerning, FontLab rounds your kerning values to integers.

  • The display of kerning class members in the Classes panel is now sorted by glyph index, and the “representative” glyph shown in the Glyph window when you click a class-based pair in the Kerning panel is always the one with the earliest glyph ID. Use Font > Sort Glyphs or drag-and-drop while in the Font window “Index” Filter mode to change the order of glyphs in your font and influence the representative glyph this way.

  • In the Kerning panel, CtrlAlt-click on the grey rectangle next to either of the classes shown, will do the same thing as Alt-clicking the rectangle: the Glyph window will show all glyphs from the 1st class kerned against class kerned against all glyphs from the 2nd class.

TrueType Hinting»

In the TrueType Hinting tool, the popover dialog boxes TTH Stems, TTH Zones and Other TTH Settings have been improved.

All three dialogs have the Cancel button that cancels any changes you perform in the dialog, the Apply button that applies changes and does not close the dialog (but you can preview the results), and an OK that applies changes and closes the dialog. Clicking outside the dialog has the same effect as clicking OK.

TTH Stems dialog»

  • If your font has multiple masters, and you have TTH stems with the same name in several masters, you can edit the values for all masters directly in the dialog: use the expand/collapse triangle to show the values for other masters.
  • The dialog is now resizable.

TTH Zones dialog»

  • If your font has multiple masters, and you have TTH zones with the same name in several masters, you can edit the values for all masters directly in the dialog: use the expand/collapse triangle to show the values for other masters.
  • If you select a zone, the bottom section of the dialog will show a table of deltas for that zone. The columns of the table are PPMs, the rows are masters. Click on any cell to apply a +8 (one pixel up) delta for the PPM and master, click again to apply a –8 (one pixel down) delta, click again to remove the delta. If you’ve set a zone delta with a different value in the Glyph window, the “n/8” delta value will be shown in the cell.
  • The dialog is now resizable.

VFJ File Format and Source Panel»

VFJ file format»

FontLab VI saves your fonts in its own VFC format, which is FontLab’s native, compact file format that represents all of FontLab VI data inside a font, including data about all glyphs, layers, all elements (simple and compound), Font Info, kerning, classes, OpenType feature definitions and so on.

FontLab VI also allows you to save or export your font in the FontLab VI JSON (.vfj) format, or VFJ. VFJ is a FontLab’s own text-based, lossless, human-readable equivalent of VFC. VFJ uses JSON (JavaScript Object Notation) to represent the font data.

When you turn on Preferences > Save Fonts > VFJ, then whenever you save your font, FontLab will save the VFC file and in the same folder it will also save the VFJ file. You can also use File > Export Font As… > FontLab VI JSON (.vfj) to export the VFJ into a different folder.

You can save or export VFJ files in two forms: “pretty-printed” or “compact.” The “pretty-printed” form is more human-readable, as it uses newlines and indentation, so it’s easier to see and follow the structure in a text editor. The “compact” form is smaller, but visually harder to analyze for a human. Other than that, the content of both forms is identical. When you turn on Preferences > Save Fonts > Add indentation and spaces…, FontLab will save or export VFJ in the “pretty-printed” form.

When you have saved or exported a VFJ file, you can open it in a plain-text editor such as Sublime Text or Atom, perform some changes (for example search-replace) and open the font back in FontLab VI, or you can use programming languages such as Python or JavaScript to modify VFJ files outside of FontLab.

Source panel»

The Source panel shows the VFJ source code of the current glyph and all its layers. While editing the entire VFJ in a text editor is handy, it may also be a bit intimidating because there is no visual link between the code and the graphical representation.

The Source panel gives you that visual link. It provides a fast, immediate access to the VFJ source of the current glyph.

To select whether you want to see the source code of the current glyph, layer or element, use the toggle at the top-left of the panel.

When you edit a glyph in the Glyph window, the Source panel updates to reflect your changes. When you turn on Preferences > Editing > Live preview, the update will be instant and immediate as you move your mouse pointer; when you turn the preference off, the panel will update once you release the mouse pointer.

When you edit source text in the Source panel, the Apply button will be enabled, which means that the data in the panel is more recent than what you see in the Glyph window. To apply the changes you have made to the code, click on Apply. The Source panel will notify you if you’ve entered some code that is invalid.

To revert to back your changes before you’ve applied them (so the panel will again reflect what you see in the Glyph window), click on the Revert button next to the Apply button.

Remarks»

  • In FontLab VI 6.1, we have updated both the VFC and the VFJ format. The VFC and VFJ files that you save in FontLab VI 6.1 may not open in FLVI 6.0.x.
  • We may change VFJ or VFC again in future. We intend to allow newer versions of FontLab to open older files, but probably not the other way around.
  • The Source panel currently does not give you access to data that is not “inside” any particular glyph, for example classes, kerning or Font Info. To edit that data in text form, save or export the font as VFJ and use a text editor.
  • We have not yet published a specification or documentation for the VFJ format. We intend to do so, but this is a time-consuming task since FontLab VI is a very complex app.
  • As with any software functionality intended for developers, keep in mind that “you need to know what you’re doing” when you use VFJ and the Source panel.

Features Panel»

Go to glyph or class at cursor»

The Features panel now has a Go to glyph or class at cursor button. When editing your features in the Features panel, you can position your text cursor inside or at:

  • a glyph name: then click the button or press CmdL, and your Font window or Glyph window will show the glyph; you can also choose Go to Glyph from the context menu
  • a class name: then click the button or press CmdL, and the Classes panel will open and will show the class; you can also choose Go to Class from the context menu

“include” statement»

FontLab VI 6.1 improves the support for the include statement inside your FEA feature definitions in the Features panel.

  • When you use the include statement with just a file name, for example include(filename.fea), FontLab checks the folder in which the current font is saved, if it doesn’t find the file, it checks the Features folder inside the FontLab VI user data folder, and if it still doesn’t find the file, it checks the Features folder inside the FontLab internal data folder.
  • When you use the include statement with a relative path, for example include(../filename.fea), FontLab uses the folder in which the font is saved as the base for the relative path.
  • You can also use the include statement with an absolute path.

Other Enhancements»

Custom FontLab VI user data folder location»

The FontLab VI user data folder is the folder where you can place Encoding files (Encoding/*.enc), recipes for Generate Glyphs and Auto layers (Data/alias.dat), Feature definitions to use with the include(filename.fea); statement (Features) or Python scripts (Scripts).

Previously, the FontLab VI user data folder was located in ~/Library/Application Support/FontLab/FontLab VI on macOS and in C:\Users\YOURNAME\AppData\Roaming\Fontlab\FontLab VI on Windows.

Now, you can change that location using Preferences > General > User data folder (restarting FontLab is required). If you collaborate with other FontLab VI users, you can point the User data folder setting to a folder that is on Dropbox, Google Drive or a network drive, so all users who have access to that folder can share the same custom encoding files or Python scripts.

Note: When you point the user data folder to a custom folder, FontLab VI will not automatically copy or move the contents of your default user data folder — if that is what you want, you need to copy/move the contents yourself. Autosaving is always done in the Autosave subfolder of the default user data folder.

Preferences»

  • Sections in Preferences now have icons in addition to text captions.

  • The Preferences > Glyph Window page has a new design and includes the new setting Show lengths and angles. To show lengths and angles, turn on this preference and Show coordinates for current node.

  • The Unicode-name mapping setting that allows you to choose a custom .nam file is now in Preferences > General

Color flags for fonts»

You can now set a color flag per font and master in Font Info > Names. The color flag of the current font and master appears in the Fonts panel.

Font and Glyph windows title bar»

The title bar of any FontLab VI window now displays FontLab VI: followed by:

  • if the current window or tab shows a Font window, the “font and master name” (which for single-master fonts is the Full Font Name and for fonts with multiple masters is the Family Name, then : and the current master name), then in square brackets an abbreviated path to the font file
  • if the current window or tab shows a Glyph window, the current glyph name followed by @ and the “font and master name”
  • if the current window or tab shows the Sketchboard, the word Sketchboard

Font window»

In Font window, when the glyph cell captions are set to Name, FontLab uses two built-in fonts to render the the glyph names more smartly:

  • if the glyph name is short enough to fit in the glyph cell, it is shown using a normal-width font
  • if the glyph name is too long, it is shown using a condensed font
  • if the glyph name is still too long, it is truncated in the middle using a “vertical ellipsis”

Note: The above works only if you did not choose a different font using Preferences > Font window > Caption font.

Cmd[ (Previous Glyph) and Cmd] (Next Glyph) shortcuts now work in the Font window.

Quick Help panel»

In FontLab VI 6.0.9, we added the Quick Help panel that you can open via Help > Quick Help panel. In 6.1.0, this context-sensitive help panel now has much more content, not just for the main tools, but also for all panels, and for all the major dialogs.

Dialog boxes»

  • In Font Info > Guides, the column widths are now adjusted to display more data, and if you change the column widths, FontLab remembers these changes.

  • The width of the left sidebar in large dialog boxes (Preferences, Font Info, Actions, Profiles, Export Font As) is adjusted to better fit the content.

  • Buttons such as Yes, No, OK, Cancel, Don’t Save in dialog boxes are now rendered more consistently. The default button is always blue.

Text frames on Sketchboard»

When you create a text frame on Sketchboard using the Text tool, and then choose Text > Frames > Clone Frame, the cloned frame is now created just to the right of the original frame.

Import Photoshop PSD/PSB files»

You can now import images in Photoshop PSD/PSB format into FontLab VI, using File > Import > Artwork… or via drag-and-drop. Note: FontLab cannot import PSD/PSB files that have 32-bit color depth, or use Zip compression.

TrueType Vendor ID database»

Font Info > Creator > Vendor now uses a recent version of the Microsoft Vendor ID database.

Keyboard shortcuts on Windows»

FontLab VI for Windows has some changed keyboard shortcuts:

  • View > Measurement Line - AltL
  • View > Show > Coordinates - CtrlShiftC

Other»

  • The built-in Unicode library ICU is now version 63.1

Bug fixes»

Generate Glyphs & Auto layers»

  • using named font guides in the extended (GlyphConstruction-compatible) syntax no longer positions relative to the negative of the font guide position.

  • When generating glyphs using extended recipes such as “= Q @ origin, 100+descender” the resulting glyph now gets the correct vertical placement. Previously, descender+100 worked but 100+descender didn’t.

  • When generating glyphs using extended recipes such as questiondown = question @ ~, ~below where below is a horizontal guide placed below the baseline e.g. at -150, the resulting glyph now gets the correct vertical placement at that guide. Previously, it was placed above the baseline at 150, i.e. the same distance to the baseline as the guide but without the minus sign.

  • For some glyphs selected in the Font window, the Generate Glyphs dialog box failed to display the glyph image and name, so the glyph could not be generated. This is now fixed. [Win-only]

Hints & Guidelines»

  • When you add thickness to a vertical guideline by Shift-dragging it from left to right, FontLab correctly sets the thickness as positive (instead of negative).

  • Tools > Add Vertical Hint produces hints with positive values (instead of negative).

  • New vertical PostScript links maintain proper thickness and position when exported to vfb and final font formats.

  • In glyphs with Auto-layer on, PostScript hints remain consistently hidden (as they should be).

  • Alt-dragging a hint now duplicates it correctly.

  • In Font Info > Guides, sorting by guide position works correctly even when there are guides with negative values.

  • While selecting nodes, handles, anchors or elements, particularly with marquee selection, hints and alignments zones sometimes became visible, even when their View options were off. This has been fixed.

  • Hinting in exported VFB files now correctly maintains links.

Glyph Editing»

  • Using the Knife tool to cut a filled, closed contour into two separate closed contours (with Ctrl key on Mac) still works even when the contour is inside a larger, closed filled contour.

  • Using the Knife tool in a specific way could crash FontLab. This is fixed now.

  • On Windows, use of arrow keys plus modifier keys to move nodes has been tweaked to provide one more option:

  • Ctrl plus the arrow keys now moves the node by 100 units (same as Cmd on Mac).

  • the move by 100 units & nudge operation is not available on Windows.(++Ctrl-Cmd+Alt++ plus arrow key on Mac)
  • Right Alt plus the arrow keys moves by 1 & nudges the neighboring handles (same as CtrlAlt on Mac)
  • ShiftCtrlAlt (or ShiftRight Alt) plus the arrow keys moves by 10 units & nudges (same as ShiftCtrlAlt on Mac)

  • In some situations, dragging on a curve where one (or more) of the adjacent nodes was a smooth connection, could cause the opposite handle of that smooth connection to “jump” when it should have been unaffected. This has been fixed.

  • Moving two or more nodes (using the mouse) while holding down Alt no longer crashes the app.

  • While drawing with the Rapid tool, after closing a contour, switching to Pen and back no longer tries to continue drawing the same contour.

  • Fixed an issue where Remove Overlap could subtract instead of combining filled areas, when nodes on different overlapping contours have the same coordinates.

  • Remove Overlap on a rotated group of rotated element references and/or flipped elements works as expected – no “holes” are created, even with multiple overlaps.

  • When no overlaps were present, the Remove Overlap operation sometimes changed the starting point and/or the types of nodes. This is fixed now.

  • After you switch a layer, the Eraser tool now remains functional. Previously, it required switching to another tool and back.

  • Converting a PostScript curve segment to TrueType via Alt-click and the Convert to TT dialog no longer crashes.

  • The Curve Tension setting in Font Info > Master Properties > Font Dimensions correctly affects new drawings made with the Rapid tool.

  • When you draw in the Mask layer, switch to the Body layer, do Tools > Clear Mask, and then Undo the Clear, the Undo no longer fails.

Fractional Coordinates»

  • Newly created empty glyphs never get fractional advance width assigned.

  • When Round when Editing is on, you no longer get fractional coordinates when you:

  • Change advance width using spacing controls in Contour mode.

  • Move a smooth node in PostScript editing.
  • Move a TrueType node, affecting a nearby off-curve point.
  • bind sidebearings (advance width remains integer units)

Layers and Variation»

(see also Metrics and Kerning)

  • Some interpolation issues were fixed by updating the included fontTools code to 3.29.0.

  • Renaming an axis in FontInfo updates the info for masters and axes in the Variations panel properly now.

  • Switching masters in Kerning mode doesn’t bring back an old kerning pair previously replaced in Text mode.

  • Paste Special can paste sidebearings across layers, after using Copy Layer

  • The Center Layer action avoids changing the advance width. (Unlike before, it may leave sidebearings with a one-unit difference instead.)

  • When working with multiple masters, a second Copy Layer command sometimes appeared sometimes in the Font window context dropdown menu. This is fixed.

  • In the Layers & Masters panel, some actions produce a “scope popup” menu, that asks if you want to perform the change on: Glyph, Selected Glyphs, All Glyphs or Font Master. Previously, this applied to renaming a layer, removing a layer, and adding a layer. Now this also applies to:

  • Duplicate layer

  • Merge visible layers

  • Merge Visible Layers can be Undone.

  • Pressing Enter when renaming a layer in the Layers & Masters panel doesn’t open duplicate pop-up dialogs.

  • When switching layers, the color flag indicator in the property bar (of the Font Window or Glyph Window)is correctly updated for the current layer.

Classes, Metrics and Kerning»

  • Tools > Actions > Metrics > Tracking now affects both sides of advance width proportionally, instead of just the right sidebearing. For example, if you add 20 units with tracking, it adds 10 to each side instead of 20 to the right sidebearing.

  • The color indicator for negative kerning (visible in Kerning mode) is using green again, instead of orange (to differentiate from positive kerning, which uses orange). #2842

  • Classes Panel:

  • In the Classes panel, pressing Enter after editing a class definition no longer jumps to another class in the list.

  • A crash that could occur when adding a new kerning class in the Classes panel was fixed.
  • Removing a kerning class in the Classes panel could cause some unrelated kerning pairs to disappear from the Kerning panel. This is now fixed.

  • Kerning Panel list table scrolling and sorting:

  • Kerning panel tries to keep the selected pairs visible in the list when the list sorting changes or masters are switched.

  • selected sort key is maintained when switching to another master or font.

  • Metrics Panel list table scrolling and sorting:

  • highlights the correct glyph, even when carriage returns (\n) are used in the text string.

  • scrolling to the current glyph, when the sort order is changed, is improved.
  • selected sort key is maintained when switching to another master or font.

  • Linked metrics:

  • Undoing changes to linked metrics in a variable font doesn’t crash.

  • If Preferences > Spacing > Automatically update linked metrics is on, FontLab now correctly updates metrics linked across masters/layers (for example, when linking from one master to another in a variable font).
  • If you link glyph metrics across masters and then Undo those changes and make more changes, FontLab no longer occasionally gets confused about which layer is current, for some of the glyphs in a string.
  • When linked metrics are changed to a regular unlinked numeric value, that number is now saved and read correctly to/from VFC.

  • Glyph metrics values calculated using expressions are now positioned better in the columns of the Metrics panel.

  • When you switch pairs in the Kerning panel, FontLab correctly syncs the kerning pair shown in the Property bar of the Glyph window .

  • The Compress to Class Kerning operation (in the Kerning panel hamburger menu) correctly compresses flat kerning to class kerning again. It was broken a few builds ago.

  • Flattening large amounts of class kerning to kerning pairs (thousands+) could be very slow. If there were tens of thousands of pairs, it could cause a crash. Performance has been dramatically improved, and FontLab can flatten kerning even if it becomes 360,000+ kerning pairs. (Not that having that much flat kerning is recommended.)

  • When the Glyph window is in Kerning mode and you are in a master and you have a kerning pair active, and then you switch to another master using the Layers and Masters panel, the kerning pair widget in the property bar now gets updated to reflect the master change.

  • When you type in some text in the Glyph window, switch to Kerning mode and then switch masters, the text no longer gets overwritten by just the kerning pair.

  • When a font already contains kerning classes, Generate kerning classes does not create duplicate classes.

Components and Elements»

  • Font > Detect Element References no longer crashes

  • Glyph > Flatten Glyph can be Undone.

  • Element deletion of some particular elements no longer crashes

  • Elements are no longer subtracting overlapping areas when you export a font as OTF; the automatic Remove Overlap operation at export time works correctly.

  • Element > Separate to elements works as expected, even when one of multiple contours within an element is selected.

  • Pasting an element within a group of elements now correctly creates a new element in the group (instead of incorrectly creating a reference).

  • Moving an element with arrow keys can be Undone.

  • When you copy-paste an element with filters (such as smart corners) applied, the pasted element now maintains the same filters.

  • Transform of multiple selected elements/components in the Elements panel’s References map is now undoable.

Open, Save and Export»

  • In Masters export mode, or when exporting into a variable format (DesignSpace+UFO, variable fonts), FontLab now uses the names of masters when building the filenames.

  • When you choose File > Save As and then click Cancel, the Save operation was canceled dialog no longer appears. #2754

  • When you open a font in a 3rd-party format and then immediately export as VFJ, an unnecessary Save As dialog no longer appears.

  • When importing an OpenType font and decompiling its OpenType features, FontLab could make an error when a lookup was used as context for another lookup, within a substitution, making it no longer contextual. Now any lookup which is a reference for another contextual lookup is written to the Prefix section.

  • If the preference Autosave opened fonts every xx minutes is turned OFF, FontLab no longer auto-saves. Previously, it auto-saved regardless of this preference.

  • Opening a TTF or OTF font with empty source coverage in a ligature lookup no longer crashes.

  • Some VFB files that previously could open in 5 but crashed VI, now open correctly.

  • Hinting in exported VFB files now maintains correct links and PostScript hints.

  • When there are missing required glyphs while exporting to the OpenType TT format, FontLab automatically adds them, and does not mis-encode the remaining glyphs.

  • Crash on reading OpenType features from particular TTF fonts was fixed (Win-64 only).

  • Links remain links (instead of getting converted to hints) when you export to VFB.

User Interface»

  • When docked to windows, Panels resize correctly when the windows are resized.

  • The Windows Backspace key deletes to the left in Text mode, instead of to the right [Windows only bug]

  • Selecting classes or pairs and then selecting glyph cells in the Font window changes the Copy Classes and Copy Pairs to Copy Glyphs command correctly now.

  • Adjusted how FontLab shades selected glyphs in the font window, to avoid some color combinations that made the glyph caption unreadable (for example, white text on a yellow header area).

  • When you delete a node name, the Glyph window is correctly updated and does not keep showing the name.

  • Keyboard shortcuts for Contour > Harmonize (Ctrl+Shift+H) and Contour > Clean Up (Ctrl+Shift+C) are properly shown in menu (Contour > Harmonize is also a new shortcut).

  • When a distance is zero (like the x distance between two vertically-aligned nodes) it shows as zero instead of blank in the property bar.

  • The shortcut for Element > Make Power Brush was changed to ShiftCtrlB on macOS (instead of mistakenly assigned ShiftB, which conflicted with the regular B shortcut). NOTE: This is Mac only; there is no shortcut for this command on Windows, as Shift-Cmd-B on Mac and Shift-Ctrl-B on Windows are in use for “Unlink Corners.” However, the command is available on a menu, and you can remap any menu item to any available command using Tools > Commands.

  • Fixed assorted tooltips in Font Info.

  • Crash when typing using the Text tool in a multi-layer font is fixed

Font Window»

  • The “Append Glyphs” operation, whether invoked by Font > Append Glyphs or by contextual (right-click) menu, now also works within the same font (instead of only between fonts).

  • Double-click on a glyph name in the Metrics panel changes the active glyph in the Font window.

  • On Windows only, in the Font Window, the underline on text that indicated a pop-down menu was much too close to the text, making it hard to see and making the text harder to read. This is fixed.

  • List View

  • the customization icon (gear on right) is no longer covered by the vertical scroll bar.

  • no crash after repeated edits of the same value.
  • after a value is changed, the Font window does not scroll. The exception is when you edit values in the column which is the sort column: FontLab will rebuild the row ordering after the value is changed, to update the sorting.

Preview Panel»

  • Compiling features (in the Features panel) now triggers a refresh of the Preview panel.

  • The Preview panel now contains two strings of text: one for typing your custom text, and a second one showing glyph names after processing the text. This is useful when previewing OpenType substitution (GSUB) features.

  • In the Preview panel, the context-click (right-click, Ctrl-click) “Export PDF…” option now works.

  • The range of possible predefined text sizes in the Preview panel was extended. Plus, hold the Alt key while scrolling your mouse wheel to change text size.

TrueType Hinting»

  • When you’re in the TrueType Hinting tool, you can no longer click guides, PS hints or zones even if they’re visible.

  • Inside the Sample texts control, CmdC for Copy and CmdX for Cut work properly now.

Features Panel»

  • The Features panel doesn’t jump to the first line of the feature code after compiling (the cursor stays in place).
  • When compiling features in the Features panel, FontLab no longer shows spurious error message from previous feature compilation attempts.

Sketchboard»

  • FontLab no longer sometimes crashes when a block of text (using text tool in a Glyph Window or in the Sketchboard) has its size increased or decreased repeatedly.

  • The Sketchboard always gets the focus when the application starts and the Welcome screen is not shown. This is now unaffected by toolbar settings and ruler visibility.

  • On the Sketchboard, multiple text boxes can be selected using marquee selection with the Contour tool. Each selected text box now has a frame around it, so you can tell which are selected.

  • The Text tool no longer uses the Auto Preview mode on the Sketchboard, so the text cursor doesn’t “time out” and disappear from a text boxes any more. (This fixes a problem introduced in 6.0.9.)

Other»

  • FontLab manages memory much better when dealing with demanding image files. For example, multiple very large, high-res color images on the Sketchboard, which are then chopped into many smaller images which are then each copied into layers of many separate glyphs.

  • FontLab no longer hangs when you navigate to certain glyphs that have references

  • Tools > Actions > Effects > Bold/Change Weight > Advanced now works properly on contours which already use the Smart Corners filter.

  • FontLab VI could crash after you open a Glyph window, type some text, undo, type again and then switch layers. This is fixed now.

  • In anchors that connect something to a base glyph (the name starts with an underscore, such as _top or _bottom), and the anchor position is determined by an expression, the expression is properly displayed in the Glyph window when the anchor has focus or is selected. Previously, the numeric position resulting from the expression was displayed instead of the underlying expression.

  • The Glyph window now always starts with glyph properly centered. Previously, for some composites the center was miscalculated.


FontLab VI version 6.0.9.6798»

13 August 2018

FontLab VI 6.0.9 brings several enhancements and bug fixes. Note: We released build 6797 a day earlier. It caused a crash at launch for some users — apologies! The newer build 6798 does not cause that crash.

New Features / Enhancements»

Glyph Editing»

  • With the new setting Preferences > Editing > Show missing glyph placeholders, you can decide if, in the Glyph window, glyphs that are used in the text, but are missing from the font, should be:

  • on: rendered using character placeholders from the font specified in Preferences > Font Window > Placeholder font

  • off: completely skipped, so only glyphs actually existing in the current font are shown

  • When you ShiftCtrlAlt-click (or ShiftRight Alt-click on Windows) on a curve segment:

  • if it is a PostScript curve, FontLab adds a node on extremum if the segment was missing one, otherwise it will now do nothing (rather than adding a node where you clicked).

  • if it is a TrueType curve, FontLab will now add a node on the closest implied TT on-curve point location. If there is none, it will do nothing.

  • (Mac-only) Previously, CtrlAlt with the arrow keys moved the node by 0.1 unit. Now:

  • CtrlAlt with the arrow keys moves the node by 1 unit and nudges the neighboring handles

  • ShiftCtrlAlt with the arrow keys moves the node by 10 units and nudges the neighboring handles
  • CmdCtrlAlt with the arrow keys moves the node by 100 units and nudges the neighboring handles

  • New command Tools > Remove Anchors removes all anchors, on the current layer, in all glyphs selected in the Font window.

List view of the Font window»

The List view of the Font window is now much more powerful. Turn on the List view with the List toggle button in the Property bar.

Click on the small gear icon in the top-right corner to open the Show Columns dialog, where you can explicitly decide which columns should be shown, and drag them to control their order. Turn on Sync with cell caption to cause the columns show and hide depending on what you choose in the Cell caption selector of Font window Property bar.

Click on any column heading to sort your glyph list by that column.

User Interface»

  • We added scroll bars to more panels (Glyph, Font Info, View), so you can reduce their height and easily stack them on top of other panels.

  • Previously, when you switched to a lower screen resolution or made the app window smaller, some tools in the Toolbar were hidden to accommodate the change. Now, when you switch to a higher resolution or enlarge the app window, these hidden Toolbar icons will re-appear. Note: in rare cases where the icons don’t re-appear, dock the toolbar to the main app window to force it.

  • In FontLab VI, a glyph can have one or more “tags”, short words that allow you to group glyphs in different way. In addition to the tags you define, FontLab automatically assigns virtual tags to glyphs. Virtual tags describe the character case, the script the glyph belongs to, and some visual characteristics. You can see all virtual tags in your font, and the glyphs that have them, in Classes panel > Virtual Tags. You can manually assign (type) your own tags in the Glyph panel and in the Glyph window Property bar. New: If you manually assign a tag to a glyph that is otherwise a virtual tag, or if you click the +V button in the Tags dropdown field in the Glyph window Property bar, the virtual tag will be rendered as light gray text.

Font Info»

  • Font Info > Guides has two new columns, Width and Expression so you can set the font guide widths and assign their position using complex expressions in Font Info, not just in the Guides panel.

  • Font Info > Family Dimensions and Font Info > Font Dimensions both have two new copy/paste buttons, just above the “OK” button at the bottom right of the dialog. These allow you to copy/paste the entire set of family or font dimensions between masters and fonts you have open in FontLab.

Open, Save and Export»

  • The VFJ file format (FontLab VI JSON) has a new structure which is more human-readable.

  • When you export a color font into the OpenType TT+CBDT or OpenType TT+sbix format (by creating a custom profile and enabling the subformats in the Export color font files), the resulting fonts are some 10–35% smaller thanks to improved PNG compression.

  • File > Profiles > Outlines offers a new option, “Open contours.” When checked, it allows open (unclosed) contours to be exported in final-format fonts such as TTF and OTF. Simple line segments are maintained as is. This brings back an option available in FontLab Studio 5, which is useful for people making fonts for various kinds of cutting and engraving machines.

Bug fixes»

Glyph Editing»

  • Character placeholders for missing glyphs now render in Contour modes of the Glyph window

  • Remove Overlap ignored selected contours sometimes and worked for the whole glyph. This is fixed now

  • When you set a grid distance in Preferences > Grid, turn on View > Show > Grid and View > Snap > Grid, zooming out in the Glyph window hides some grid points/lines to avoid visual clutter.

  • Previously, snapping only happened on the visible grid points. Now, snapping works on all grid points, even the ones that are not shown.

  • Also, in those situations, the visible grid always starts at the origin point of the current glyph.

  • Handle direction of tangent nodes (smooth connection of line to curve) is preserved while moving the contour up and down with cursor keys.

  • When you Alt-drag a Sharp or Tangent node, the node moves but keeps its handles in place. This worked correctly until 6.0.6 but not in 6.0.7 and 6.0.8.

  • Copying and pasting elements as references works as expected — deleting and re-pasting elements no longer subtly scales them or changes their position.

  • Paste Special works correctly with font outlines, even when the font’s UPM size is other than 1000.

  • When you use Contour > Expand Contour on a contour drawn using the Brush tool, FontLab no longer crashes.

  • With some open contour configurations, Contour > Join no longer crashes FontLab.

  • When drawing using the Rapid tool, Undo now properly steps back one click at a time, instead of immediately undoing the entire Rapid drawing.

  • When you ungroup a group of named elements, element names are preserved. This also applies to groups inside groups (nested groups).

  • If you replace an element that is inside the group, the new element will also be part of the group, and no longer outside the group.

  • The dialog boxes in Element > Add Element Reference and Replace Element Reference now find glyphs and elements when their name begins with _.

Metrics & Kerning»

  • The buttons for bind sidebearings (both in the Glyph panel and the property bar of the Glyph Window) now work correctly in Metrics mode with the Measurement Line on.

  • The buttons to bind/unbind sidebearings in the property bar (active when using Metrics mode) work correctly to turn binding off as well as on.

Variations»

  • In variable fonts, an axis can have “0” as the default value, and this can be saved within the FontLab file.

  • In Font Info > Family Dimensions, any value that does not match the values for other masters is displayed with a yellow background, as a warning. This color alert is now instantaneously updated (turned on or off) when the values are changed.

Open, Save and Export»

  • Class kerning is exported correctly from a font with multiple masters when export masters or export instances is selected, instead of all masters/instances getting the same kerning from the first master.

  • FontLab now correctly imports design space locations for instances from .designspace files

  • When exporting a set of instances from a font with multiple masters, accents do not shift unexpectedly.

  • When exporting to a UFO package, FontLab no longer misses elements in glyphs that have more than one element.

  • The setting Preferences > Open Fonts > Compile feature definitions is functional when opening UFO font packages (i.e. it either does or does not compile the features upon opening).

  • When all three formats (in addition to VFC) were enabled in Preferences > Save Fonts > Also Save As, some complex variable fonts such as Decovar could cause Fontlab to hang during Save As. This is fixed.

  • VFC files that contain axis instances now open correctly.

  • The File menu commands (Export Font As, Font Info, Save Font) are still enabled, when Preferences > General > Fonts Map and Font panel controls fonts is on, one or more fonts are open, and there is no Font window or Glyph window open.

Other»

  • In the Features panel, compiling the features no longer reverts or deletes the modifications made to the feature code. (New problem introduced in 6.0.8.)

  • Tooltip for keyboard shortcut in Tools > Commands was fixed.

  • When you open a defective font with duplicate glyph names, FontLab VI 6.0.8 will not only alert you, but also automatically rename these glyphs at file open time. In 6.0.7, the application was only alerting you.

  • Multiple selection in the Glyph Bar is no longer allowed, as there is no effect of selecting multiple glyphs.

  • Using Fix All in the FontAudit panel no longer causes a crash.

  • Guides and font metrics lines are pixel-perfect even on non-Retina screens

  • Unnecessary layers are never generated when exporting OpenType+CBDT color fonts (Google/Chrome/Android flavor of color fonts, bitmap-based).

  • When you drag a TrueType off-curve point and then hold Alt, the movement no longer affects neighboring nodes or off-curve points.

  • The app no longer causes 100% CPU usage under certain circumstances.


FontLab VI version 6.0.8.6790»

5 August 2018

FontLab VI 6.0.8 adds improvements in composite and auto glyphs handling, including a quick way to create auto layers for multiple glyphs and layers, and an extended syntax for glyph recipes that allows scaling and flipping; a new Glyphs Bar; improvements in working with Genius nodes; more control over outline conversion from PostScript to TrueType; a “guides” section in Font Info; manual sorting of classes in the Classes panel; auto-complete and drag-drop support in the Features panel. It also has assorted bug fixes, especially around glyphs and elements.

Quick Help panel and Quick Tips»

When you turn on Help > Quick Help panel, a panel will appear that provides concise help depending on the currently active tool. This is the first implementation, we will extend the capabilities of the Quick Help panel so that it dynamically reacts to other UI elements that you activate.

The Welcome dialog box now includes helpful Quick Tips that change daily and reveal some lesser-known aspects of FontLab VI.

New encodings for beginners»

In the Font window property bar, in the Encoding dropdown, there are now two new encodings in the FontLab group: Latin Simple, which is a very basic glyph set for a Latin-based font, and Drawing, which is an even simpler one that groups Latin letters together by visual similarity. They’re useful as starting points for simple fonts.

Glyph window»

Create glyphs right in the Glyph window»

In Glyph window, you can double-click on a character placeholder for a non-existent glyph with the Contour or Element tool to create the glyph.

So you can paste a longer text right into the Text mode of a Glyph window, and then, with the Contour tool, just double-click glyphs one by one and draw them. Previously, creating a new glyph by double-click was only possible in the Font window.

Glyphs Bar»

Turn on View > Glyphs Bar or (on the Mac) press Ctrl` to show on a single-row mini-map of glyph cells at the bottom of the Glyph window. When the Glyphs Bar is visible, click on it or (on the Mac) press Ctrl` to activate it.

When the Glyphs Bar is active:

  • Use the arrow keys to navigate your glyph set (which is shown in the glyph index order).
  • Quickly type the beginning of a glyph name to jump to that glyph.
  • Hold Space to show a larger sample of the glyph cell along with the glyph name, Unicodes, character name and metrics values.
  • Double-click on a glyph cell or tap Enter to place that glyph as the current glyph in the Glyph window.
  • Tap Esc or click the Glyph window to leave the Glyphs Bar without changing the current glyph.

Click the triangle on its right end to move the Glyphs Bar to the top or to the bottom of the Glyph window. Click × or turn off View > Glyphs Bar to close the Glyphs Bar.

Manual curve segment conversion into TrueType»

In Glyph window, when you Alt-click on a PS curve segment using the Contour tool, now a dialog box appears that lets you choose how the segment will be converted into a TrueType segment.

Click on 1, 2 or 3 in the dialog or tap on 1, 2, 3, and the segment will use one, two or three TrueType off-curve points. Click on Auto or tap A to use the settings specified in Preferences > Curve Conversion. As long as the dialog is open, you can test the different configurations. Close the dialog by clicking on OK, tapping Enter or clicking outside the dialog to confirm the conversion. Tap R or click on Revert to cancel the conversion, then close the dialog.

Note: You can convert all glyphs into TrueType curves via Contour > Convert > To TT Curves using the settings from Preferences, and then in individual glyphs, Alt-click on a segment to convert it to PS, and Alt-click again to perform the customizable conversion with the dialog box.

When you ShiftAlt-click on a PS curve segment using the Contour tool, the segment will the converted into a TrueType curve segment with “auto” settings (specified in Preferences > Curve Conversion).

Genius nodes»

When you Alt-drag a handle of a Genius node, the opposite handle will now adjust its angle (but not length) — same as dragging of Smooth node handles. This way, the node will stay G2-smooth but the change in the shape will potentially be smaller.

A Genius node will now behave as a Genius node, i.e. remain G2-smooth, if it’s between TrueType curve segments, or between a TrueType curve segment and a PostScript curve segment.

Shift-double-click on a Genius node handle now also aligns the opposite handle to horizontal or vertical, same as with Smooth nodes.

ShiftAlt-click on a Genius node handle now converts the node to Smooth and then retracts the handle, same as with Smooth nodes.

Selectively adding nodes on extrema and on implied TT on-curve points»

When you ShiftCtrlAlt-click on a PostScript curve segment, FontLab will check if the segment is missing a horizontal or vertical extremum. If it’s missing both, it will add an node at the extremum that is closer to where you clicked. If it’s missing just one, it will add it regardless of where you clicked the segment. If no extrema are missing, it it will do nothing.

When you ShiftCtrlAlt-click on a TrueType curve segment, FontLab will add a smooth node at the location of the closest implied TT on-curve point. If there is no implied on-curve point in the segment, it will do nothing.

Spacing controls»

With View > Show > Spacing Controls turned on, Cmd-click a sidebearing spacing control (the triangles right below the glyph) to jump to the appropriate field in the Property bar so you can edit the siebearing value there.

Composite and auto glyphs»

Turn Auto Layer on/off for multiple glyphs»

If you wish to turn the Auto Layer property for multiple glyphs in the current layer, you can use the Glyph > Auto Layer menu item.

In the Font window, select multiple glyphs. If any of the selected glyphs has an auto layer, then the Glyph > Auto layer checkbox will be on, and if you click that menu item, FontLab will turn off auto layers for all selected glyphs. If none of the selected glyphs has an auto layer, then the Glyph > Auto layer checkbox will be off, and if you click on that menu item, FontLab will turn on auto layers for all selected glyphs.

If you want to turn on auto layers for all selected glyphs, and some of the selected glyphs already have auto layers, just choose Glyph > Auto layer twice — the first time, it will turn the auto layer for all selected glyphs, then it will turn it on for all glyphs. Since turning auto layers off does not change the glyph content, but turning auto layers on replaces the existing content with auto-generated content, it’s “easier” to turn it off and then on.

In Glyph window, toggling Glyph > Auto Layer will affect the current glyph layer (it’s also in the context menu).

Note: To quickly turn on auto layer in selected glyphs in all masters, select them in the Font window, choose Font > Generate Glyphs, turn on Create auto layers, Rebuild existing glyphs, and choose All masters. Then click OK.

Extended glyph recipe syntax»

We’ve improved support for the extended glyph recipe syntax that is based on Frederik Berlaen’s Glyph Construction syntax, and is much more powerful and flexible than our old “legacy syntax.” Font > Generate Glyphs > Custom now accepts both approaches.

You can now use extended glyph recipes in auto layers if the auto layer’s custom recipe starts with =. For example, if you enter = R@origin,~0 into the custom glyph recipe field next to the Auto Layer toggle in the Layers and Master panel, the resulting glyph will be an upside-down “R”.

We’ve fixed a few bugs in handling the extended syntax, and we’ve documented both the legacy and the extended syntax in our User Manual.

Add a glyph note when generating glyphs»

When you use Font > Generate Glyphs > Custom, you can add glyph notes to the glyphs you generate.

In your glyph generation code, follow each entry with the #!, and then follow it by the text of the note. This works in both the legacy and the extended syntax. Use new lines to separate the entries for each glyph. For example, if your glyph generation code is A+acutecomb=Aacute #!To be finished, FontLab will build the glyph Aacute using the glyph recipe A+acutecomb, and the glyph will have the glyph note with the text To be finished.

More composite and auto glyph improvements»

  • If the alias.dat file has no glyph recipe for the current glyph’s name (or a synonym glyph name) and you turn on Auto Layer, and there is no custom recipe in the auto layer’s recipe field, the existing content of the glyph will remain intact.

  • When Preferences > Operations > fill created glyphs… is on, composite and auto glyphs are created using correct references even if the components are images.

Developing OpenType features»

Glyph name auto-complete»

When you’re editing the features code in the Features panel, tap / to open a dialog where you can type in a glyph name or just a part of it. Then use arrow keys to choose your desired glyph, press Enter and FontLab will insert the glyph name at the text cursor. The the actual / character will be inserted if you tap / inside a string or a comment, or if you quickly double-tap /.

Inline OpenType classes in the feature code via drag-drop»

Drag-drop one or more glyph cells from the Font window or the Font Map panel into the Features panel text area, and FontLab will place the glyph names where you dropped in a way that is compatible with the feature syntax (space-separated). Alt-drag-drop the glyph cells, the glyph names will additionally be surrounded with [], making an inline class. So for example, you can type sub, then Alt-drag-drop the lowercase letters, then type by and Alt-drag-drop the small caps letters, and you’ll get the code for a class-by-class feature substitution.

Management of font guides»

The new Guides section in File > Font Info > Guides lists all font guides and allows you to add, remove and edit guides. To edit a guide name, position or tags, double-click the characteristic. To add or remove guides, use the + and buttons below the list. To sort the list, click the desired column name you want to sort on (first click sets ascending order, click again for descending).

Remove images on selected glyphs»

To remove bitmap and/or SVG images from glyphs, select glyphs in the Font window, select the layer containing images in the Layers & Masters panel, and choose the Element > Image > Remove Image menu command.

Other improvements»

  • You can now manually reorder classes in the Classes panel by dragging them.

  • Redesigned the Element panel’s appearance, which now uses icons and a larger font for the element name.

  • It is now possible to use the * wildcard to filter pairs in Kerning panel. This is especially useful to filter pairs with extensions, such as *.smcp.

  • It is now possible to assign more than one Unicode codepoint to a glyph, as in FontLab Studio 5. In the Glyph panel’s Unicode field, enter Unicode codepoint values separated by commas.

  • Hiding of icons in the toolbar was further improved. When there is not enough room, first the View controls are hidden. If this is not enough, Matchmaker and TrueType Hinting are also hidden. (Previously, it was the reverse order.) Additionally, all buttons are immediately restored when the screen/window size is enlarged.

  • More UI elements get pixel-perfect rendering when the corresponding option is on in Preferences > Glyph Window (as it is by default).

  • The View panel is now active only when a Glyph window is in use.

  • The View panel now shows a scroll bar when there is not enough room to show all the options.

  • On Windows, most of “context menus” available in different parts of the interface now have hotkey shortcuts available. They are visible if you turn them on at the Windows system level, in Control Panel > Ease of Access > Keyboard > Underline access keys when available.

  • When FontLab opens a UFO, the .notdef glyph will be placed at glyph index 0 if it’s at a different glyph index, and if it’s not in the UFO, FontLab will add it. The glyphs NULL, CR and space will also be placed at the beginning of the glyph order. This is necessary so that FontLab can correctly compile and render the OpenType Layout features.

  • FontLab VI now uses new versions of font technology libraries: ICU v6.2 and new uranges.dat (they add support for Unicode 11), FreeType v2.9.1, Harfbuzz v1.8.4 and TTFAutohint v1.8.2.

Bug fixes»

  • Font Info > Parameters are now truly per master. Add or edit the parameter in the Font Info dialog, choosing the target master in the left bottom list, or in the top drop-down menu. This allows you to do things such as having an anchor using an expression that is dynamically positioned in each master.

  • FontLab now correctly remembers the orientation of the floating toolbar.

  • Some problems with the Python API have been addressed.

  • In text mode, forward Del (Windows, and extended Mac keyboards) key now works as expected, instead of replicating Backspace. This was partly fixed in a previous update, but is now fully fixed (including FnBackspace for forward Delete on compact Mac keyboards).

  • View position in the Glyph window is preserved when zooming, and also when changing glyphs via keyboard shortcuts (regardless the amount of zoom applied).

  • Similarly, anchors and guides also have different positions for each master, both with numeric values and with expressions.

  • Remove Overlap works correctly even for contours whose overlaps were generated with the Scissors tool, when fractional coordinates are on.

  • Element > Expand Filters works on all selected elements (not only for the “current element”)

  • The Window > Close Window command is now grayed out when it is not possible to apply it (this is, when there is no font or glyph window to be closed).

  • The Bind sidebearings buttons in Metrics mode property bar and in the Glyph panel now correctly use the absolute values even if the Measurement line is shown.

  • On Windows, it is now possible to type special characters using right Alt+key and right Alt+Shift+key combinations in the Text mode of the Glyph window and in the Preview panel. These combinations do not get in conflict with menu commands anymore.

  • Copy-pasting glyphs in the Font window no longer creates additional elements (with duplicate names).

  • Copy-pasting glyphs in the Font window preserves Smart corners

  • Position of the Metrics table toggles as expected, between the top and the bottom of Glyph Window, when you click on the arrow button (rightmost icon of table area).

  • Selection of multiple elements on the Sketchboard is fixed [Windows-only bug]

  • Removing a node between PS segment and TT segment on the same contour no longer corrupts the contour.

  • Scissors used on a TrueType curve never change the starting point to an off-curve point.

  • Contour > Reverse Contour no longer changes contour start points.

  • OpenType TT fonts now get the correct TT contour direction on export.

  • In the Glyph panel, the Unicode field is not erased when a user edits it, and then hits Enter.

  • Moving two adjacent selected handles (but not their associated on-curve points) of the same curve segment now behaves as you would expect.

  • Some fonts with multiple masters failed to update the Variations panel properly, resulting in some master sliders in the Variations panel appearing overlapped or “corrupted.” This is now fixed.

  • In a composite glyph (composed of more than one element), all element guides are shown.

  • The Join command (Cmd+J) now works as expected on an open contour which is a copy of another one right behind it.

  • FontLab now sets the OS/2.ulUnicodeRange.Surrogates bit and the OS/2.usLastCharIndex value correctly, even if there is just one glyph beyond the Basic Multilingual Plane.

  • Fonts exported in VFJ by FontLab are more compatible with the Python JSON parser.

  • The Elements panel always includes elements on the Sketchboard, even without any open font.

  • The Edit > Find Glyphs… dialog now shows firstly the exact matches, making the procedure quicker.

  • FontLab doesn’t occasionally crash when you hit Space in the Find Glyph dialog

  • Using the Tab key in the Edit > Find Glyphs… dialog now correctly toggles between text field and glyphs table.

  • When drawing with the Pen tool and using Shift to make handles horizontal/vertical, with the Contour > Coordinates > Preview Rounding option on, FontLab no longer positions some handles incorrectly.

  • The factor field in Actions > Change Power Width respects the font UPM and can accept floating values

  • Scroll bars in Windows and panels are now slightly wider.

  • Running Create [mark] and [mkmk] features from the Features panel pop-down (“hamburger”) menu does not crash.

  • Fonts with no stems defined no longer issue an autohinting warning when exported to OpenType PS.

  • Custom axis tags are now correctly imported from the fvar table of OpenType fonts, and from DesignSpace files.

  • After clicking Fix All in the FontAudit panel, Glyph window has the focus.

  • FontLab no longer crashes when you do File > Revert Font on some particular fonts.

  • Undo works when editing kerning.

  • When browsing “Pairs & Phrases” using up and down arrows, the list no longer loops—clicking down from the last item doesn’t take you to the first item.

  • The File menu commands (Export Font As, Font Info, Save Font) are now enabled when the Fonts panel controls fonts and there is no font or glyph window open

  • Paste Special works correctly with outlines in fonts with UPM size other than 1000

  • When you drag a TT off-curve point and then hold Alt, FontLab will no longer change some other TT off-curve points.


FontLab VI version 6.0.7.6774»

20 July 2018

Bug fixes:

  • The caret cursor appearance is improved in the Text mode.
  • App no longer hangs after opening a Glyph window, with certain fonts.
  • The @ character works again as the stand-in for current glyph, in the Context mode of the Preview panel.
  • When you open an OpenType font, FontLab stores the kerning in the original binary form, as a decompiled kern feature and converts it into visual kerning that you can edit with the Kerning tool. When you modify the visual kerning, the decompiled kern feature gets out of sync, so FontLab asks you if you want to remove it so it can later be rebuilt. Previous builds did indeed remove the outdated kern feature but still kept the original binary kerning, and when you exported an OpenType font, wrote the original binary kerning instead of the new kerning built from the visual kerning you’ve modified. This works correctly now.
  • Remove Overlap works for contours with Smart corners correctly now.
  • (Python) No longer crashes when using components
  • (Python, Windows-only) FL legacy module works again
  • (Python) In build 6772, certain Python API functions were removed but in 6774 they work again as in older builds.

FontLab VI version 6.0.7.6772»

18 July 2018

FontLab VI 6.0.7 adds several major features: automatic composite glyphs with Auto glyphs, automatic in-context glyph editing with Cousins, pixel-perfect rendering inside the Glyph window, better geometric transformations, and a new Text mode property bar. It also includes improvements in handling Elements, glyph names and Unicode, FontAudit, contour editing, plus user interface tweaks and many bug fixes.

Major changes and new features»

Better Glyph window rendering»

The rendering of the Glyph window is now sharper. The results are most visible on screens with a low pixel density (non-Retina). The improvement also affects high-density or Retina screens, but less obviously.

In Preferences > Glyph window > Outline thickness, you can choose how thick glyph outlines should look in the Glyph window. The default is “normal” but you can make it “thin” or “thick.” (For an even thinner outline, also turn off ==View > Show > Smooth Outline).

Pixel-perfect rendering»

The most important change, however, is Preferences > Glyph window > Pixel-perfect rendering (on by default). When this is on, the rendering of all outlines (especially with View > Show > Smooth Outline turned on) and also of all nodes, guides, sidebearings, font metrics and the crosshair will be rounded to full screen pixels, so all lines drawn in the Glyph window will be sharper, especially on “non-Retina” screens. If you’ve ever found the contents of your Glyph window “blurry,” pixel-perfect rendering will make you happy!

Scoreboard»

We’ve improved the presentation of the Scoreboard that we’ve introduced in 6.0.6. Turn on View > Scoreboard to see a movable, resizable numeric readout that will show coordinates for points, anchors, guidelines etc. as you’re moving them with your pointer. The Scoreboard now uses a monospace font and renders sharper.

Cousins: automatic in-context glyph editing»

FontLab VI has a new View option: Cousins. When you’re designing a glyph in a Glyph window, enable View > Cousins to see a “stack” of visually related glyphs in the background.

For example, the glyphs “b p þ” are visually related, and so are “c e o”. So when you’re working on a glyph in one of these sets, it may be useful to see the others if they are present in the font. In a way, Cousins are like a dynamic mask layer, that automatically provides visual context for your current glyph. In FontLab Studio 5, the equivalent of Cousins were called “shape groups.”

In Preferences > Cousins, you can decide whether Cousins should be rendered filled (with adjustable transparency), or as outlines. You can also decide how the Cousins should be placed in relation to the current glyph: aligned to the LSB, RSB or the center, and optionally shifted by a X/Y unit distance. With Use metrics, the Cousins will be placed to the left or right of your current glyph, shifted by their advance width (this works best if you only have one glyph in your Glyph window).

In Preferences, you can define which glyphs are “cousins” by listing them (a default list is provided), using space-separated Unicode characters or glyph names, one cousin group per line. Enable Double-click to edit the glyph if you want to be able to quickly switch between the Cousins that you’re editing.

Layers and Masters panel»

The Layers and Masters panel has been redesigned: its top section now has a Show layer properties toggle. Enable it to expand the bottom panel section that includes:

  • An editable text field for the layer’s name. You can also edit the layer’s name right in the layers list by double-clicking it.
  • The Auto layer toggle (that looks like “building blocks”) with an editable text field for the glyph generation recipe. You can use this to turn the glyph into an Auto glyph (see below).
  • The layer’s transparency slider that controls the layer’s visibility within the FontLab VI user interface. This does not affect the font export.

Auto glyphs: automatic, live composite glyphs»

This build introduces the concept of an auto glyph: an automatic composite glyph. Auto glyphs are automatically generated and will automatically update whenever you change the contours, element positions, anchors or metrics in any of the component glyphs.

To declare a glyph an “auto glyph” in a particular layer or master, turn on the Auto layer toggle (“building blocks” icon) of a glyph’s layer or master in the top-right part of the Glyph window’s property bar, or in the properties section of the Layers and Masters panel.

With “Auto layer” enabled, the glyph becomes an auto glyph in that layer. FontLab will now use a special glyph generation “recipe” to automatically build the content of the auto layer, and will keep it up-to-date. It will insert the appropriate component glyphs along with the metrics of the base glyphs, will add the glyph guides and it will smartly inherit anchors from the component glyphs. If the component glyphs have anchors, these anchors will be used to position the mark components. So an auto glyph is a “live composite glyph.”

Generate Glyphs, composite glyphs and auto glyphs»

The Auto layer is a property of a particular layer in a particular glyph, so you may have some masters that are auto layers, and some masters that are “manual” layers. If any layer of a glyph is an auto layer, we refer to that glyph as an “auto glyph”. Auto glyphs receive the auto virtual tag, so you can search for them in the Font window or show them in the Classes panel.

In the Font > Generate Glyphs dialog, there is a new checkbox: Create auto layers. If you turn it on, FontLab will generate auto layers (in all masters or the active master only, your choice). The resulting glyphs will have auto layers where you cannot change the element positions, the advance width, the sidebearings, the glyph guides or the anchors. But if you change the contours, metrics, glyph guides or anchor positions in any of the original glyphs, the auto layer that uses them as components will automatically update.

If you turn off the Create auto layers checkbox but keep Link as references on, FontLab will generate “composite glyph layers with references.” In the generated composite glyph layers, the content (contours) of each inserted element reference (component) will update when you edit the original glyphs — but the positioning, metrics, anchors and guides will be independent of the primary glyphs and will not be automatically updated.

If you also turn off Link as references, the resulting composite glyph layer will not use references, so each element will be fully independent of any primary glyphs.

If you turn off the Auto layer toggle in any existing auto glyph, the layer becomes a composite glyph layer with references, where you can add or remove elements, guides or anchors, change the metrics, draw new shapes and edit the entire content. If you turn on the Auto layer toggle in any existing glyph, the layer will be completely replaced with automatically generated content.

In Preferences > Operations > New Glyphs, if you turn on fill created glyphs with content when available then double-clicking on an empty glyph cell in the Font window will create manual layers with references in all font masters, but if you also turn on create auto layers if possible, then auto layers will be created.

How does FontLab know how to fill an auto layer with content?»

When you generate an auto layer, FontLab uses its Generate Glyphs functionality.

FontLab has a built-in alias.dat database that, for a number of “known” glyph names includes “recipes” that define how a given glyph should be generated from component glyphs. If you place your own alias.dat file in the Data subfolder inside FontLab’s user data folder, FontLab will use that instead.

For example, when you generate the Agrave (“À”) glyph, FontLab will try to find the recipe that describes the generation of the Agrave in the alias.dat file. If it finds one or more such recipes, it will:

  • Find the first recipe, and then will find the A base glyph, then find the the grave.case mark glyph, and insert them as components into Agrave glyph. The Agrave glyph will get the advance width of A since that is the base glyph.
  • If any of the component glyphs cannot be found in the font, FontLab will attempt a fallback recipe, which is to insert the A glyph and the gravecomb glyph. If those are not found, it will try A and grave.
  • If none of the recipes give the full result, FontLab will use the last recipe and build the glyph using as many component glyphs as it can find.

Example: If the A base glyph has a top anchor placed somewhere above the letterform, and either the grave.case or the gravecomb mark glyph has a _top anchor placed somewhere below the letterform, then in Agrave, FontLab will position the _top anchor of the mark glyph in the same location as the top anchor of the base glyph. You can use any anchor names as long as the anchor in the mark glyph uses the same name as the one in the base glyph, but with a _ prefix. If the glyphs don’t have matching anchors, FontLab will use the positioning clues encoded in the glyph generation recipe, which in this case will be “horizontally center the grave.case glyph” or “horizontally center the gravecomb glyph and raise it by the difference of the font master’s caps height and x-height.”

All the glyph needs, to be automatically generated, is an appropriate glyph name.

Custom glyph generation recipes»

If FontLab’s alias.dat doesn’t know how to generate your glyph, or if you use a different glyph naming scheme, or if you’d like to provide some positioning clues for your component glyphs, you can use custom glyph generation recipes. These recipes use a special syntax that tells FontLab which components it should add to the glyph, and provides clues where to place them. FontLab VI can use one of two syntaxes for custom glyph generation recipes:

  • The “legacy” syntax which is compatible with FontLab Studio 5 and can be used in the Generate Glyphs dialog box, in alias.dat and in auto layers
  • The GlyphConstruction syntax which can only be used in Font > Generate Glyphs > Custom (but not in auto layers)

You can use the legacy syntax in the recipe text field next to the Auto layer toggle to specify a custom recipe for that auto layer. Then, FontLab will not look up the glyph name in alias.dat but instead, it will interpret the custom auto layer recipe specified in that text field.

Example: If the Agrave glyph has an auto layer with an empty recipe field, it will use the alias.dat recipe, as described above. But if you enter A+uni0300 in that field, FontLab will use that recipe instead, and build the auto layer from as many component glyphs as it can find in the font.

If FontLab cannot find a component required by a recipe, it will still generate the auto layer, but will print warning in the Output panel. If one glyph’s recipe refers to itself or to a second glyph which in turn refers to the first glyph, FontLab will not generate an auto layer and print a “circular references” error.

The legacy syntax allows you to add a base glyph (which contributes the width) and one or more mark glyphs (e.g. A+dieresiscomb+acutecomb) and to create ligature glyphs (e.g. f_i or 'f_f'_i). You can even shift some components in x and y (but anchor-based positioning will take precedence). Check the details.

So, why not draw acutecomb as a zero-width glyph and make the acute glyph an auto glyph with the custom space+acutecomb recipe, or define one.tnum as an auto glyph with the custom recipe uni2007+one?

Other Generate Glyphs enhancements»

  • Auto layers and composite glyph layers inherit glyph guides from all component glyphs used to generate the layer. For example: glyph guides present in A and in acutecomb will be reproduced in Aacute.

  • Auto layers and composite glyph layers inherit anchors from all component glyphs used to generate the layer, but without duplicated anchors. When FontLab generates the Aringacute manual or auto layer using the A+ringcomb+acutecomb recipe, and all three component glyphs have a top anchor, the final glyph will get the top anchor from acutecomb, placed accordingly. Anchors not present in acutecomb will be inherited from ringcomb, and finally, those not present there, from A.

  • Auto layers and composite glyph layers inherit tags from their base component letters.

  • When you generate glyphs (composite or auto) with Font > Generate Glyphs, you can immediately open them in a new Glyph window for editing. This is controlled by a new checkbox which is on by default.

Text mode»

When Auto Wrap is on, the Text mode now shows where the text will wrap, using a darker background.

Text mode property bar»

We have redesigned the Text mode property bar.

  • In the middle of the Text mode property bar, you now see a brand-new thumbnail list of glyphs related to the current glyph (i.e. the glyph that precedes the Text Mode’s text cursor). Click on any thumbnail and the glyph will be inserted at the cursor, or — if you have any glyphs selected in the Glyph window — will replace that selection.
  • The Find button at the end of the thumbnail list opens the Edit > Find Glyphs floating dialog that allows you to make a more precise search using different criteria.
  • To the left of the thumbnail list, there is a text field that shows the name of the current glyph. You can start typing a glyph name into that field and the thumbnail list will show the results. Click on any result, and the glyph will be inserted, or hit the Enter key while typing the name, and the first result will be inserted.

To the right of the thumbnail list we have:

  • Two case buttons: Text to uppercase and Text to lowercase. These change the case of text currently selected (using the text mode cursor), or of all visible text if none is selected.
  • The Features button, which opens a floating dialog that allows you to apply OpenType features to the entire visible text. You need to have features defined and compiled in the Features panel. The Features checkbox enables feature processing, which will also activate Right-to-Left and script-specific Unicode processing. With the checkbox enabled, you can choose which features should be enabled.
  • The text size selector for the Glyph window. View > Actual Text Size will show the text in that size, other zoom levels are relative to that size.
  • Tracking and line height selectors. They are hidden if they don’t fit to the window width.
  • The Texts button that opens a floating text editor for the Text phrases. You can apply any of the phrases to the Glyph window using Text > Next Phrase and Text > Previous Phrase, and using the Pairs and Phrases panel.
  • The Auto wrap and Show Text bar toggles.
  • The Flag selector and the universal Search box (hidden if doesn’t fit).

Geometric transformations»

Contour-level vs. element-level transformation»

FontLab VI can apply geometric transformations on two levels: the element level or the contour level.

  • Element level:

  • You transform the “element box” itself, not “contents of the element box.”

  • The node coordinates inside the element remain untransformed.
  • Transformations applied on the element level are non-destructive; they are visible and editable in the Elements panel.
  • The references to this element remain unaffected (the transformation is only visible in the glyphs where it was applied).
  • In the Gallery panel, elements appear untransformed.

  • Contour level:

  • You transform “the contents of the element box.”

  • The node coordinates inside the element are transformed permanently.
  • The node coordinates are rounded if Contour > Coordinates > Round when Editing is on.
  • All references to the element are affected (the transformation is visible in all composite glyphs).
  • In the Gallery panel, elements appear transformed.

Transform panel in the Glyph window»

If you use the Transform panel in the Glyph window with the Contour tool:

  • Horizontal and vertical flip, shift, scale, rotate and slant will be applied on the contour level:
  • if you’ve selected any or all nodes,
  • if the current element is not referenced in other glyphs (regardless of the node selection),
  • if the current element is referenced in other glyphs but you’ve selected all nodes.
  • Otherwise, those transformations will be applied on the element level.

Transform panel in the Font window»

When you select multiple glyphs in the Font window, enter a value for shift, scale, slant or rotate in the Transform panel, and click on Apply, FontLab will check if other glyphs use any of the selected glyphs as references. If this is the case, FontLab will show a dialog box asking if you want to also transform references of the current layer, or if you want to transform selected glyphs only.

This has important implications:

If you choose to apply the transformation to Also references (default), then:

  • FontLab will apply the transformation on the contour level in all selected glyphs.
  • This is similar to how transforming a glyph cell of a contour glyph worked in FontLab Studio 5.
  • Example: Select the A glyph but not Aacute (which uses A as a reference) in the Font window, apply a slant in the Transform panel and choose Also references:

  • The contours of the current A layer will be slanted.

  • The node coordinates will be rounded if Contour > Coordinates > Round when Editing is on.
  • You will also see the result of the slanting in Aacute, but only for the A element — because you’ve transformed “the contents of the element box”, so all references are affected.
  • In the Gallery panel, the element will be slanted.

If you choose to apply the transformation to Selected only, then:

  • For glyphs that are not used as references, FontLab will apply the transformation on the contour level (just like described above).
  • For glyphs that are used as references, FontLab will apply the transformation on the element level.
  • Example: Select the A glyph but not Aacute (which uses A as a reference) in the Font window, apply a slant in the Transform panel and choose Selected only:

  • The contours of the current A layer will not be slanted. Instead, the element inside the A current glyph layer the will have a non-destructive slant applied (visible in the Elements panel).

  • The same element referenced in Aacute will remain upright.
  • In the Gallery panel, the element will remain upright.

Note: If you select some glyphs in the Font window and use the Transform panel:

  • Horizontal and vertical flip always work on the element level.
  • The dialog box will only appear if the contour-level (Also references) shift, scale, rotation or slant would affect glyphs that you haven’t selected.
  • If you select all glyphs, or you select the composite glyphs that use certain references and all the source glyphs for these references, FontLab will perform the transformation on the contour level, and will also shift the elements in composite glyphs according to the transformation.
  • If you only select composite glyphs but not the sources of their references, FontLab will perform the transformation on the element level (equivalent to transforming TrueType or UFO components in composite glyphs).

Transformations in the Actions dialog»

When you transform glyphs via Tools > Actions > Basics (Scale, Shift, Slant or Rotate), FontLab will behave as if you’ve chosen the “Selected only” transformation. It will apply the transformation on the contour level if it can, and will use element-level transformation only if contour-level transformation would affect glyphs that you haven’t selected.

Other improvements»

User interface»

Compact Toolbar»

The toolbar is more compact, so it fits better on smaller screens. It is also smarter: if it does not fully fit on screen, it hides the the Matchmaker and TrueType hinting tools first, and then the View toggles.

Glyph window property bar»

  • With the Preferences > Editing > Glyph window property bar setting, you can now decide whether the property bar of a Glyph window should be located at the top or at the bottom of the window. You may find a better visual balance of the window when the property bar is at the bottom.

  • The Glyph window property bar now first shows the font, then the layer/master switcher, and then the current glyph name. The layer/master switcher no longer moves around when you switch between different glyphs.

Brush tool property bar»

The dropdown list of the brush tool sizes in the Property bar for the Brush tool now includes several standard sizes in addition to sizes that match the font stems defined in Font Info.

Elements»

  • When View > Element Frame is on, the current element now shows a vertical line that goes through its center when you use the Contour tool and the element is locked, or when you use the Element tool. This is similar how FontLab Studio 5 displayed the active component.
  • Element guides are now also visible for grouped elements.
  • Element > Image > Interpret SVG is now called Make SVG Editable. This more clearly describes the operation. When you import an SVG, FontLab keeps it in its native form, with gradients, transparencies and all sorts of tricks. You can scale and rotate such an SVG but you cannot modify the contours inside it. But when you make an SVG editable, FontLab will convert it into FontLab native elements, composed of images and editable contours. As this conversion is not perfect, in some cases the results may be unexpected, and some properties such as gradients will be lost in conversion. But you will then be able to edit the individual contours.

FontAudit»

  • Improved algorithm for FontAudit fixing weak inflections. FontAudit now tries adjusting the curve through handle lengths and balancing. (FontAudit no longer adds nodes to fix a weak inflection; previously this often made things worse rather than better.)
  • Open contours are now highlighted with a lilac color instead of the circle used in the previous release.
  • FontAudit will not perform tests for missing extrema, nearly-horizontal or nearly-vertical lines on an element that is rotated or slanted.

Preview panel»

  • If the Content selector in the Preview panel’s sidebar is set to Current and you type in some custom text into the panel, the selector automatically switches to Custom, so your custom text is shown even if you change the text in the Glyph window. Switch it back to Current to reflect the contents of the Glyph window.
  • If you turn on Show glyph names (the “abc” icon), a glyph names bar will appear at the bottom of the panel. Now you can enter text there, using the glyphtext notation (character, /glyphname or \uUnicode).

Variations»

  • FontLab can add, rename and remove guidelines across masters as long as the corresponding option is on in Preferences > Variations > Synchronize in matching masters. Note: Unnamed glyph guidelines cannot be removed across masters. You might consider immediately naming any guidelines created across masters (after selecting the guideline, use the Guide panel, or the property bar of the Glyph window).

  • When you open a VFC or VFJ font with multiple layers, FontLab will check if any of the font masters has a suspiciously low number of glyphs while another layer has a large glyph set. If this is the case, FontLab will offer to let you decide which layer should be used as a font master, and allows you to rename the new master.

Glyph names and Unicode»

  • FontLab prevents you from assigning the same Unicode to two or more glyphs, and provides a warning dialog to help you deal with the conflict. (Previously, such duplicated Unicode values were possible, and could cause unexpected glyph renaming/reencoding on export.)

  • In the Glyph > Rename Glyph dialog, if you enter and accept a new glyph name, and the name change should also change the Unicode codepoint, a new Unicode will be assigned as well (e.g. when you change the glyph name from B to D or to uni4719).

  • If you drag a Font window glyph cell for a glyph with a uniXXXX-style name to cell that has a different Unicode, the glyph will be automatically renamed to reflect the target Unicode.

TrueType Smoothing (gasp table)»

Handling of the gasp table settings that are available in FontInfo > Other Values > TrueType Hinting and Smoothing is improved:

  • FontLab now correctly adds a gasp table record with bit 1 off (no smoothing) at the PPM specified in the No smoothing up to PPM setting if that PPM is >0.
  • FontLab now correctly adds a gasp table record with bit 3 off (no symmetric ClearType smoothing) at the PPM specified in No vertical smoothing up to PPM setting. If that PPM is 0, the actual PPM will be auto-calculated.
  • FontLab now correctly imports the PPM values for No smoothing up to PPM and No vertical smoothing up to PPM when reading the gasp table records from TTF, VFB and UFO.

Python installation on Windows»

On Windows 64-bit systems, it is now possible keep FontLab Studio 5 with the 32-bit Python installed and, in addition, install the 64-bit version of FontLab VI along with the 64-bit version of Python. Both the 32-bit and 64-bit versions of Python can co-exist now.

  1. When you install the 64-bit version or the 32-bit version of FontLab VI for Windows for the first time, you can configure the path at which its respective 64-bit or 32-bit Python is installed.
  2. If you already have 32-bit Python installed, and you install the 32-bit Python using the FontLab VI installer, your existing 32-bit Python install will be overwritten regardless of the selected path. Similarly, if you already have 64-bit Python installed, and you install the 64-bit Python using the FontLab VI installer, your existing 64-bit Python install will be overwritten regardless of the selected path.
  3. 32-bit Python and 64-bit Python are now treated independently, so they may co-exist in the system. For example, you can install the 64-bit Python 2.7 in the C:\Python27 folder and install the 32-bit Python 2.7 in C:\Python27_x86 folder. FontLab Studio 5 (which is 32-bit), FontLab VI 32-bit and FontLab VI 64-bit can all co-exist and use the proper Python version.
  4. When you install FontLab VI for Windows in the “silent” mode, the installer doesn’t install Python. You should install it separately, if needed.

Bug fixes»

Transformations»

  • Path direction remains unchanged, when you use the Transform panel or Tools > Transform menu to flip/mirror a glyph. Previously, when nothing was selected and the whole glyph was affected, path direction would be reversed.

  • Element transformations are more consistently tracked in the History panel, and updated correctly in the Font window. Undo works more consistently with element transformations, no matter how they were applied.

  • Element > Expand Transformation can be applied to selected cells in the Font window. Elements having references with different transformations applied are unaffected.

  • Rotating glyphs 180° in the Font window (using the Transform panel on selected glyph cells) no longer changes sidebearings.

  • Transformation of multiple selected glyphs in the Font window was improved to avoid “double” transformations.

Contour editing in the Glyph window»

  • If Preview Rounding is on, moving one handle of a smooth node that is at a non-integer position no longer causes the other handle to change its length.

  • You can now Alt-drag a retracted handle (a zero-length handle that is on top of a node) from a sharp, smooth or tangent node of a curve segment, not just from a sharp node.

  • When you retract a handle by ShiftAlt-click, the contour updates immediately.

  • When you convert a node from smooth to sharp via double-click, the node maintains its most recent sharp handle positions.

  • If a curve segment has one or both adjacent nodes as “tangent” nodes, ++Alt+-drag on the curve does not changes the tangent node handle direction; it only affects handle length.

  • When you retract a handle, further operations on neighboring nodes and handles no longer “corrupt” the display of contour and fill.

  • Alt-drag of TrueType contour with inflection no longer “corrupts” the display of contour and fill.

  • The large cross cursor (Preferences > Editing > Show cross) updates properly while you are sliding a node via ++Alt-Shift++-drag.

  • Deleting selected points with the Backspace key removes all the points, even if one is a contour’s startpoint.

  • Free marquee/selection of adjacent glyphs works, even when the current glyph layer is empty [Windows-only bug]

  • Doing Contour > Align no longer moves handles to zero position.

  • The Text Bar is updated correctly after results from the Search box are inserted into a Glyph window.

  • Changes from the Brush panel applied to a contour drawn with Brush tool: changes can be undone, and appear in the History panel.

  • Remove Overlap now gives correct results in some complex cases involving both interior counters and three or more contours, when some of those contours touch without overlapping.

Smart Corners»

  • Preserving corner tension when converting smart corners to non-smart curves with Apply Smart Corner. In Font Info > Master Properties > Font Dimensions two settings control the appearance of all smart corners in a font master: Corner Tension defines the tension of the smart corners (0 are completely flat corners, 60 is the default, 100 is quite rectangular round corners), and Ink trap width controls the width of the ink traps (2 is default). Previously, the values defined there only worked in the preview, while the default values were used when you converted the smart corners into plain contours using Apply Smart Corner. Now the correct values are used when you apply a smart corner.

  • Pasting contours to an element with Smart corners is fixed so that the pasted contour can still be selected.

  • Contour > Remove Smart Corners works on all selected elements, not just the current element.

Rulers, Guides, zooming, measurement»

  • Rulers now update instantly when you change the zoom, without any lag.

  • Zoom-in and zoom-out using Alt-scrollwheel when the Pen tool is active doesn’t cause a crash.

  • Quick measurement line measures the stem thickness on the current layer correctly, even when the mask layer is visible.

  • We now use the term “guide” more consistently throughout the UI (never “guideline”)

  • Element guides no longer show incorrect angle values in the Property bar, nor present unexpected results when you edit their Property bar values.

  • When the selection includes an Element guide, movements made with Cmd-arrow keys still apply the multiplier (defined in Preferences > Distances).

  • Guides using expressions with the width parameter are created correctly, and update instantly.

  • Tabbing between fields in the Guides panel is faster, and the tab order is corrected.

Elements»

  • Creating an element using New Element and then drawing with Rectangle, Ellipse, Pen, Pencil, or Rapid tool no longer leaves any extra empty elements in the glyph.

  • Copying a contour, and pasting it as an element into a new empty glyph, then editing it, no longer causes redraw problems during editing.

  • With multiple Elements selected, the arrow (cursor) keys still work to move them.

  • With the Element tool active, click, hold and drag correctly creates a copy of the contour instead of a reference.

  • Element rotation value does not change randomly when switching between fields in the Elements panel.

  • The command Element > Combine Contours to Element had its name adjusted (“to Element” instead of “to Elements”) as the result is always a single element.

  • Doing Element > Remove Filter on an Element referenced by others no longer unlinks those references.

  • The dialogs for Element > Add Element Reference and Element > Replace Element now remember the last options you used.

  • Combine Contours to Element operation now preserves Smart corners without applying them.

  • When Preview Rounding is on, decimal values entered in the Elements panel are converted to integer values upon leaving focus.

  • The commands =Element > Arrange > Send to Back= (=Cmd+Shift+[=) and =Element > Arrange > Bring to Front= (=Cmd+Shift+[=) can be used more than once within the same glyph without undoing the previous “Arrange.”

Anchors and Pins»

  • The positions of pins and anchors are updated on the Sketchboard when you drag them.

  • When a pin is pasted from one element to another, there is no lag before it is visible.

  • When an anchor is copied from one glyph and pasted to another, it remains an anchor instead of being converted to a pin.

  • Pins no longer incorrectly replicate across Elements.

  • Moving anchors using arrows + Cmd key now uses the correct multiplier (ten times the Shift+arrow value defined in Preferences > Distances).

  • Unchecking the Use anchors checkbox in Font > Generate Glyphs dialog now correctly disables use of anchors.

Generate Glyphs»

  • The glyphs for the characters ĢĶķĻļŅņŖŗȘșŢţ are now always generated using the uni0326 or commaaccent diacritic glyphs, regardless of whether the glyph names are in the format of Gcommaaccent or uni0122.

  • Some characters that formerly incorrectly got cedilla accents when auto-generated, now get the correct commaaccent.

  • The glyphs Eth, Dcroat and uni0189 are now generated correctly.

Metrics and Kerning»

  • When you bind sidebearings, they are updated instantly when elements are moved (for example, glyphs composed of multiple elements with pins). You no longer need to use the Update Metrics command in such cases.

  • The Measurement line can be moved, and turned off, in all editing modes.

  • When the Measurement Line is visible:

  • sidebearing values shown in the Glyph panel are now correct.

  • the Metrics Table shows the correct sidebearing values in all modes (metrics, kerning, and editing contours).

  • Changes made to font metrics (ascender, descender, caps height and x-height) in the Glyph window by dragging can be Undone.

  • Accessing the Adjust kerning dialog from the pop-up (“hamburger“) menu of the Kerning panel works again.

  • Automatic metrics linking (Font > Link Glyph Metrics…) is smarter about which glyphs it picks to link to.

  • Changing the background color for the Kerning mode in Preferences > Spacing is saved correctly.

  • Kerning some glyphs containing bitmap images does not crash.

Variations & Layers»

  • Building a glyph by manually adding elements now affects only the current master/layer. Other masters/layers do not get added elements.

  • Variations compatibility options in Preferences > Variations are now off by default, so editing one layer does not automatically affect other layers in a Variable Font.

  • When you duplicate a layer:

  • Expressions used at glyph-level (such as in anchors or glyph guides) are fully preserved.

  • No unexpected additional pins appear.

  • Position of the Remove Layer dialog was adjusted to always fit window boundaries.

  • Lock, service, and wireframe options for layers work correctly in the Layers panel, even when the panel is docked horizontally and the names of the layers are very long.

Font window»

  • When you turn off a filter on the Font window, your default sorting criterion (specified in Preferences > Font window) is applied.

  • When the glyph name implies one Unicode (e.g. “uniE0123”) but the actual assigned Unicode is different (e.g. “E0765”), this no longer “confuses” the Font window into showing glyphs in an incorrect order, or multiple times.

  • Copy-pasting a glyph in the Font window, and then Undoing it, no longer erases guides. (Yes, this was the most bizarre bug found and fixed in this release.)

  • In Preferences > Font window, three incorrect tooltips were removed.

  • Fixed a delay in Font window preview when new contours are pasted in a glyph.

  • When a VFC file is opened, the Font window sorts glyph cells correctly, according to the view settings (Encoding, Codepage, Script etc.) saved in the VFC file.

Compiling and decompiling OpenType features»

  • When compiling OpenType Layout features that have no languagesystem definitions, FontLab automatically inserts languagesystem definitions for all Unicode scripts covered by the font’s character set. (This feature was temporarily broken on Mac.)

  • Custom names for stylistic set features which include the quote symbol are compiled correctly.

  • Decompiling the mark feature is improved.

  • When opening OpenType fonts, decompiling GPOS and GSUB tables succeeds with more fonts.

Opening fonts»

  • Opening a VFJ file containing extra spaces and/or tabs no longer causes a crash.

  • Another VFJ-opening crash was fixed.

Saving and exporting fonts»

  • When a custom export profile turns off PostScript autohinting, FontLab no longer ignores this (turning off autohinting is now successful).

  • If you have a Save As dialog and cancel the save, FontLab presents only one warning dialog, no matter how many files would have been generated.

  • FontLab no longer crashes when exporting an OpenType PS (.otf) font instance from certain multiple master fonts.

Other fixes»

  • The Preview panel no longer jumps to the first glyph when you switch editing tools.

  • Applying an Action to a glyph built from multiple elements does not cause a crash.

  • Resetting preferences to default, or applying a saved set of preferences, does not change View options.

  • Using the Text tool on the Sketchboard no longer causes a crash.

  • Undo/redo now works properly for the text strings entered in Preview panel.

  • Live preview (Preferences > Editing > Live preview) is now faster when editing curves with arrow keys

  • Opacity of artwork imported to the Sketchboard and set to zero is correctly remembered, even after the app is relaunched.

  • Tabs no longer “hide” after docking windows. This issue only affected Microsoft Windows users who had Preferences > General > Windows and tabs configuration on the second or third option.

  • FontLab doesn’t hang when opening certain VFC files with multiple Glyph windows opened when you have Preferences > General > Windows and tabs configuration on the third option, Fonts and glyphs open in windows (Windows-only).

  • Switching from the Text tool to the Contour tool no longer opens a new Glyph window unexpectedly. (Windows-only)


FontLab VI version 6.0.6.6722»

30 May 2018

FontLab VI 6.0.6 is even a bigger improvement than 6.0.5, with some 180 improvements (80 new features or enhancements, and 100 bug fixes)! Among others, 6.0.6 allows you to automatically synchronize editing operations such as adding or removing nodes across matching masters, brings major improvements in the Metrics and Kerning workflows, and some important enhancements in variable fonts handling. Plus, FontLab VI now supports the UFO3 format!

New and improved features»

Drawing»

  • New Convert to smooth curve segment operation: you can instantly convert any line segment to a curve segment, and make the surrounding nodes smooth with ShiftAlt-click on the segment (so you’ll get an actually curved curve segment). (If you just want a curve but not smooth connections, use Alt-click.)

  • The Rectangle tool has a new “eraser” mode. If you enable the eraser mode in the Property bar and draw a rectangle over an existing shape in the current element, the filled portions of the existing shape covered by the rectangle will be instantly removed (trimmed).

  • In Contour mode, ShiftPage Down or FnShiftDown will select additional nodes and handles along the contour (in the direction of the contour) and ShiftPage Up or FnShiftUp will select additional nodes and handles in the direction opposite to the contour direction.

  • When you create overlaps by connecting two nodes using the Scissors tool, the results were often incorrect especially if the nodes were adjunct to curve segments or line segments at different angles. The results are much better now.

Grid and Guides»

  • When you have two nodes selected, choose Tools > Add Guide to add a glyph guide that goes through those nodes.

  • If you have a non-zero italic angle specified in Font Info > Font Dimensions, you can slant any guide to that angle with the guide’s context menu entry Slant to italic angle

  • If you have non-zero grid slant angle specified in Preferences > Grid (with the Follow the font’s Italic Angle setting disabled), you can slant any guide to that angle with the guide’s context menu entry Slant to grid

  • You can show or hide the Measurement Line with the CtrlAltL keyboard shortcut

  • The setting Preferences > Grid > On-curve nodes always snap to the grid is now called Round nodes, guides and anchors to grid points. With this setting on, snapping to the grid becomes “strong” i.e. nodes, guides and anchors (but not handles) snap to it immediately.

FontAudit»

  • FontAudit has a new test Open Contour for any open contour. This test is disabled by default but you can turn it on in the FontAudit panel. If you choose to fix an Open Contour, FontAudit will close the contour with a line segment.

  • New Glyph > Fix FontAudit Problems command will fix the FontAudit problems in the current layer for the current glyph, or (in Font Window) for selected glyphs. You can control which problems will be fixed by enabling/disabling tests in the FontAudit panel.

Variations, masters and layers»

  • View > Masters relations now shows the Master relation lines more clearly for selected nodes.

  • The color-coding for master matching used in the Layers and Masters panel is now also used in the Master switcher in the Property bar of the Glyph window. The inactive masters are shown:

  • on a pale red background if they don’t match (aren’t point-compatible) with the current master and cannot be interpolated

  • on a pale yellow background if they partially match with the current master (they have the same number of elements, nodes and contours but the ordering, contour direction or point types mismatch
  • on a pale green background if they fully match with the current master

  • Copy Outline to Mask is renamed to Copy to Mask and now works for image elements as well as outlines

  • When you add a new layer in the Layers panel and enable Fill new layer with content of this font, you can choose the master of that font.

Synchronize editing operations in matching masters»

If you enable Edit Across Layers and Edit Across Elements and make several layers or masters visible in the Layers panel, and then you can use various editing tools to edit contours in the current layer or master and in all other visible layers or masters at once — as if these layers were one layer. This setting works regardless of whether the masters match or not, and does not guarantee that you will get matching masters as a result. For example, you still need to add or remove a node in all the contours from all the masters — you can just do it faster.

Now, we’re introducing a new series of settings: Preferences > Variations > Synchronize in matching masters. With these settings enabled, you can perform a certain operation in the current master, and the same operation will be “repeated” in all other masters that match the current master. Non-matching masters, masters that are set to non-interpolable in Font Info > Masters, and other layers are not affected.

You can enable the following Synchronize in matching masters settings:

  • Delete node: when you delete one or more nodes, one or more segments or even contours in the current master, the corresponding objects will be deleted from all other matching masters
  • Insert node: when you add a node (using CtrlAlt-click with the Contour tool, a click with the Knife tool or a click with the Pen tool) or multiple nodes (drag with the Knife tool) in the current master, nodes will be added in analogous locations on all other matching masters
  • Rename node: renaming a node in the current master will rename the corresponding node in all other matching masters
  • Add and rename guide: creating a guide in the current master will create corresponding guides in all other matching masters, and renaming will work similarly

(Note: There are several additional settings in the preferences which are disabled, because they are not yet implemented).

Keep in mind that Synchronize in matching masters and Edit Across Layers work separately. For example, if Edit Across Layers is on, you can drag the Knife tool to add nodes across contours belonging to different masters. But if you also have Synchronize in matching masters > Insert node on, then FontLab:

  • will insert some nodes in the contours of the current master
  • will then repeat inserting of the nodes in the contours of all other matching masters in analogous locations
  • will then insert nodes in some contours of the other masters that you’ve dragged the Knife through

In the end, the other masters may get more nodes inserted, and as a result, the masters will become incompatible. Therefore, we recommend using either Edit Across Layers or Synchronize in matching masters but not both.

Font Window»

To help you distinguish between a font that has multiple masters and a font that has a single master, the title bar of the Font Window:

  • for a single-master font shows an icon with four rectangles followed by the font’s Full Name
  • for a font with multiple masters shows an icon with vertical stripes followed by the font’s Family Name, and, after a colon, the name of the currently active Master

Font Info»

  • When you create a font with multiple masters (e.g. via Font > Merge Fonts to Masters or by adding a master in Font Info), FontLab automatically adds an axis. It will make an educated guess whether to create a Weight or a Width axis. You can always change the type of the axis in Font Info > Axes. Previously, the Weight and Width axes would sometimes be implicit, i.e. they were not added in Font Info.

  • When you add an axis with File > Font Info > Axes > +, you can choose from a set of predefined axes or create a custom axis.

  • When you rename a master using Font Info > Names > Master name, the changes are instantly visible in the Font Info master switcher.

Variations Panel»

The Map view of the Variations Panel has been redesigned:

  • if the font has no axes, the map view is blank
  • if the font has one axis, the master locations are arranged horizontally (and not diagonally), and the location is shown only once
  • if the font has two axes, the Map view shows the 2D view of the location; you can choose which axis should be shown horizontally and which vertically
  • if the font has three or more axes, you can choose which axis should be shown horizontally and which vertically; additional axes are then shown as sliders below the map

Instances»

When you choose a dynamic instance in the Variations Panel (by positioning the blue dot in the Map view, by choosing a combination of sliders in the List view or by picking a predefined instance in the Instances mode of the List view), you can click on the Generate instance as master or font button (top-right of the panel) and choose:

  • Add as Master to add the currently selected instance as a new font master in the same font
  • Create as Font to create a new single-master font that has the contents of the currently selected instance (similar to Generate Instance in FontLab Studio 5)

This functionality is also available as Font > Generate Instance, and both places now use the same terminology. .

Non-linear axis mapping»

You can now define non-linear axis mapping for each variation axis. You do this by specifying the external number, an equal sign, and then your internal number: e.g. 700=230 to make an external number of 700 equal your internal number of 230.

If you use your own design locations (for example your Width axis uses the stem thickness) but wish to export a variable font with standardized user locations (going from 1 to 1000, with Regular at 400 and Bold at 700), go to Font Info > Axes and in the “axis instances” area (large text field at the bottom of each axis definition), use the following syntax: "Extra Light" 100=16, (Regular) 400=80, Semibold 600=150, Bold 700=230.

With this syntax, you specify “axis instances”, i.e. special locations on the axis, that have a name and two sets of locations.

The axis instance names such as “Extra Light”, “Semibold”, “Bold” are elements from which FontLab builds style names when you use Font Info > Instances > From Axes. "Extra Light" is in quotes because it consists of two words. (Regular) is in parentheses because it’s an elidable name element, i.e. it will not be used when the complete style name is built, if there are elements beyond “Regular.” These names may in future also be used to build axis value names in the OpenType STAT table (but this is not yet implemented).

The number after the = is the design location, i.e. the location on the axis as you see and use it within FontLab VI.

The number before the = is the user location, which is used as follows:

  • When you create predefined instances in Font Info > Instances > From Axes, the user locations for the Weight axis are used to automatically build the Weight class style attribute (OS/2.usWeightClass) when you export the predefined instances as traditional static fonts.
  • For all axes, when you export your font as OpenType Variations, FontLab will create mapping points between each design location and a user location along the axis. This way, you can control the speed of the end-user’s slider on each segment between these mapping points. If there are more than 3 axis instances, FontLab will automatically create an avar OpenType table as required by the spec.
  • For all axes, when you export your font as DesignSpace + UFO, the mapping between design locations and user locations will written into the .designspace file as the axis map.

Generate Glyphs»

  • Font > Generate Glyphs no longer removes an inactive layer/master when the Active Master Only setting is on.

  • Generating a glyph generates not just font masters, but also glyph masters, if any source glyph had them

Classes, Metrics (Spacing) and Kerning»

Metrics editing»

  • When in Font tab/window with one or more glyphs selected, you can open them in a Metrics tab/window (i.e. Glyph tab/window in Metrics mode): click the Metrics tool on the toolbar or Cmd-double-click (Mac) / Cmd-double-click (Windows) on the selection.

  • When in a Glyph tab/window, press ShiftAltCmdM (Mac) / ShiftAltCtrlM (Windows) or choose Window > New Metrics Tab or …Window to open a new Metrics tab/window with the same text contents. This also works with the Font window selection.

  • The Metrics mode of the Glyph window/tab now has a custom pointer (cursor)

  • You can customize the background color for the Metrics mode separately from Kerning mode in Preferences > Spacing

  • In the Metrics mode of the Glyph window:

  • When the Pairs and Phrases panel is invisible, you can:
    • use Up or Ctrl[ to go to the previous line in the current text
    • use Down or Ctrl] to go to the next line in the current text
    • use FnCmdUp+ (Mac) or CtrlPage Up (Windows) to go to the previous text phrase
    • use FnCmdDown+ (Mac) or CtrlPage Down (Windows) to go to the next text phrase
  • When the Pairs and Phrases panel is visible, the behavior changes slightly:
    • use Up or Ctrl[ to go to the previous line in the current text, and if you’re in the first line, to the previous text phrase
    • use Down or Ctrl] to go to the next line in the current text, and if you’re in the last line, to the next text phrase

(Note: if the Pairs and Phrases panel is set to Pairs, pair phrases will be used instead of text phrases.)

Kerning editing»

  • When in Font tab/window with one or more glyphs selected, you can open them as a Kerning tab/window (i.e. Glyph tab/window in Kerning mode): click the Kerning tool on the toolbar, AltCmd-double-click (Mac) / AltCmd-double-click (Windows) on the selection.

  • When in a Glyph tab/window, press ShiftAltCmdK (Mac) / ShiftAltCtrlK (Windows) or choose Window > New Kerning Tab or …Window to open a new Kerning tab/window with the same text contents. This also works with the Font window selection.

  • The Kerning mode of the Glyph window/tab now has a custom pointer (cursor)

  • You can customize the background color for the Kerning mode separately from Metrics mode in Preferences > Spacing

  • The Semicolon key applies autokerning to the current pair in the Kerning mode of the Glyph window.

  • The settings for autokerning are now in Preferences > Spacing.

  • In the Kerning mode of the Glyph window:

  • When the Kerning panel is invisible, you can:
    • use Up or Ctrl[ to go to the previous line in the current text, and if you’re in the first line, to the previous pair phrase
    • use Down or Ctrl] to go to the next line in the current text, and if you’re in the last line, to the next pair phrase
    • use FnCmdUp+ (Mac) or CtrlPage Up (Windows) to go to the previous pair phrase
    • use FnCmdDown+ (Mac) or CtrlPage Down (Windows) to go to the next pair phrase
  • When the Kerning panel is visible and the Pairs and Phrases panel is invisible, the behavior changes slightly:
    • use Up to go to the previous line in the current text, and if you’re in the first line, to the previous existing kerning pair
    • use Down to go to the next line in the current text, and if you’re in the last line, to the next existing kerning pair
    • use FnCmdUp+ (Mac) or CtrlPage Up (Windows) to go to the previous pair phrase
    • use FnCmdDown+ (Mac) or CtrlPage Down (Windows) to go to the next pair phrase

(Note: if the Pairs and Phrases panel is set to Texts, text phrases will be used instead of pair phrases.)

Classes panel»

  • In the Classes panel, you can select two classes and then edit the contents of both classes side-by-side. When you’re kerning, the Classes panel automatically shows the appropriate 1st and 2nd class.

  • You can copy-paste multiple classes between font masters or different fonts.

  • When you delete a kerning class in the Classes panel, FontLab will flatten the kerning pairs that use that class.

  • When kerning class is cleaned using the Clean Up Class operation after glyphs deletion, kerns that use those deleted glyphs are also removed

  • The Reset command in the Classes panel local menus is now called Remove All Classes.

Kerning panel»

  • Browsing through the kerning pairs in the Kerning panel by clicking or using Up/Down now puts the current pair into the Glyph Window. When you select multiple pairs in the Kerning panel, they will be placed in the Glyph Window in multiple lines.

  • When you click on the small gray rectangle left of a class-based pair in the First column of the Kerning panel, or you Ctrl-click on the pair in the panel, the Glyph window will show all glyphs from the 1st class kerned against the 2nd glyph (or a representative glyph of the 2nd class).

  • When you click on the small gray rectangle left of a class-based pair in the Second column of the Kerning panel, or you Alt-click on the pair in the panel, the Glyph window will show the 1st glyph (or a representative glyph of the 1st class) kerned against class kerned against all glyphs from the 2nd class.

  • When you Alt-click on either of the small gray rectangles, the Glyph window will show all glyphs from the 1st class kerned against class kerned against all glyphs from the 2nd class.

  • You can use Left/Right to increase or decrease the value for all kerning pairs selected in the Kerning panel.

  • When the “HOH” toggle is enabled in the Kerning panel and you choose a kerning pair, the Glyph Window will show that pair in context, i.e. surrounded by some glyphs that are selected automatically.

  • In the Kerning panel, you can now copy and paste kerning pairs (between masters or fonts).

  • The “eye” button at the bottom of the Kerning panel shows and hides the kerning pair preview in the panel.

  • The Remove Pairs… command (available from the Kerning panel’s local menu, previously named Filter) is improved:

  • The option to remove kerning pairs below a given value now uses the less or equal to operator, allows the value 0, and can preserve small numbers when they are exceptions.

  • There is a new clean-up option to remove pairs for non-existent glyphs or empty classes.

  • The searches using the Filter box and the dropdown selectors (All glyphs, Selected Glyphs, Glyphs in Encoding) work faster. Remember that the Filter box accepts syntax such as A V, * V, A * where * means “any glyph’.

  • You can now apply color flags to kerning pairs in the Kerning panel. If you’ve also applied color flags to classes in the Classes panel, the resulting color flag will be a mixture of the class color flag and the pair color flag. Note: you may need to enlarge the panel to see the UI elements for applying Color flags.

  • The Reset command in the Kerning panel local menus is now called Remove All Pairs.

Other improvements for Kerning»

  • When you generate or export instances from a multiple-master font, kerning pairs with the value of 0 are removed.

  • FontLab now suggests you to remove the kern feature from the Features panel if you modify the font’s visual kerning. You can rebuild the kern feature using the Features panel local menu command. When you export the font, FontLab will generate the kern feature (according to the setting in the export profile).

  • When you remove all kerning with Remove All Pairs in the Kerning panel’s local menu, FontLab will asks you if you want to remove the kern feature if it exists. If you choose Yes and then undo, the first Undo will restore the kern feature, the second Undo will restore the kerning.

Glyphs and Elements»

  • Copy-pasting a glyph in the Font Window pastes an independent glyph, rather than an Element Reference

  • You can now duplicate one or more glyphs in the Font Window using Edit > Duplicate, and assign a glyph name suffix in the dialog that opens.

  • You can now add or remove tags from multiple selected glyphs in the Font Window, while preserving all other existing tags for these glyphs. To do this, select the glyphs and, in the Tags field of the Glyph panel:

  • prefix the tag with + to add it to all selected glyphs (e.g. type +tofix to add the tofix tag to the glyphs)

  • prefix the tag with - to remove it from all selected glyphs (e.g. type -tofix to remove the tofix tag from the glyphs)
  • if you omit the + you are replacing all tags in the selected glyphs with the new tags

  • In the Gallery panel, you can Alt-drag-drop one Element onto a second Element: FontLab will then ask you if you want to replace all references to the second Element by references to the first Element in all glyphs of the current master.

Files and Formats»

Saving»

  • When you’re closing a font that you’ve modified, FontLab asks you if you want to save the changes. You can now choose Don’t Save by pressing CmdD or CmdDel (Mac-only).

  • You can now choose the human-readable text-based “FontLab VI JSON (VFJ)” format in the File > Save As… dialog. However, all subsequent saves (using File > Save) will be done in the FontLab VI (VFC) binary format. If you want to keep saving the VFJ format, you can now enable it in Preferences > Save Fonts as an additional save format — then, on every save, both VFC and VFJ will be created.

Autosave»

The autosave is improved. With Preferences > Save Fonts > Autosave opened fonts enabled, when you create a new font or open a font in any format and modify it, FontLab will start automatically saving a copy in ~/Library/Application Support/FontLab/FontLab VI/Autosave (Mac) or C:\Users\YOURNAME\AppData\Roaming\Fontlab\FontLab VI\Autosave (Windows) using a unique filename, in the frequency specified in the Preferences. Previously, some files were not autosaved.

Note: FontLab will remove the autosaved files if you close the font or quit the app. If FontLab crashes and you restart it, it will ask if you want to recover the autosaved files.

UFO version 3»

FontLab VI now has preliminary (“beta”) support for the UFO version 3 interchange format.

Since UFO3 support is still in beta, the default export profiles (UFO Package and DesignSpace + UFO) still use UFO2. To export UFO3, go to File > Profiles, select the DesignSpace + UFO or UFO Package profile, click on the + button and in the profile properties:

  • Change the Profile name (for example to UFO3 Package or UFO3 + DesignSpace).
  • Disable the Use legacy format version setting. This enables UFO version 3.
  • Optionally, change the Profile subfolder to something else. This string will be used to form the subfolder name if you export the font with the Subfolders by: Profile setting enabled.

Note: FontLab VI treats UFO as an import/export format, so it’s not fully round-trippable. FontLab supports practically all of “standard” UFO3 constructs, but it does not read custom font or glyph lib properties, and does not export color glyphs into UFO3. Glyphs that use filters such as Power Brush, Smart Corners or Glue, or compound elements, are exported as plain outlines.

VFB import»

When opening a VFB, FontLab will convert Metrics classes into metrics expressions where appropriate. If you used “Metrics Assistance” in FontLab Studio 5 to copy some metrics from a source glyph to some target glyphs, FontLab VI will form expressions in those target glyphs only if their metrics are still identical to the source metrics. If the target metrics differ from the source metrics, FontLab VI will use the numerical values.

User interface»

  • Better tab/window navigation. The Glyph/Font tabs headers are now wide — they take all available space. When you open new tab/window from a tab/window and then close that new tab/window, you are returned to the tab/window that you were previously working on.

  • Better UI contrast. When Preferences > Glyph Window > High contrast rendering is enabled, more UI elements are now darker, now including Genius and Servant nodes as well as Spacing controls for inactive glyphs.

  • Scoreboard. The new View > Scoreboard toggle shows a large “numeric readout” that shows coordinates for points, anchors, guidelines etc. as you’re moving them with your pointer. You can move or resize the Scoreboard. Useful if you’re working on a large monitor where the normal UI elements are tiny.

  • Workspaces. When you save a workspace, additional properties of currently open panels (such as opened panel sections) will be saved.

  • Icons (with tooltips) have replaced text labels in the Property bar (above the Font or Glyph window), and in the Glyph panel.

Auto Preview in Text mode»

When you activate the Text tool in a Glyph window and then don’t perform any actions, after a few seconds of inactivity the Text mode turns into Auto Preview, and the text cursor disappears.

In Auto Preview, instead of keys producing text, they have the same effect as in other editing modes of the Glyph window: you can zoom in/out using the Z and X keys, pan using the Space key and use other any single-key shortcuts. To activate the Text mode again, click where you want the text cursor to appear.

Preview panel»

  • You can now customize the foreground and background color of the Preview panel (useful for previewing fonts in low-contrast situations)

  • Cmd-double-click on a glyph in the Preview panel to open the glyph for editing in the Glyph window

  • In the Preview panel, the Context mode now allows you to change the default string. To do that, open the context dialog with the gear button next to the mode selection. (You can still also change the text temporarily, either by direct typing, or by editing the glyph names bar, but these changes do not affect the default.). Note: in the context string, the @ character stands for the current glyph

  • The Preview panel now remembers its settings between sessions

Other enhancements»

  • Font Info > Unicode Ranges now has complete support for the OS/2.ulUnicodeRange* fields (the ranges 70–84 and 91–122 were added).

  • In the Stems dialog of the TrueType Hinting mode, the tooltip for the auto button (diamond shape) now reads Auto-detect stems (was “Calculate Stems”)

Bugfixes»

Drawing and editing contours»

  • Tools > Clear Global Mask is now disabled if the global mask is blank

  • Improved moving anchors with keyboard arrows.

  • Editing of TrueType curves that include servant nodes is improved.

  • With Contour > Coordinates > Preview Rounding enabled, both paths and nodes are rounded correctly on screen in Smart Corners.

  • When you drag an element with the Element tool, or a contour selection with the Contour tool, the Property bar continuously updates the display of the x/y coordinates.

  • With Preview Rounding enabled, handles no longer change unexpectedly when you move a selection

  • The Nodes panel immediately shows the results of Preview Rounding.

  • FontAudit marks on Sketchboard with Preview Rounding enabled are no longer misplaced.

  • Right-click menu correctly appears for selected curve segment, even when Preferences > Editing > Clicking on outline selects segment is on (Win-only bug)

  • Alt-dragging a Tangent node now moves the node but keeps the handle in place even when Round while Editing is turned on.

  • The contextual pop-up menu for SVG elements no longer shows commands related to bitmap images (as they have no effect), and the menu entries in Elements > Image are appropriately disabled

  • Copy Outline to Global Mask no longer causes a crash when you do it after selecting an element with bitmaps

  • If you delete the Mask layer, Tools > Edit Mask is no longer checked afterwards

  • Fixed a three-way interaction between smart fill, smart corners and copy/paste creating unpredictable results

  • Contextual drop-down menu still available after doing Contour > Simplify

  • Font Guideline sliders in the Font Info panel work as expected

  • Context menu for guideline/metrics position works correctly

  • Nodes can be moved with the right arrow key, even after applying smart fill

  • Clicking too fast on FontAudit marks no longer causes a crash

  • After converting a horizontal or vertical guideline to a vector guideline, the defaults in Guidelines panel remain correct/unchanged

  • Nodes that are linked with magnet to Font Guidelines now move appropriately when the Font Guideline position is changed via Font Info > Parameters, Guidelines panel, or via Property bar

  • Undoing Transform panel actions in the Font window, on fonts with multiple Masters, no longer creates odd effects in glyph cells

  • Grid snap behavior of directly editing a segment no longer varies depending on whether you just edited a handle (BCP)

Variations, masters and layers»

  • Switching masters now centers on the active glyph even if your Glyph window contains a longer text.

  • FontLab no longer crashes when you edit a glyph that has multiple masters and some of the masters use open contours.

  • Alt. and Alt, switch layers correctly now even if there are locked layers

  • FontLab correctly switches to the main layer after deleting the mask layer

  • Undoing an operation doesn’t change which layer/masters is active

  • Glyph > Match Masters correctly reorders elements if “Check Masters Geometry” is turned on in the Variations panel

  • Map view is no longer empty in the Variations panel after Undo

  • When Layers panel is collapsed/compressed, the button to show layers still works.

  • When exporting the Glyph window contents in Text mode, interpolation is applied as appropriate

  • You can now remove one axis after another in Font Info

  • Removing an axis while in Font Info no longer sometimes crashes

  • File > Font Info > Instances: The “From Masters” button correctly imports variation locations

  • The Weight dropdown selector in File > Font Info > Instances correctly shows the current selection

  • When the preference “Convert TrueType curves to PostScript curves” is turned on, can still open “Bahnschrift” TrueType variable font instead of crashing

  • When a width axis is added to an existing font in File > Font Info > Axes, default location for pre-existing masters on the new axis is wd=100 (was incorrectly wd=112.5)

  • Locations (coordinates) of other masters do not change when you delete a master

  • Predefined instances are respected by the “Generate instance as master or font” operation

  • The “Attributes” drop-downs in the Font Info panel (not the full Font Info dialog) now work correctly for selecting weight, width and slope

  • Font dimensions such as x-height can be set differently per master, without glitches

Classes, Metrics (Spacing) and Kerning»

  • When the Measurement line is visible, the Glyph panel always shows the sidebearings calculated at the Measurement line

  • The Autokerning button now works correctly in the Pairs and Phrases panel, even for multiple selection

  • Tooltip for the “preview strings” button in the Metrics bar is corrected

  • When two or more classes are selected in the Classes panel, drag-dropping of glyphs to the list area respects the column so glyphs are added to the correct class

  • Opening a font with massive kerning such as Calibri Light (>400K pairs) no longer causes a crash

  • Editing kerning for inactive pair, when the “Inactive kerning pairs are editable” option is on, makes it active

  • In the Classes panel, glyphs with same name but different extension (like .case or .smcp) are no longer considered out of sync. For example: if the user select two matching classes, one with uppercase and other with small caps, FontLab will correctly consider them matching.

  • Using arrow keys to modify multiple kerning pairs selected in the Kerning panel is much faster now.

  • Activating a pair in the Kerning mode of the Glyph window no longer activates the pair in the Pairs and Phrases panel.

  • Undoing kerning changes is much faster now.

  • Measurement line no longer loses its special status and can’t be renamed.

  • Delete key works when editing kerning values

Glyphs and Elements»

  • When FontLab opens a VFC or VFJ that has multiple Elements that have the same name, it will rename these elements (if they’re different) or remove the duplicate elements (if they’re identical) and merge all references.

  • FontLab no longer allows or creates multiple Elements with the same name. It automatically makes Element names unique.

  • Generate Glyphs no longer wrongly applies color to generated glyphs when one of the source glyphs was a composite glyph

  • Using the color flag selector in the Glyph panel does not hang the application

  • The Property bar more consistently shows correct controls when you browse elements with the Element tool

  • Changing the opacity of an image element on Sketchboard with the slider does not cause a crash

  • Extensive operations with copying and pasting elements and references do not cause all guides to be removed

  • Rotation applied to glyphs selected in the Font Window works as expected

  • When an blank glyph is renamed in place, the change is immediately reflected in the Glyph Info panel

  • Renaming a glyph in place in the Font Window using the caption works properly, even when the window is in focus and the Glyph Info panel is docked

  • Typing special characters in Text mode using Alt works correctly (Mac-only bug)

Files and Formats»

  • When you export color fonts, FontLab will correctly keep transformations (scale, shift etc.) applied to SVG elements.

  • When opening Noto Sans Thai or Noto Sans Lao, all GPOS features are correctly decompiled into the FEA syntax, not just GSUB features

  • When multiple save formats are enabled in Preferences > Save Fonts and you Save As the font or Save a new font, the Save As dialog no longer appears multiple times.

  • The “Save changes to … before closing” dialog no longer shows the current master name

  • Removed the ineffective setting Preferences > Save Fonts > Save Windows. FontLab now always saves the windows and their contents in the VFC/VFJ formats.

  • FontLab correctly detects smooth nodes when opening VFB files

  • By default, FontLab JSON (VFJ) is now exported with indentation. You can turn the indentation off in Preferences > Save Fonts.

  • When you Cmd-click on a Font tab/window title, FontLab now shows a file icon that reflects the file format in which the current font is saved.

  • On UFO Package export, the data/com.fontlab.v2.otl.ttx.xml is not written if it is empty.

  • When you export PostScript Type 1 fonts, the exported AFM now includes all appropriate fields in its head section

  • When you export a font in the All Masters mode, and the Profile has the Remove Overlaps setting enabled, the overlaps are actually removed.

  • When you open a UFO on Windows by opening the metainfo.plist file and then export the font, the filename for the exported font will be equal to the Full Font Name and not the word metainfo.

  • When exporting DesignSpace+UFO, masters are fully included.

  • File > Import > Artwork shows the open dialog instead of failing

  • Both font export, and remove overlap on all glyphs in a font, work more reliably even when glyphs have many hundreds of nodes

  • Custom font export profiles for color fonts work more consistently

  • Keyboard shortcut for Import Artwork (Ctrl+D) still works when used repeatedly

  • Embedding setting is correctly saved to VFC

  • OT features can be exported to .fea file (File > Export > Features), without opening the Features panel first

Other bugfixes»

  • The toolbar is now intelligently sensitive to screen resolution. With a vertical toolbar, if there are not enough pixels to show the whole toolbar (for example, in 1280 x 800 or 1440 x 900 resolutions), the set of view buttons is hidden. If resolution is increased, the buttons will automatically be shown again.

  • Search field in Preferences pane no longer loses focus when typing certain phrases

  • The Preview panel with Preferences > Editing > Live preview enabled works much faster (no longer lags) when you move points with arrow keys.

  • In Text mode (when you use the Text tool in the Glyph window), the glyph before the text cursor automatically becomes the “current glyph”, so panels and other UI elements show its appropriate info.

  • App does not use excessive CPU cycles when inactive

  • Editing Commands immediately after editing Workspaces no longer crashes

  • No erratic crash from selecting Tools > Actions

  • No crash when closing fonts from an Adobe Type Reunion-compatible PostScript Type 1 font for Mac

  • When automatically calculating values for Font Info > BBox, fractional/decimal values now always round up to larger absolute value. For example, -350.4 rounds to -351.

  • Tags applied to stems in the TrueType Hinting dialog are preserved when the dialog is closed


FontLab VI version 6.0.5.6675»

12 April 2018

FontLab VI 6.0.5 is our biggest “dot release” to date, with over 100 improvements (40 new features or enhancements, and 60 bug fixes)!

New Features and Enhancements»

Autosave and Auto-Recovery»

When you enable the new option, Preferences > Save Fonts > Autosave opened fonts every … minutes, FontLab VI will automatically keep saving a backup copy of your working files as you work. You can set the frequency of autosaving in minutes, but you can also use fractions, e.g. if you enter 0.1, FontLab will autosave every 6 seconds.

The autosaved files do not overwrite the location where you are manually saving the file. Instead, they are stored in the ~/Library/Application Support/FontLab/FontLab VI/Autosave folder on macOS and in C:\Users\USERS\AppData\Roaming\Fontlab\FontLab VI\Autosave on Windows.

When you close a file or quit FontLab normally, and choose to either save or not save the opened file, the autosaved file will be deleted. But if your FontLab crashes and you start it again, it will detect the autosaved files and offer to automatically recover (reopen) them.

Note: We recommend the following Preferences > Save Fonts settings:

  1. Ask for the font file name — when you first save your font, FontLab will ask for the location and filename to save, subsequent saves will be done in the location you’ve chosen.
  2. Existing font files is set to Rename. Then, whenever you manually save a file (for example YourFileName.vfc), the previously-saved version will be renamed to YourFileName.YYMMDD-hhmm.vfc, where YYMMDD-hhmm is the date and time of when it was renamed. This serves as a series of auto-backups — you can always open any of the earlier versions if you’ve changed your mind about some edits.
  3. Autosave is enabled and set it to some reasonable setting. For example, 1 will autosave (in the special folder) once a minute, 0.1 autosaves once every 6 seconds (1/10 of a minute).

You may also enable any of the Save VFC and also options, but note that this will make your saves and auto-saves slower—especially if you’re saving UFO packages.

In short: with this release, you can have:

  • manually saved files (in the location you pick)
  • automatic backups of your manually saved files (in the same location)
  • the last autosaved version (in the special folder)

Drawing and Editing»

Easier editing with integer coordinates»

You can restrict FontLab VI to always work in integer coordinates. The new submenu Contour > Coordinates give you full control over integer coordinate rounding.

  • If you have fractional coordinates in a glyph, Apply Rounding will round them to integer coordinates in the current glyph layer, or (when used in Font Window) to all contours in the current glyph layer.

  • With the new Round when Editing setting, any editing (moving nodes and handles, scaling glyph content using the Free Transform tool) will produce integer point coordinates (like FontLab Studio 5). This setting will not modify your existing contours (for that, you need to run Apply Rounding, but with the setting on, your editing actions in the Glyph Window will always produce integer coordinates (except in the case described in the note below).

  • Note: Applying Rounding and Rounding when Editing will currently work only if the glyph does not use transformed elements. Currently, when you use the Transform panel or any transformation Action, FontLab VI will apply a non-destructive “element transformation” to any elements that have references (i.e. they’re in a composite glyph or they are used as a component in a composite glyph), and will apply a “contour transformation” only if an element in a glyph does not have references. The integer rounding always works on the contours in an element before their transformation is applied. We’re looking into how we can make the way transformations work more intuitive.

  • The Preview Rounding setting will also preview rounded coordinates within transformed elements — which is the result you’ll get after you export your fonts into font formats that use integer coordinates.

Other drawing and editing enhancements»

  • Preferences > Glyph Window > Show node name has a new third option, never. This option only affects Glyph Window viewing, node names will still be displayed in the Nodes panel.

  • During Free Transform, Undo cancels the transformation process in the same way it did in FontLab Studio 5, and does not undo the previous action

Variations»

Glyphs are created in all masters»

FontLab will now always create master layers if you create or generate a glyphs — for all font masters defined in Font Info.

Previously, when you had multiple font masters defined in Font Info, then adding a new glyph via double-click in the Font Window on a blank glyph cell, via Font > Generate Glyphs or Font > Add Glyphs behaved differently depending on whether a generation recipe glyph was present in the bundled alias.dat file.

When a glyph could be “generated”, its contents would be created for all font masters, but if the resulting glyph would be blank, then no masters were created in the glyph.

Generate Instance»

The new Font > Generate Instance command will allow you to choose any of the predefined instances or use sliders to precisely choose your instance and then:

  • Add as Master — add the instance as a new font master to the current multiaxis font in the axes location of the instance
  • Create as Font — create a new “static” font from an instance; the font will open as a new font in FontLab, so you can perform some post-production and save or export it

Previously, this functionality was only available in a limited fashion under the top-right button of the Variations panel.

Masters and axes sorting»

In Font Info > Font Properties > Masters, you can now sort your masters automatically and manually.

Clicking on the header above the font sample will sort the masters according to the way the axes are sorted, and then by the location of each master on an axis (you can sort your axes manually via drag-and-drop in Font Info > Font Properties > Axes).

Clicking on the Name or Location header will sort the masters alphabetically by the content of these fields. Click once for a descending sort, click again for an ascending sort.

You can also sort the masters manually via drag-and-drop.

Click on Apply or OK, and the sorting of your masters will be reflected in the Layers and Masters panel and in the masters switchers on top of the font and glyph windows. The order of the masters also is used when you switch the masters with Alt,/Alt., or with the Alt1 to Alt9 keyboard shortcuts.

The order of Axes in the Variations panel is now in sync with the order defined in Font Info.

Initial default sorting of axes when opening an existing font for the first time is improved.

#instance layer»

  • Viewing the #instance layer can be turned off in Preferences > Variations

  • Preview of the #instance layer is now live while you are editing a contour

Improved “Match Masters”»

The Glyph > Match Masters operation has been improved:

  • with any number of masters, when Sort contours and start nodes is on in Font Info > Axes or in the Variations panel, Match Masters will sort the contours and start nodes in a simple way

  • with any number of masters, when Check masters geometry is on in Font Info > Axes or in the Variations panel, Match Masters will sort the elements, and will perform more thorough geometry checking (including checking angles and rotation) when sorting the contours and start nodes, and will also will correct the contour direction if needed

  • with two masters, it will also attempt to “blend” the outlines i.e. automatically add or remove nodes on the contours

Other variations enhancements»

  • Extended parameters control. The Parameters tab in the Font Info panel / dialog now includes all values that can act as a parameter: font dimensions, font guides and user variables.

  • Font Info panel: Tooltips in the Parameters tab of the panel show correct information.

  • Hiding a layer also hides that layer’s associated Mask layer

  • Turning off Append master fonts removes the #instance layer from affected single-master fonts

  • FontLab VI uses the a newer build (3.24.3.dev0) of the fontTools library to export OpenType Variations TT (.ttf) fonts

Elements and Guidelines»

  • In the Element panel, when an element is locked, users can no longer do drag-drop reordering of contours within the element

  • Edit > Invert Selection (CmdI) works with the Element tool at the level of element selection (not only for contours)

  • Guideline panel (metrics, hints, alignment zones)

  • when a guideline that represents one of the font metrics (ascender, descender, caps heigth, x-height, baseline) is selected:

    • just two fields are active in Guideline panel, Position and Expression, as no other value is editable for font metrics.
    • an option to lock/unlock the font metrics is available
  • When a hint is selected in the Glyph window, the prefix “H” is shown in the Guideline panel

  • when an alignment zone is selected in the glyph window, the prefix “Z” is shown in the Guideline panel

  • when hints, links or alignment zones are selected in a Glyph window, the Properties controls in the Guideline panel are disabled as they aren’t applicable.

Classes and Kerning»

Classes panel»

With one or more classes selected in the Classes panel, you can now click on the Select glyphs button in the panel’s lower-right portion to select (in the Font Window) all glyphs that belong to the selected classes (like FontLab Studio 5).

This way, you can quickly assign a color flag to those glyphs (using the color flag picker in the Font Window).

You can also easily merge classes — select multiple classes, click on the Select glyphs button and then click on the + button in the bottom section of the middle part of the Classes panel. The selected glyphs will be added to the first class that you’ve selected, and — if this was a kerning class — they will be removed from the other kerning classes of the same type.

The Classes panel hamburger menu item Clean up selected classes will remove any glyphs from selected classes that are not present in the font (remember that classes can be defined using glyphnames and not all glyphs must necessarily exist in the font).

Note: In FontLab VI:

  • OpenType classes are defined once per font, and the order of the glyphs inside these classes matters.

  • Kerning classes are defined per master, but when instances or variable fonts are exported, classes from the main master are used (you can set the main master in Font Info > Masters using the blue radio button). To ensure that you have the same kerning classes in all your masters, visit each master and use the hamburger menu of the Classes panel to Import Classes, picking the main master each time.

  • When building variable fonts, kerning pairs that don’t exist in corner masters are assumed to have the value 0 but kerning pairs that don’t exist in intermediate masters get the interpolated value.

  • Kerning values that involve classes are stored with the class, not with the “key glyph of the class” as they were in FontLab Studio 5.

Kerning panel»

The Kerning panel has a few new operations in its “hamburger” menu (the popdown menu with three horizontal lines):

  • With Import Kerning you can import the kerning pairs and values from another open font or another master of your current font

  • With Flatten Class Kerning (previously: Expand), all kerning pairs that involve classes (class-to-class, glyph-to-class, class-to-glyph) are converted into a large flat list of glyph-to-glyph pairs.

  • With Compress to Class Kerning, you can convert your flat kerning into class kerning “safely” — only pairs where all class members have identical flat kerning values will be converted into a class kerning pair.

  • With Extend Class Kerning, you can convert your flat kerning into class kerning “more aggressively” (see notes below). This operation is great when you’ve kerned individual glyph pairs already (using flat kerning), and then you’ve created some classes or added glyphs to classes, and you want the glyphs in the new classes to inherit the kerning of the previously-defined individual glyph kerning pairs.

Notes:

  • When you run Flatten Class Kerning, the kerning classes aren’t removed. They are simply not used because the kerning pairs are now associated with glyphs.

  • In this build, when you run Flatten Class Kerning, the list of flattened kerning pairs will include kerning pairs for glyphs that are defined in the kerning classes but aren’t present in the font. This is a bug — please select all classes in the Classes panel and choose Clean up selected classes before flattening kerning.

  • The difference between Compress and Extend is the following: if you have two kerning classes (AÁÄ and VW) you have two flat kerning pairs (AV and AW) with the same value, but there are no flat kerning pairs that involve the Á or Ä glyphs, then:

  • Extend Class Kerning will produce one kerning pair between the AÁÄ class and the VW class; so after the operation, the glyph combination ÄV will have the same effective kerning as AV.

  • Compress to Class Kerning will produce one kerning pair between the A glyph and the VW class; so after the operation, the glyph combination ÄV will have no effective kerning.

  • The Flatten and Compress operations are fully reversible. When you have flat kerning, create some classes, then Compress and then Flatten, you’ll end up with the same number of pairs as you had before.

  • The Extend operation is more aggressive. When you have flat kerning, create some classes, then Extend and then Flatten, you’ll end up with more pairs than you started with. When there are some flat kerning pairs with one value and some flat pairs with another value, but glyphs that are kerned that way belong to the same kerning class, Extend will choose the more common value as the class kerning value, and the less common value as a series of exceptions.

Font Window»

  • New Font Window options: Unicode Categories, Scripts. Now the Font Window can be organized by Unicode Categories (Uppercase, Math Symbols, Punctuation, etc.) and Unicode Scripts (Latin, Cyrillic, Greek, etc.). This is in addition to the previous Encoding, Unicode, Codepage and Index viewing. The same viewing options are available in Font > Add Glyphs for adding new glyphs.

  • Preferences > Font Window now has options to set a default mode and default glyph sorting order (in addition to the default encoding).

User Interface»

  • The File > Font Info dialog box now has an Apply button which applies the ongoing changes to the currently opened font. Note: you actually need to click on Apply if you add, remove or rearrange axes in Font Info, only then the changes are visible in the Masters section of Font Info.

  • Renaming a master in Font Info > Master Properties > Names > Master name is instantly visible in the top and left-bottom master selectors.

  • Numeric keypad Enter key works for dialogs just like the main Enter key.

  • Preview panel automatically scrolls as needed to show the current glyph

  • Weight, Width, Slope and “Other” style attributes are referred to as Attributes in the Font Info panel. Previously, they were called “Parameters” but that term also was used elsewhere for another purpose.

  • Running the operation “Glyph > Add Power guides” makes font metrics and alignment zones visible, if they are made into Power guides and were not set to visible before. It also connects nodes from both sides of horizontal stems, not just one side.

Actions»

In Tools > Actions > Effects > Engraving it is now possible remove the image selected as a background (not only to add it)

OpenType Features»

The Features panel hamburger menu items Import Features File… and Import Features (from another open font) works even when the feature definitions reference glyphs that are not present in the current font. This way, you use a larger, pre-defined feature definitions file but create just the features your font needs .

Hinting»

  • The Preferences > Autohinting section now has two options for PostScript autohinting:

  • When Remove existing hints when autohinting a glyph is on, and you do Tools > Autohint or press F7, FontLab will remove the existing glyph hints before calculating new hints.

  • When Convert hints to links when autohinting is on, and you do Tools > Autohint or press F7, the hints will be subsequently converted to links (same as Tools > Hints to Links). Links are “dynamic hints” — when you move nodes, the links will follow your design changes. This is particularly useful when you use View > Show > Hints or View > Metrics and Hinting Shadows as a visual design aid.

  • When View > Show > Hints is on, hint thicknesses that correspond exactly to stem values defined in Font Info > Master Properties > Stems are rendered bold on screen.

  • In the TrueType Hinting tool, the popup for the Single Link command now has a Reverse button which reverses the direction of the link.

Production»

  • PostScript Type 1 font export now generates fonts with “custom encoding” instead of “standard encoding”, and the %!Windows Charset:238 special keywords in an .enc file are processed correctly. In this build, all Type 1 fonts will get custom encoding. In a future build, encodings will %!Windows Charset:0 will get standard encoding again.

  • Automatic Unicode assignment based on glyph names no longer assigns the Unicode values for phonetic small caps to glyph names such as “Asmall”. These names were standard for Adobe Expert Encoding, where they were typographic small caps. The phonetic small caps are not a complete set (not even A-Z) and cannot be used meaningfully for typographic small caps.

Bug Fixes»

Drawing and Editing»

  • Convert line to curve works even when a line is bracketed by two tangent nodes

  • Creation of handles by Alt-dragging a node is now more reliable

  • Open contours can be joined with the Pen tool

  • Edit > Find Outline replaces contours correctly, even when replacing multiple instances of the same contour

  • Pressing spacebar changes the cursor to a grabber hand (to pan the canvas) even when Brush tool is selected

  • Snap to grid continues to affect Pen tool even after switching to Contour tool, moving handles, and switching back to Pen

  • Snap to grid works even if grid opacity is set to zero

  • Guidelines now snap to the Grid if View > Snap to > Grid is on

  • Node coloring becoming solid when perpendicular continues to work even when handles are close to the node

  • Snap-to-node works even when dragging a point to a node that is on a guide

  • Activating Power Nudge temporarily by holding the c key and using shift-arrow key combinations with it does not cause Power Nudge to get “stuck” on.

  • Transforming selected contours doesn’t change node types

Glyphs, Elements and Color»

  • When a sticker is applied to a glyph, and the VFC file is saved and closed, the sticker is saved

  • An element with smart fill filter rotates and moves correctly now

  • Dragging an element to an empty glyph cell no longer crashes the app, and does not cause a name/Unicode conflict when the glyph is created.

  • Copying an element from one glyph slot to another

  • no longer changes the element location within the glyph

  • no longer creates a new separate element with a conflicting name

  • Element frames are slightly more visible now

  • Doing Font > Detect Element References does not break ability to move a selected node with the arrow keys

  • When you have two or more elements selected, and they belong to a larger group, you can still nudge or drag all the selected elements (not only the last one selected)

  • Tools > Remove Font Guides no longer removes zones as well as font guides

  • Adding a new font master filled with an existing layer does not break the element references on that duplicated layer

  • Element references are not displaced when adding a layer that duplicates the contents of another layer

  • Font > Detect Element References does not remove element guides

  • Element > Expand Filters can now be Undone

  • Element > Expand Stroke can now be Undone without creating duplicates

  • Expand Stroke respects stroke end caps, even when applied to multiple glyphs

  • Elements > Expand Filters works even when the Contour tool is active

  • Some stroked elements were previously rendered incorrectly

  • Apply buttons in the Colors and Swatches panels are enabled after the Glyph window closes

Variations»

  • Anchor cloud (from View > Anchor Cloud) from only the current master is shown in the Glyph window

  • Masters for blank glyphs such as space are shown as compatible in the Layers & Masters panel

  • Exporting a master does not break the family name

  • Fixed problem where “Check masters geometry” could prevent interpolation

  • Adding axes in Font Info > Axes no longer adds duplicate axes especially after master switch

Production»

  • Exporting TTF from VFB source with manual TrueType Hinting created in FontLab Studio 5, preserves that hinting properly

  • Export of variable fonts works again

  • Kerning is correct in all masters exported from a variable font.

  • Glyphs using multiple instances of the same element no longer lose any of them on export

  • When a Type 1 font’s glyph has a BBOX of 0, a generated AFM file still gets correct semicolon line ending

  • Generated AFM files use LF for line endings instead of (old-school Mac OS) CR

  • You can export a completely unhinted Type 1 font (autohinting only kicks in if you tell it to do so)

Other»

  • Transformations applied in the Elements panel become instantly visible in the Font Window

  • No crash from using Tab to show/hide panels

  • The very last changed field in FontInfo keeps its changes after you click OK

  • Trying to close a file while in the middle of saving it does not abort the save, nor crash the app if done repeatedly

  • When a color flag on a glyph is removed, and the VFC file is saved and closed, the flagging remains removed when the file is reopened

  • Copyright symbol in Font Info > Legal > Copyright is now displayed correctly

  • Fixed intermittent crash when using Add Power Guides

  • Undocked toolbar is no longer cut off when app window is resized

  • Preview panel still shows the correct layer after Contour > Apply Rounding

  • Fixed crash that happened when switching layers/masters in the Layers & Masters panel, in some circumstances

  • You can still rename glyphs in place in the Font Window when == Preferences > Font Window > Caption content is editable== is set, Unicode > 1F00 Greek Extended is selected in Encoding, and other panels are open.

  • When a vector guideline is selected, the position icon in the Guideline panel changes to the point of origin icon

  • Glyph is no longer re-centered unexpectedly unexpectedly when working on a master that is specific to just the current glyph

  • Edit > Copy now copies text correctly in the text mode of the Glyph window

  • Using the “Center in Metrics” button in the Elements panel doesn’t crash

  • Using Font > Link Glyph Metrics with “Apply to entire font” on very large fonts no longer causes a crash

  • Closing the Font window now closes the font when needed (if Preferences > General are set to “Font has at least one Font window”)

  • Wacom tablet: canvas now auto-scrolls properly when drawing

  • Arrow keys work reliably in pane with glyphs (invoked with the / shortcut).

  • Font Info > Master Properties > Other Values are saved to vfc files

  • “Unsaved” marks in Font Window don’t disappear right after save

  • Guideline panel: The prefix “H” is shown in the panel, when a hint is selected in the Glyph window; and the prefix “Z” when an alignment zone is selected.

  • Other minor/cosmetic UI issues


FontLab VI version 6.0.4.6634»

9 March 2018

New preview build of FontLab VI for Windows x64»

This is for Windows users only: Today, we’re releasing a preview build of FontLab VI for Windows x64. Most Windows users can continue to use the 32-bit version of FontLab VI, which works in both 32-bit and 64-bit editions of Windows 7, 8.x or 10, and which is available via the Install Update at the bottom of the FontLab VI built-in auto-update dialog.

But if you’re interested in testing the preview-quality native 64-bit for Windows, visit the FontLab Forum.

Note: If you’re a Mac user, your FontLab VI is already 64-bit and you can completely ignore the above.

New features»

Text Bar»

In the Glyph Window, use View > Text Bar to show or hide the Text Bar, a horizontal text field at the top of the window. There, you can edit the “source” of the text that is shown in the Glyph Window. The text bar works the same way as the text field in the content sidebar of the Glyph Window, but some users will find it more convenient to work with the content sidebar closed but have the text bar visible.

On the right side, the text bar has a dropdown menu that allows you to choose one of the texts predefined in Preferences > Texts. This is the same dropdown available under the Text button in the content sidebar.

The text bar uses the “glyphtext” notation, so you can input Unicode characters directly (AÄĄ etc.), or you can input glyphnames using the /glyphname format (e.g. /A/Aacute/Aogonek), or hex Unicode codepoints using the \uXXXX format (e.g. \u0041\u00c4\u0104). If you want to enter an explicit Unicode character right after a glyphname or a hex codepoint, enter a space first (e.g. A/Acute Ą).

Note: The /glyphname format allows you to input alternate glyphs, small cap glyphs etc. explicitly — even if you don’t have any OpenType features defined in the Features panel. But if you do have features defined, you can compile them in the Features panel, and then also access alternate glyphs by entering normal Unicode text and enabling features in the content sidebar.

Import features from open fonts»

The Features panel now has the Import Features submenu that allows you to import the feature definitions from another currently open font.

Variations enhancements»

If you’re working on a font family or a variable font, and have a font with multiple masters:

Generate Glyphs works for all masters»

In Font > Generate Glyphs, you can choose to generate the glyphs in all masters or only in the current master. Previously, glyphs were generated only in all masters.

Linking metrics across masters»

In the Width, LSB or RSB fields of the Metrics table for a given master, you can now enter the name of another master. For example, in the Black master of the O glyph, you can enter Light in both the LSB and the RSB fields.

Then, if you change the sidebearings of the Light master in the O glyph, and run Font > Update Metrics (CmdAltM on macOS, CtrlAltM on Windows), the sidebearings of the Black master of the same glyph will be updated to the same value.

Note: If you enable Preferences > Spacing > Automatically update linked metrics, the linked metrics will be updated automatically as you edit them, but only within the current master. Automatic updating of linked metrics across masters would be too slow, so you need to run Font > Update Metrics to update across masters.

In addition to using the full master name in any of the metrics fields, you can use an abreviation. For example, if you want to link the width of the Black O to the ExtraLight O, you can write Ex. or ExtraL. (using the period). As long as the abbreviated master name is unique, it’ll work.

Also, rather than linking to just the specific value, you can use more extended expressions. For example, you can enter Light+20 in the RSB of the Black O, and then it’ll be equal to the RSB of the Light O plus 20 font units.

Synchronize sidebearings or widths across masters»

With the new action Tools > Actions > Metrics > Synchronize sidebearings, you can copy either the advance width or the sidebearings from the current master into all visible layers or into all masters. This will copy the actual numeric values, not the expressions. You can copy the absolute values or the values calculated at a certain y coordinate (Use the measurement line).

This is particularly useful when you’re working on a font family or variable font where metrics are supposed to be identical across masters. This is also useful if you want to use one master’s metrics as the starting point for spacing another master.

Note: You may choose if you prefer to link the metrics to another master using the expressions (so any future metrics changes in one master will propagate to the linked ones), of whether you use Synchronize sidebearings which just copies the values without linking.

Customizable background color per master»

In the Layers and Masters panel, you can assign a custom color to any master.

Using the new Preferences > Variations > Preview master color setting, you can view the custom master color as a thin colored line on the top of the Glyph Window, or as a “pale” background color of the entire Glyph Window (with customizable transparency).

Now you can easily differentiate which master you’re currently working on, so you won’t make changes to the wrong master by mistake. This is particularly helpful if your master designs only differ slightly (for example, in the length of the ascenders), or if you’ve duplicated a finished master and are adjusting (condensing etc.) the new one.

Previously, the master color was only used if you declared a layer or master “wireframe.” Then, in the Preview panel and when using Quick Preview (Space key), the contours of that layer or master were rendered as outlines colored in the custom color (rather than being rendered filled).

Keeping References on instance generation»

When you use one of the two top-right buttons in the Variations panel to add a glyph master (1st button), add a Font Master (2nd button, 1st option), or create a standalone font (2nd button, 2nd option) based on the instance that is currently selected in the Variations panel, FontLab will now:

  • keep the element References (composites). Previously, references were kept when exporting the font but not when using those buttons.
  • keep the glyph color Flags
  • keep the kerning classes and pairs.

Better export of OpenType Variations TT (.ttf)»

FontLab VI uses the a newer build (3.23.1) of the fontTools library to export OpenType Variations TT (.ttf) fonts. The exported fonts will have the STAT table, and some variations-related tables are optimized thanks to the excellent work of the fontTools maintainers.

Design workflow enhancements»

Mirroring glyphs in Font Window also mirrors anchors and sidebearings»

The commands Tools > Transform > Flip Horizontal and Flip Vertical can be triggered from the Glyph Window or from the Font Window. If you invoke these commands from Font Window (with one or more glyphs selected), the transformation will now also affect anchors and sidebearings, producing a complete mirror result. This is useful for building glyphs which are flipped versions of others.

Easily add nodes at extremas using the Knife tool»

When your contour lacks an extrema and you activate the Knife tool (tap or hold J), you can also then press Shift. With Shift pressed, when you move the pointer over the contour, the Knife tool will suggest the node insertion at the closest extrema rather than at the exact pointer position.

Easily duplicate TrueType off-curve points»

With TrueType outlines, CmdD / CtrlD now works to duplicate TrueType off-curve points the same way as on-curve points.

Curvature for all elements with Edit Across Elements»

When both View > Show > Curvature and Edit > Edit Across Elements are on, the curvature is now shown for all elements, not just for the current element.

Index mode of the Font Window appends glyphs»

In the Font Window in Index mode, CmdV / CtrlV appends glyphs instead of overwriting them, like it did in FontLab Studio 5.

Mask layer shown in Preview panel and Quick Preview if active»

When the Mask is active, the Preview panel and the Quick Preview (activated with Space) shows its contents and not the normal layer.

User interface enhancements»

Customizable color of baseline and sidebearing lines»

View > Show > Spacing Controls shows and hides the Metrics lines (the glyph’s baseline and the sidebearing lines) in the Glyph Window. Now you can customize the color and transparency of the Metrics lines using Preferences > Spacing > Metrics lines, so you can make them appear darker, lighter, or give them another color altogether.

Better closing of Glyph tabs»

When you have multiple fonts open, and you close a glyph tab, the font tab corresponding to the closed glyph will be activated. Previously, the last active font tab was activated, which did not necessarily correspond to the glyph tab you just closed.

Content sidebar in the Glyph Window»

Tooltips added to all UI elements.

Python API»

Note: The Python API is still under development and is subject to change.

Use of anchor array in scripts. The anchor array is now working correctly, including fonts imported from FontLab Studio 5. Note that your script need to check the validity of any “global” object (like flGlyph, flLayer, flShape and flContour) by calling .isValid() method before using them, as in this sample script:

import fontlab as vi
font = vi.CurrentFont()
for fg_glyph in font.glyphs:
  fl_glyph = vi.flGlyph(fg_glyph, font)
  if fl_glyph.isValid():
    activeLayer = fl_glyph.activeLayer
  if activeLayer.isValid():
    anchors = activeLayer.anchors

Bug Fixes»

  • Copy Outline to Mask works even when Mask is not empty
  • Generate Glyphs no longer crashes when Link Shapes option is off
  • Undo works in Transform panel, without requiring you to click in the glyph window first
  • Doing more than one Set Startpoint in a single glyph does not crash the app
  • Copying an element reference and pasting it into a new glyph no longer causes a crash
  • When adding a new OpenType class in the Classes panel, the initial report on number of glyphs is correct instead of always being zero
  • Tools are disabled in the Font Window when the selected cells do not contain existing glyphs
  • In the search panel invoked by the / key, gesture scroll works as expected and the start focus is at the first result of the search
  • When the only reference of a named element is deleted from font, it is immediately removed from Gallery panel. Note: removing a reference of a named element that has additional references in the font will not remove it from the Gallery
  • Date in text of compiled features is correct
  • Remove button on Brush property bar works in cases it didn’t before
  • Opening certain damaged VFC files no longer crashes the app
  • Tools > Actions > Metrics > Set Width option to center elements works more consistently
  • Hitting Enter in a FontAudit interactive dialog now fixes the problem rather than just closing the dialog
  • In Kerning mode, corrected tooltip for the Remove Pair button
  • When working with strokes on contours, metrics and sidebearings are still calculated correctly
  • Fill tool works as expected even with very complex nested fills-inside-fills-inside-fills
  • Changing text size in the Metrics/Kerning modes respects the Center on Glyph option of the Metrics tool Property bar menu
  • In text editing modes, the dynamic glyph filtering in the insert dialog (triggered by the / key) correctly filters names that include a period (such as A.smcp)
  • The numbers in the tracking field of the custom sidebar can be used to set a negative tracking value; the tracking field in the custom sidebar now displays negative values correctly
  • Pen tool coordinate display starts when the tool is selected, not only after the first node is placed
  • If View > Show > Grid and Preferences > Grid > On-curve nodes always snap to grid are both activated, Rapid tool no longer shows fractional values before the first node is placed
  • If a font metric is selected in the Glyph window, the Guideline panel only shows its name (not editable), position (editable) and the option to lock it. Things that don’t work on font metrics such as color, width, tags and marks are no longer shown
  • Submenu entries of the Help > Commands dialog now correctly show as Import/Export Custom Shortcuts. Note: Only customized shortcuts are saved in the data file, which confused some users who thought all shortcuts are being saved
  • Fixed focus problems in Glyph Info panel, which could lead user to think app was locked up
  • Undo now works on Tools > Remove Glyph Guides
  • Fixed bug with Contour > Preview Rounding that caused incorrect rendering of TrueType outlines
  • Switching to Text mode and back no longer hides guidelines, zones and font metrics
  • PostScript Type 1 fonts (.pfb) can be saved even when the path contains non-Latin characters
  • After you move the Metrics table to the top of the window, you can move it back to the bottom if you wish
  • Mac-only: Fixed redraw issues on Sketchboard when Preferences > General > OpenGL is off
  • Windows-only: Keyboard shortcuts for editing left sidebearing work correctly
  • Windows only: the font size for captions in the Gallery panel is now smaller
  • Windows-only: Resetting keyboard shortcuts in the Help > Commands dialog no longer displays/creates incorrect Meta key shortcuts in menus

FontLab VI version 6.0.3.6611»

7 February 2018

New Features: User interface»

New Commands dialog & custom keyboard shortcut editing»

The new Help > Commands dialog box lists all commands available in the main app menus, including custom workspaces and scripts.

Use CmdShiftP to open the dialog, and type in a phrase to locate a command.

Then, navigate to the command with cursor keys and press Enter to execute that command. Inspired by similar solutions in apps like Sublime Text or Atom, this is a very fast way to invoke various commands which does not require to use the mouse or to remember keyboard shortcuts.

And (yes!) you can also customize (assign and change) the keyboard shortcuts associated with any of these commands. Use the shortcut field below the command list to remove an existing keyboard shortcut or assign a new one.

Note: there are some keyboard shortcuts, e.g. the single-letter keystrokes used to invoke the tools, which are not customizable. But most menu commands are now customizable, and you can export and import those customizations easily.

New Features: Drawing»

Swap Outline with Mask»

Tools > Swap Outline with Mask (CmdAltH Mac, CtrlAltH Windows). Added this command familiar to FontLab Studio 5 users

Node coloring for vertical and horizontal handles or line segments»

Under Preferences > Glyph Window > Node Style there is a new setting (in the middle), which is also the new default. When this “auto fill” setting is selected, nodes will be rendered as fully filled (darker) or semi-transparently filled (lighter), depending on the position of the node and its handles.

If a node is between curve segments and its handles are aligned perfectly vertically or horizontally, the node is fully filled (darker in color). If a node is between line segments and both segments are perfectly vertical or horizontal, the node is also fully filled. Otherwise, the node is semi-transparently filled (lighter in color).

This helps identify points that are not quite where you intended, or are not quite proper extrema.

Shift-double-click to align nodes and handles»

If you have a node or handle that is nearly aligned (in either X or Y) with an adjacent node, this will shift it to become aligned. When applied to extrema nodes with handles that are not perfectly aligned to X or Y direction, shift-double-click will fix that.

New Suggest Guides option»

When View > Suggest > Suggest Guides option is activated, hidden guides, hints, zones or font metrics temporarily appear when you move a node or contour near them. This only works with guides/hints/zones which have “snap to” allowed (View > Snap menu or in the View panel). This allows you to keep a clean workspace where guides, hints, zones or metric lines are invisible, but they become visible just when you need them.

This feature combines well with View > Metrics & Hinting Shadows option for easier navigation.

Nodes on alignment zones are optionally highlighted»

If you move a point into an alignment zone, the node is highlighted with a light gray circle if the node is on the edge of a zone or with a light gray rectangle if the node is inside the zone.

This behavior is on by default, but can be turned off as the fourth option under Preferences > Editing > Highlight nodes on alignment zones.

Snap to glyph metrics»

This new option under View > Snap > Glyph Metrics causes snap to sidebearings, and applies to all operations where snap works.

New Features: Languages and Production»

Import Ikarus (.ik) Files»

Support for import of Ikarus font files (which typically come with .cha file containing glyph names and Unicode indexes) is back in this build of FontLab VI. To keep precision of the source data, low-error-tolerance approximation is applied to Ikarus contours when they get converted to cubic Bezier splines. This results in high accuracy but more points; consider Simplify or Clean Up operations after the import.

Codepages & Unicode ranges»

Font Info now has two new sections for setting code pages and Unicode ranges, much like FontLab Studio 5. You can still use the “auto” (diamond) button to have FontLab generate what it thinks are the right flags, and you can set them manually. The information will be stored in the OS/2 table of the exported OpenType font.

Features checkbox in the content sidebar»

The Features checkbox in the content sidebar not only allows you to enable and disable OpenType Layout features, but also activates the HarfBuzz-based Unicode text preprocessing (script itemization, bidirectional support and Unicode normalization).

Previously, you could only enable the Features checkbox if you had features defined in the Features panel. Now, you can enable the checkbox even if you don’t have any features defined, so you can use the Unicode preprocessing and bidirectional support.

Note: Bidirectional/RTL support is still flaky in this release, we’re working on it!

CID-keyed glyph names»

When importing CID-keyed PostScript fonts, there is a new option for whether glyphs should be named based on FontLab’s regular glyph naming heuristics, or by CID number, in Preferences > Open Fonts: “Change CID names to Unicode names when Unicode index is known.” This preference is on by default.

Enhancements»

Mask»

  • Previously, with mask layer visible and Edit Across Layers mode off, nodes from the mask layer were visible while editing outlines on another layer. Now, if you select nodes on the mask layer and switch back to another layer with Tools > Edit Mask, the associated handles from the mask layer are still visible (as in FontLab Studio 5). Handles on your drawing layer can then snap to the handles from the mask layer.

Drawing»

  • Edit > Find Outline search can be done for all glyphs or just for glyphs with a given tag.
  • Contour direction no longer affects the reported angle of node handles (visible on mouse hover or when handles are selected).
  • Free Transform now has a proxy to select the origin of the transformation, like the other transform modes/tools.

Guides»

  • You can now select different elements with the Guide tool, which is useful for quickly editing element guides.
  • When Element tool is active and Edit Across Elements mode is on, all element guides are visible.

Stroke»

  • FontLab applies strokes to elements after element transformations, similar to most drawing programs.
  • Expand operation produces more predictable results, works with element groups, and can be applied in the font window.
  • New Element > Remove Stroke command will remove stroke from the currently active element, or from all glyphs selected in font window.

Bug Fixes»

  • No longer causes a crash
  • Importing SVG artwork into more than one glyph cell at a time no longer causes a crash.
  • Tracing some particular image elements no longer causes a crash.
  • Repeatedly deleting elements no longer causes a crash.
  • Removing glyphs from an OpenType class no longer causes a crash.
  • Scripts listed in Scripts menu work properly, including submenus for folders.
  • When opening an existing font in OTF format, FontLab maintains the existing glyph index (GID) order.
  • In text sidebar, fixed interaction between escaped glyph names using “/” in main area, and glyphs entered in “left” and “right” fields.
  • Preferences for distances moved by cursor keys now also apply to moving guides, anchors and pins.
  • Right handle for sidebearing shows the resulting metrics live, while it is being moved.
  • Guides
  • Tags for guides are properly saved with the font, avoiding changes in guide colors.
  • No crash when adding several tags to guides using pop-up field from property bar.
  • Copy and paste are accepted in guide tag fields.
  • Typing is not slowed in guides pop-up field from property bar.
  • Element guides don’t move while editing contour.
  • Glyph position and zoom in glyph window are better preserved while cycling between glyphs with comma and period keys, including blank glyphs.
  • Zooming/scrolling in the glyph window works correctly even with unusually large elements.
  • Recompile OpenType features works even when ssXX features are named.
  • PythonQt nested widgets within widgets now have correct behavior for error messages and print commands, in the inner widget (directing stdout/stderr).
  • An “Instance font” created in variations panel retains glyph flags.
  • Text no longer “jumps” when its size is changed in a glyph window in metrics mode, but remains more centered/visible.
  • Improved centering of glyph when cycling through different glyphs in a Glyph Window.
  • Changing the OpenType class of a glyph is saved correctly in VFC files.
  • Changing glyph advance width to zero is saved correctly in VFC files.
  • Minimized glyph window does not become unreachable.
  • Edit > Paste Glyph Reference now correctly pastes a glyph reference instead of an unlinked glyph.
  • Placing a guide over a locked alignment zone no longer allows the locked zone to be moved.
  • Unusual/arbitrary weight values (usWeightClass) such as “401” are preserved in exported fonts.
  • Improved/fixed snap behavior with vector guides.
  • Glyph metrics now processed correctly when horizontal mirroring is applied to glyphs in the Font Window.

FontLab VI version 6.0.2.6578»

6 January 2018

As a special gift for the New Year, we extended the trial period for this build by ten days. Enjoy!

Crosshair cursor»

Crosshair cursor (FontLab Studio 5 style) is available as an option while using Contour, Pen and Rapid tools. It can be turned on in Preferences > Editing > Show cross.

Enhancements»

  • “Open Glyph Panel” command added to contextual menu in Font Window and Glyph Window.
  • Copying a selection of glyphs in the Font window gives a list of glyph names on the clipboard (for pasting into other apps)
  • In the dialog that appears when closing an unsaved font, the option “Don’t Save” can be triggered by the keyboard shortcut Command-Delete (Mac-only).
  • The New Layer dialog sets and maintains focus in name field.
  • Encoding menu of Font Windows remains open while handling groups of encodings.
  • Enter key triggers the OK button in more dialogs (excepting the most complex ones).
  • Placeholder characters are shown in Font Window after new blank glyphs are created.

Bug fixes»

Fixes in the 6.0.2 release include the following issues:

  • Some hints/links are lost when opening a MM font in VFB format.
  • FontLab VI sets itself as the default application for OTF and TTF files.
  • Brush tool is not using a high resolution cursor.
  • Arrow keys cannot move the contour while Free Transform is being used.
  • Actions do not work for the artwork on the Sketchboard.
  • Under certain conditions, a pasted contour is scaled up and flipped vertically.
  • Paste Special for metrics doesn’t change glyph status to edited.
  • Assigning OT class in Glyph panel only works on one at a time.
  • Cannot apply custom encoding not belonging to any group.
  • Cannot add glyphs to classes using the Classes panel.
  • Python scripting: .index attribute in CurrentGlyph().index of fgGlyph().index causes a crash.
  • Color transparency has no effect in Preview window.
  • Horizontal scrollbar does not work properly in Glyph Window.
  • Incorrect curve tension is applied in exported TTF fonts.
  • Generate Glyphs does not create non-standard ligatures.
  • Non-ASCII characters in the path prevent variable font to be exported.
  • Hebrew and Arabic placeholder characters are missing in Font Window.
  • Script chosen in the Preview panel is not remembered.
  • Glyphs named Tcedilla, tcedilla, Tcommaaccent and tcommaaccent are not handled correctly.
  • Element > Separate Contours to Elements disables Undo.
  • Tooltip for text size in Window bar uses a different format than default tooltips.

Windows-specific fixes:

  • Bezier handles are reset when using arrow keys.
  • Open kerning window with several glyphs causes a crash.
  • Profile dialog always shows information from the first one.
  • Custom profiles are not properly saved among sessions.

FontLab VI version 6.0.1.6558»

15 December 2017

Variation»

Use the “AAA” toggles on the right side of the masters list in Font Info > Masters to indicate which masters should take part in interpolation (creation of instances). If the “AAA” is shown, a master takes part in interpolation. If the “AAA” is hidden, the master does not take part in interpolation.

Paste and Duplicate»

Use the new Preferences > Paste & Duplicate section to control the offsets (x/y shift) for the Duplicate and Copy/Paste operations offsets and decide how imported or pasted artwork is scaled.

Bugfixes»

Fixes in the 6.0.1.6558 release include:

  • Change tooltip from “Add layer instance” to “Reset location to default” in the Variations Panel
  • Cmd (Ctrl)-scroll should give next/prev glyph in the Glyph window
  • Color marks (flags) are lost in vfb
  • Copied font guidelines are pasted as glyph guidelines
  • Crash on pasting a glyph in new font
  • Create Parallel Contour generates double points
  • Export to TTF adds many new nodes
  • File > Import > Artwork doesn’t open the dialog box
  • Header bar controls inactive for anchor position
  • Invalid DSIG when adding a signature
  • Missing references from other glyphs when importing Glyphs files
  • New updated vendor.dat file
  • Open (non-closed) contours are bad in the saved vfb
  • Paste Special pastes incorrect metrics
  • Selection is resized unexpectedly when using the link/unlink button
  • Show Rulers are always on after start
  • Sorting of layers when new glyph is created
  • Tags causes FL VI to crash in some situations
  • The Brush tool doesn’t work when the Toolbar is docked to window
  • Undo for Rapid tool is broken
  • Unicode codes should use uppercase
  • WOFF and EOT export without hinting, regardless of export settings

FontLab VI version 6.0.0.6550»

7 December 2017

  • Initial public release.

FontLab VI Preview 6530»

Font Info»

  • Font and master switcher are moved to the top.
  • Master list is directly visible in the left-side section so you can easily switch between master-specific font info.
  • More clear distinction between font info that applies to all masters (Font Properties) and font info that applies to a specific master (Master Properties). Note that Master Properties contains Names > Family name and Family Dimensions > Units Per eM that both apply to the entire font. This is done so that the UI stays simple for single-master font handling.
  • Redesigned Names page with numeric entry for OS/2.usWeightClass.
  • In Family Dimensions page, font BBox top and bottom are included for your reference when you set the linespacing values.
  • Stems and Zones pages have new copy/paste buttons for easier transferring info between masters.
  • Experimental Other Values page with entries that control additional dimensions and font export aspects.
  • Creator and Legal pages improved.
  • Axes page has two buttons that enable or disable automatic master matching when variable fonts or instances are generated; if your masters are already perfectly compatible, disable both toggles.

Export Fonts»

  • The general export process has been vastly improved, including exporting instances into OTF and TTF.
  • Some new font export properties are now editable in File > Profiles, though not all of them actually have influence on the export process.

Window menu»

  • Window menu redesigned for more clarity
  • New Window > Workspaces section that allows you to create multiple “Workspaces”, i.e. arrangements of panels. Arrange your panels as you like them for a given task, then save a workspace. Then rearrange panels and save another workspace. Workspaces will appear in that menu. You can also manage your workspaces.

And many bugfixes and other improvements.


FontLab VI Preview 6522»

Drawing»

  • Preferences > Glyph Window > Quick measurement has a new setting everywhere which dynamically displays not just the stem thickness but also the distances in the whitespace when you move your mouse around in the Glyph Window (press Shift to constrain it). This is much faster than using the measurement line or the measuring guidelines!
  • Selection of overlapping nodes (that are on top of each other but belong to different segments or contours) is now easier: FontLab will intelligently select the right node if you “approach” it with the mouse pointer along segment to which it belongs.
  • Contour > Apply Rounding permanently rounds coordinates to integer values (useful after extensive rescaling or modifications). This functionality will be extended. The former Round Coordinates is now called Preview Rounding, since it’s exactly what it does: it stores the coordinates internally as fractions but dynamically rounds them to integers and previews the result. With Apply Rounding, you can make this rounding permanent.

Production»

  • Improvements in importing features from external files, adding OpenType classes dynamically to feature code and generating the kern feature.
  • Font Info now has alignment zones.
  • Font Info > Other Values includes the first implementation of additional font metadata.
  • The defaults in Preferences > Curve Conversion > …tolerance have been changed to 2.0. Please visit the Preferences section and click on the Reset buttons next to the fields if you want more precise conversion from PostScript to TrueType curves!

And many bugfixes and other improvements. We’re working on more extensive documentation.


FontLab VI Preview 6511»

Variations: Axes, Masters, Instances and Interpolation»

With the Font Variations workflow, you can create two or more master designs for your font, and derive additional fonts via linear interpolation between these masters, along design axes. These derived fonts are instances, and represent designs that are intermediates between the masters. For example, if you design a font master with a Light weight and a font master with a Bold weight, you could derive an instance that represents the Medium weight of that design.

Note: The Font Variations workflow supports only fonts where glyphs are made from monochrome editable PostScript or TrueType contours (and some editing tools only reasonably work with PostScript contours, not TrueType contours). Interpolation between color glyphs (made from editable contours) is also possible to some extent. SVG or bitmap glyphs are not supported.

Axis»

The typographic property that changes during interpolation represents a design axis. You can create as many axes as you wish, each representing the change of a different typographic property, for example weight, width, optical size, slant, serif size, contrast, ascender length and so on.

All these axes combined form the design space, an abstract, multi-dimensional space, on which every master has an axis location expressed by numerical axis coordinates, one per axis.

To edit, add and remove design axes, use File > Font Info… > Axes.

In FontLab VI, an axis has a name, a FontLab-internal two-letter code. Optionally, it also has a four-letter OpenType Variation axis tag used by the Variable OpenType font format.

An axis also has a “show/hide in the user interface of end-user apps” toggle that will be written into the Variable OpenType fonts (currently it’s not supported).

Each axis has its axis coordinate range that goes from from a minimum to a maximum value and has a default position. The axis coordinate range controls the range of the sliders and map in the Variations panel for the given axis (change it to allow for larger extrapolations).

Finally, an axis can also define axis instances, which will be discussed later.

Example axes would be:

  • weight, code wt, tag wght, min 1, max 1000, default 400
  • width, code wd, tag wdth, min 70, max 130, default 100

Note: FontLab VI allows you to define masters within the weight and width axes without explicitly declaring them in File > Font Info… > Axes. Declare them explicitly to control the axis coordinate range and define axis instances.

Instance»

An instance is a “snapshot” of the interpolation process at a chosen location within the design space. FontLab VI can generate a “static” (single-master) font from an instance.

To preview interpolation results, you can choose the current instance. This can be a arbitrary instance, if you drag the blue circle around the design space map in the Map mode of the Variations panel, of if you drag the axes sliders in the List mode of the panel. This can also be one of the predefined instances that you can choose from the Instances bottom tab of the List mode of the Variations panel.

To preview some text in the current instance:

  1. Open the Preview panel and click on the top-right button to open the panel’s content sidebar. In the Master dropdown, choose Instance. Then in the Content dropdown, choose what text you’d like to preview. Current displays the selected glyphs if the Font Window is active or the visible text in the Glyph Window if it is active. Custom displays the text that you type into the panel.
  2. Activate the Text tool in the Glyph Window, type any text and choose the instance in the Variations panel.

When you’re choosing a current instance, FontLab VI automatically refreshes the #instance layer for all glyphs. This is a read-only layer that contains the contours of the current instance.

By default, the #instance layer is set to be Service (which means that it doesn’t contribute to the exported final font, to the filled preview or to the interpolation as a master) and Wireframe (which means that whenever FontLab VI renders glyphs, you see the outlines instead of fills). You can change these properties and experiment with various settings in the Layers and Masters panel.

You can declare predefined instances in File > Font Info… > Instances. A predefined instance has a location in the design space (one numerical coordinate per axis). It also has some naming fields. A predefined instance is not a real font — it’s merely a “plan” to create a real font.

When you export a variable OpenType font, predefined instances are stored in the font as “named design space locations”. However, to the end-user, choosing a predefined instance of a variable font (in apps that support variable fonts, such as Adobe Illustrator CC 2018, Adobe Photoshop CC 2018, Apple Keynote or Apple Pages) feels very similar to choosing different styles in an extended font family.

Master»

A font master is a master that contains glyph designs (elements and contours) for all glyphs in a font, as well as advance widths, kerning and other data for that master. A font master represents a complete font for a given axis location, so an instance derived from the axis location of a font master would be identical to the font master itself.

A glyph master is an additional master that contains the design for a particular glyph at a axis location where a font master does not exist. Glyph masters can be used to correct interpolation results for particular glyphs, but they do not contain font-wide information such as kerning.

You need at least two masters for each axis. An example of a design space would be:

  • two axes, weight (abbreviated wt in FontLab VI) and width (wd)
  • four masters:

  • Thin Narrow, with the location wt=200,wd=75

  • Thin Wide, with the location wt=200,wd=120
  • Bold Narrow, with the location wt=700,wd=75
  • Bold Wide, with the location wt=700,wd=120

With such a design space, you could derive (choose) an instance at the location wt=500,wd=100 which would be then interpolated, and would represent a design with Medium weight and Normal width.

If you want to interpolate along an axis, you need at least two masters with different coordinates for that axis. FontLab Studio 5 allowed just two masters per axis (one for the minimal coordinate, one for the maximal coordinate) — and all instances would be interpolated between these extreme coordinates.

In FontLab VI, you may have more than two masters at different coordinates for any given axis. For example, you may choose to design three masters for your weight axis. The axis location of each of those masters would need a different coordinate for the wt axis: for example, your Thin master could have the location wt=200, your Medium master wt=500, and your Bold master wt=700.

If you then choose the Semilight instance to be derived at wt=300, that instance would be interpolated between the Thin and Medium masters in such a way that, design-wise, the instance would be at “⅓ visual distance” between the Thin and the Medium, because (300-200)/(500-200) = 1/3. If you then choose the Semibold instance to be derived at wt=600, the result would be visually half-way between the Medium and Bold master, because (600-500)/(700-500) = 1/2.

To create a font with multiple font masters from existing single-master fonts, open all single-master fonts in FontLab VI and do one of the following:

  • Open the Fonts panel, select all the fonts (using Shift or Alt) and use Font > Merge to Layers. FontLab will create a new font with multiple font masters.
  • Activate the font into which the font masters will be added (choose its Font Window or double-click it in the Fonts panel). This will be the font that will provide names, classes, features and other font-wide (or family-wide) data.

  • Choose Open File > Font Info….

  • Click on the + button on top.
  • Choose the single-master font which will be added as the font master into your font.
  • Repeat the previous step until you’ve added all the fonts as font masters.

Use the Master switcher on top of the Font Info dialog to switch between masters. You can also add new blank font masters or duplicate existing font masters there.

Once you have multiple font masters, assign a unique name to each font master using the Master name field in the Font Info > Names section.

Then, switch to the Font Info > Masters section to choose the default font master (which will be exported as the neutral master into a variable OpenType font), and set the location of each font master on the design space.

Note: FontLab VI currently only supports master at extrema locations of the design space (there, undefined kerning pairs will have the value 0), and simple intermediate masters (undefined kerning pairs will have the interpolated value). FontLab VI does not yet support master switching or intermediate masters with ranges.

You can use the Variations panel to:

  • Add a glyph master for the current glyph or for the selected glyphs, using the contours and location of the current instance. Use the + button. A glyph master encodes the axis location in the name, following the pattern :ax=val,ax=val,.... For example, a correctional master for the e glyph in the Semibold weight would be named :wt=600.
  • Create a font master or a standalone font using the contours and location of the current instance. Use the top-right button. If you choose Font in the flyout menu, a new font will be created from the current instance. You can then export that font.

If you have two or more masters on an axis, you may also extrapolate instances — for example, an instance with an Ultrablack weight could be derived from the design information encoded in your Medium and Bold masters. Edit the axis min/max range in Font Info > Axes to allow for a larger extrapolation range.

To temporarily exclude a font or glyph master from the interpolation process, toggle its Service property in the Layers and Masters panel.

More information about variations»

  1. Watch the videos by Erik van Blokland, Bob Taylor, OpenType working group, Laurence Penney and Adam Twardoch to get an overview of the concept behind variable fonts: axes, masters, instances and interpolation. The video by Thomas Phinney about multiple master support in FontLab Studio 5 also is a useful starting point.

  2. Read the OpenType Font Variations online brochure by The Font Bureau and the posts by John Hudson, Richard Rutter, Tim Brown and Dan Rhatigan for more context.

  3. Consult the Adobe Multiple Master and the OpenType Font Variations documentation for technical details and design recommendations.

Exporting Fonts»

In this build, we have revamped the font export functionality.

  • We removed the Export button in the Fonts panel.
  • We replaced the File > Export Font As submenu with a dedicated dialog box.

Font export is a process that transforms your current source font into one or more target fonts. The current source font is the font that you’re working on in FontLab VI, that is, the font that is currently open and active — either its Font Window or Glyph Window is active, or it is active in the Fonts panel.

To export the current source font, choose File > Export Font As…. This will open the Export Font dialog box, where you can choose the export settings: the profile (the “how”), the content (the “what”) and the destination (the “where”) of the export, and then export the font.

To quickly export the current source font again with the previously chosen export settings, choose File > Export Font. Even if you switch to another source font or open another font, you can still export that source font with the previously chosen export settings using File > Export Font.

Profiles (the “how”)»

FontLab VI has the concept of export profiles. By choosing a profile, you decide how the source font will be transformed into the target font: you decide on the target font format (which can be a save format such as VFC, a development format such as UFO, or a final format such as OTF), and you control some operations that FontLab VI will perform on the way, for example outline conversion, generation of hinting or OpenType Layout tables.

The left-side portion of the Export Font dialog box lists the visible export profiles. Here, you can choose the current profile which will be used for the export. For example, when you want to get TrueType-flavored OpenType (.ttf) fonts, choose the OpenType TT profile.

Customizing profiles»

Note: This functionality isn’t fully implemented yet.

You can add customized variants of the export profiles in the File > Profiles… dialog box. In the Profiles dialog box, you can:

  • Click on a profile in the left-side list to choose the current profile. The right-side area will display the profile settings associated with the chosen profile (Note: the profile settings in this build are temporary and not editable; we plan to improve this in the upcoming builds).
  • Click on the + button to make a customized copy of the chosen profile and modify its settings (which will be useful once we make the profile settings editable). To remove a customized profile, click on the button.
  • Enable and disable the toggle box on the left side of each profile. When the toggle box is enabled, the profile will appear in the list of profiles that are available in the Export Font dialog. Then the toggle box is disabled, the profile will not appear in the list. (Note: This isn’t very useful at the moment, but will be useful once we make the profile settings editable — then, you’ll be able to create a number of customized export profiles in the Profiles dialog box, and only see the ones you’re interested in in the Export Font dialog box.)

Font content (the “what”)»

Your source font may have different kinds of font content that you may wish to use when exporting, especially if you work with multiple masters or color fonts — different layers, masters and predefined instances.

Some export profiles are “multi-font” profiles. These include profiles for the FontLab VI native save formats that store the entire source font (.vfc and .vfj), and profiles that store multiple masters and instances in one file (such as the OpenType Variations profile) or package (the DesignSpace + UFO profile). FontLab VI automatically chooses the optimal content for multi-font profiles.

Other font profiles are “single-font” profiles. They are used to export “static” fonts, where each single font represents a single style of a font family. Examples of single-font profiles are: OpenType TT (.ttf), OpenType PS (.otf), UFO Package (.ufo), PostScript Type 1 (.pfb), FontLab Classic (.vfb), and the Web font profiles.

When exporting into single-font profiles, you need to decide what (which font content) should be written into the target fonts. In the top-right portion of the Export Font dialog box, you can choose which content of the current source font will be exported:

  • Current layer
  • Instances
  • Masters

Current layer»

If you choose Current layer as the font content, FontLab VI will export the currently active master or layer of your source font.

  • If your source font is a “single-master design”, that is, if you only have one monochrome outline drawing per glyph and your source font is not a variable or multiple-master font design, you should always choose Current layer.
  • If your font is a color font design, you should choose Current layer.

You may also choose Current layer if your source font has multiple masters or layers. However, before you invoke File > Export Font As…:

  • Choose the current master or layer by using the Layers and Masters panel, the master selector in the top context bar of the active window, or the Masters bottom tab of the List mode of the Variations panel.
  • Or choose the current master or layer by clicking on the appropriate orange rhombus in the Map mode of the Variations panel.
  • Or choose the #instance layer in the Layers and Masters panel (though this method is not recommended).

Note: If your source font has multiple masters or layers:

  • If you’d like to choose a arbitrary instance via extrapolation, open File > Font Info… > Axes and modify the Minimum and Maximum values per each axis. Those values control the range of the axes map and sliders in the Variations panel.
  • If you’re choosing an instance as your Current layer, FontLab VI will attempt to generate the instance via interpolation, and will automatically generate the font names based on a “best guess”. You may want to open the exported font in FontLab VI or OTMaster to customize the font names and review the interpolation results.

Instances»

If your source font has multiple masters, and your masters are interpolable, you will most likely want to choose Instances as the font content. Exporting the Instances content allows you to quickly generate fonts for an entire font family in one step.

The Instances list shows all predefined instances that you have defined in File > Font Info… > Instances. Use the left-side toggles to enable the predefined instances you wish to export (filled toggle), or disable some (unfilled toggle). All enabled instances will be generated via interpolation, and then exported as separate fonts.

Before you invoke File > Export Font As…, you can edit your predefined instances in File > Font Info… > Instances.

Masters»

If your source font has multiple masters, you can choose Masters as the font content.

The Masters list will show all the font masters that you have defined in File > Font Info… > Masters. Use the left-side toggles to enable the font masters you wish to export (filled toggle), or disable some (unfilled toggle). All enabled masters will be exported as separate fonts.

Before you invoke File > Export Font As…, you can define your masters in File > Font Info… > Masters, then use the Master switcher on top of the Font Info dialog box to fill in the appropriate information.

The masters in your source font don’t have to be interpolable. You may work using multiple masters in one source font when you design multiple styles for a family, but you do not intend to interpolate them. Then, exporting the Masters content allows you to quickly generate fonts for your entire font family in one step.

Exporting the Masters content is also useful if you’re creating files in a development formats such as UFO Package (.ufo) or FontLab Classic (.vfb), or if you’re exporting masters in .ttf format but intend to perform interpolation or build a variable font using some other tool.

Destination (the “where”)»

In the lower-right portion of the Export Font dialog, you can choose the destination that is, decide where the target fonts will be written. The destination consists of a base folder and optional subfolders.

Pick Source if you with to export your fonts into the same base folder as your current source font is saved in, or pick Folder and Choose a custom base folder where your fonts will be exported.

You can also enable the Family and/or Profile checkboxes to create a subfolder structure inside the base destination folder, based on the Family name of the source font as defined in File > Font Info… > Names, and the name of the chosen export profile. These options can help you organize your exported fonts.

FontLab VI will automatically construct the filenames of the exported fonts based on “best guesses”. You can use the Existing font files dropdown to decide what should happen if files with the same filename already exist in the destination folders.

Once you’ve chosen your export settings (profile, content and destination), click on Export and FontLab VI will generate the target font files. To quickly export the same or another source font with the same export settings, choose File > Export Font.


FontLab VI Preview 6484»

Variation supports greatly expanded»

  • Font Info
  • the functionality of Font Info is greatly improved though the design is not yet final
  • switch fonts (bottom) and masters (top)
  • bold sections of Font Info are per font, non-bold are per master
  • copyright section has embedding controls
  • New handling of masters
  • Font masters are now much more explicit and slightly different from normal layers
  • The layer names mm.XXXX are no longer used to encode the axis location of the master
  • For font-wide masters that include glyph designs for the entire glyph set:
    • add a master in Font Info (top bar +) with ability to fill added masters with content of other open fonts
    • give the master any name you want (in Font Info > Names), e.g. Semibold
    • specify the axis location in Font Info > Masters (e.g. wt=132)
  • For per-glyph masters:
    • create a layer in the Layer panel named like Semibold:wt=132
  • New handling of axes and instances
  • In Font Info > Axes:
    • add, remove and modify axes
    • define their names, min and max values (that affect how sliders work in Variations panel) the short code (used internally by FLVI) and the OpenType axis tag
  • axes need to be defined explicitly if you want interpolation to work — except width and weight, which are implicit but can be made explicit if defined by the user
  • Axes Instances: predefined coordinates along each axis which can be used to build the contents of the OpenType STAT table and to build a matrix of instances
  • new Instances section which can build instance data from both Masters and Axes (the ordering of the axes in Axes section influences the order of building style names)
  • more info on this soon
  • Variation panel
  • snap sliders to Axes Instances
  • snap map to masters for easier navigation
  • customizable start and end “play” regions on sliders
  • Play button for dynamic (animated) previewing of interpolation
  • buttons to control automatic sorting of contours (also optimizes location of the start point) and check of geometrical compatibility.

Other»

  • Fill tool works with TT curves
  • Import Metrics has new dialog box
  • File > Export supports metrics and features
  • Generate Glyphs improved
  • Round and Sharp actions have been improved to selectively process “inner” and “outer” contours.
  • new Contour > Add Inktraps action which will add inktraps using smart corners (so they are editable).
  • new parameter in Font Info > Font dimensions which controls width of smart corner inktraps.

More detailed release notes will be soon available on forum.fontlab.com


FontLab VI Preview 6434»

Known issues»

We are working on these, but thought we should deliver a new build despite a few new issues.

  • When you enter a single-digit value into any Metrics field by hand (0 to 9), it will be interpreted as “copy the metric value from glyph /one” etc. This is a bug that we’ll address soon. At this point, please use the arrow keys with modifiers (CmdLeft, CmdRight, ++Alt+Left, AltRight) to set the LSB, RSB (left and right sidebearings) or Width into your desired value.
  • The Metrics table sometimes does not update its values correctly.
  • The Preference Spacing > Automatically update linked metrics does not always work for extended expressions. Please update metric linking manually via Font > Update Metrics (AltCmdM).

Improvements»

Drawing Glyphs»

  • Alt+drag on a segment (non-node) temporarily overrides “fixed BCP direction”.
  • Alt+click on a Line segment converts it to “proportional” Curve segment.

User Interface»

Windows, tabs and panels behavior»

The setting Preferences > General > Windows and tabs configuration controls whether new FontLab VI windows open as: (a) floating windows; (2) docked tabs within the main window. In this build, we’ve also made some changes so this setting controls where you can dock your FontLab VI panels.

The setting has three options:

  • All fonts and glyphs open in tabs
  • Fonts open in windows, glyphs open in tabs
  • Fonts and glyphs open in windows

We’ll call the first setting the “single-window UI model”, while the other two are “multiple-window UI models”.

Starting with this build:

  • In the multiple-window UI models (second and third option of Preferences > General > Windows and tabs configuration), you can **dock panels (and the toolbar) only to the **edges of the screen**.

  • In the single-window UI model (first option of Preferences > General > Windows and tabs configuration), you can dock the panels (and the toolbar) to the edges of the screen (outside the app window) or to the edges of the window (inside the app window).

Multiple-window UI models»

In the multiple-window UI models, each Font Window or even each Glyph Window by default becomes a floating window. You can have many overlapping windows on your screen, and docking panels inside one of the windows wouldn’t be practical, because those panels might not be accessible if you work in a different window. You can dock the panels to the edge of the screen(s).

You can resize the windows independently of each other, close them, move them to different monitors — the toolbar and the panels will stick to the positions you assign to them. Of course you can stack (dock) the panels vertically and horizontally, or group them into panel groups (tabbed panels), or make the panels floating. In the multiple-window UI models, you can still turn windows into tabs, but by default, they’re floating windows.

Single-window UI model»

In the single-window UI model, all Font and Glyph Windows automatically open as new tabs within the main window. You can undock any of them and turn it into a floating window, that you could, for example, move to a second screen — but as a rule, you’ll most likely have one main window that has most of the tabs, and perhaps a handful of extra floating windows. Because we do have a “main window” here, FontLab VI allows you to also dock any panels or the toolbar inside a window. This way, when you resize or move the window, the panels follow. But it’s also possible to dock some panels to the edge of the screen, or on another screen, where they will stay even if you resize or move the main window.

When panels are docked to the edges of the window and FontLab VI starts with no fonts open, there needs to be a window where the panels can be docked — so in this build, the single-window UI model requires the Sketchboard to be open, so if this UI model is chosen, you cannot disable the setting Preferences > General > Open Sketchboard on startup.

Variations»

Variations refers to the same kinds of axis-based design that was referred to as “Multiple Master” in FontLab Studio 5. OpenType Variations export is not yet implemented, and this area is still under development, although well underway.

Switching Masters»

  • Alt, (Glyph > Previous Layer) and Alt. (Glyph > Next Layer) now also work in the Font Window

  • You can switch between Masters quickly in the Font or Glyph Window using the Alt1 to Alt9 keyboard shortcuts (Alt1 activates the 1st Master, Alt2 the 2nd and so on).

Improved Master Matching»

With the recently introduced Glyph > Match Masters, you can automatically make different masters compatible for interpolation. In this build, we’ve greatly improved the automatic masters matching algorithm, especially for glyphs that consist of multiple contours.

Spacing and Kerning»

The advance width visual indicators (horizontal bars below the glyphs) are now less prominent in Kerning mode, so you can see the kerning indicators more clearly.

Metrics linking»

FontLab VI allows you to link glyph metrics. You can use simple expressions, so you can do things such as make the right sidebearing (RSB) of “p” the same as the RSB of “o.” You can also use extended expressions, so you can do things such as define the LSB of a glyph to be the average of the LSB of “n” and the LSB of “o”.

NOTE: See beginning of these release notes for some bugs in metrics linking. We hope to have these ironed out shortly!

In this build, we’ve improved Metrics linking. Here is a summary of the expressions that can be used for Metrics linking. The LSB, RSB and Width fields support the following entries:

Direct numeric input»
  • Negative or positive integer number. Such an expression is immediately converted into a direct result. Example: -20, 20.
  • Negative or positive fractional number. Such an expression is immediately converted into a direct result (and rounded). Example: -20.3, 21.753.
Simple expressions»
  • Two or more numbers concatenated with characters for the basic arithmetic operations (+ for addition, - for subtraction, * for multiplication, / for division), and optionally parantheses (( and )). Such an expression is kept as expression, and its result is calculated. Example: 20*(3+7).
  • Glyph name or Unicode character. Such an expression links the metric field of the current glyph to the corresponding field of the glyph that the name or character refers to. Example: N or two or Ж.
  • Glyph name or Unicode character followed by + (for addition) or (-) for subtraction, followed by a number. Such an expression links the metric field of the current glyph to the corresponding field of the glyph that the name or character refers to, plus or minus the numerical value that follows the mathematical sign. Note: * or / don’t work this way. Example: N+10 or two+7 or Ж-21.
Metrics binding»
  • The equal sign (=) followed by a positive or negative number in the LSB field binds the LSB, i.e. when you modify the contours of the glyph, the glyph will be shifted so that the LSB remains constant as defined. Example: =20.
  • The equal sign (=) followed by a positive or negative number in the RSB field binds the RSB, i.e. when you modify the contours of the glyph, the advance width will be adjusted so that the RSB remains constant as defined. Example: =-23.72.
  • The equal sign (=) followed by a positive or negative number in the Width field binds the Width, i.e. the Width will remain constant as defined even if you try to modify it using the spacing controls. Example: =651.

Note: Obviously binding two sidebearings as well as the advance width might yield unpredictable results.

Extended expressions»

Extended expressions start with the equal sign (=) can be followed by numbers, glyph names or functions, concatenated with arithmetic operation signs (+, -, *, /) and parantheses (( and )).

In the LSB, RSB or Width field, you can refer to other fields of the same glyph with these functions:

  • l() refers to the LSB of the current glyph. It makes most sense if =l() is used in the RSB field.
  • r() refers to the RSB of the current glyph. It makes most sense if =r() is used in the LSB field.
  • w() refers to the Advance Width of the current glyph. Not sure how it could be used effectively.
  • g("G") refers to the horizontal position of a vertical guideline which has the name G and is located within the current glyph.

All the functions can be combined in extended expressions, such as =l()*1.2 or =g("center")*2 or =(n+o)/2.

Bugfixes»

  • FontAudit visualization doesn’t always trigger
  • “Round Coordinates” misbehaves with guidelines, “Snap to Guides” also
  • Other element gets activated on double-click instead of handle in current shape
  • Crash on using Glue Selection for the selected brush stroke
  • Node Anchors should be renamed to Node Links
  • Releasing left mouse button while Ctrl+dragging nodes/handles should remove them like FontLab Studio 5
  • Should be able to paste image like contour in Font window
  • Add Layer should default to “Selected Glyphs”
  • Creating a glyph with double-click doesn’t trigger the “font was changed” flag
  • Ghost guidelines appear in the Glyph Window
  • Undoing font guides remove deletes glyph guides
  • Deleting image in glyph does not update in Font Window
  • Cursor keys don’t move images on Sketchboard
  • Problems with getting elements active
  • State of “Open Panel Automatically” button is ignored in the Output Panel
  • Set encoding to “none” crashes new font
  • Removing Font guides is not reflected immediately
  • Actions:Remove guides doesn’t remove guides
  • Cannot remove element guidelines with menu command
  • Crash when trying to link anchor to guideline
  • Anchors not shown on “normal” caps from existing file
  • Hints should be “behind” contours for selection purposes
  • Clean Up is shown as Simplify in the History
  • The number of References are not updating correctly in the Element and Gallery Panels

FontLab VI Preview 6421»

  • New Window > New Kerning Tab (or Window) operation.
  • New Tools > Remove Element Guides operation.
  • Actions > Power Width is back.
  • The Pencil tool is improved.
  • When using the Text tool, you can Cmd=double-click on a glyph to open it in a new Glyph Window.
  • When using the Metrics tool, you can drag a glyph within its advance width. Use Preferences > Spacing to disable this behavior.
  • New operations in the Transform panel.
  • New design and functionality in Paste Special.
  • Numerous bugfixes

FontLab VI Preview 6410»

The build for macOS (and future versions of FontLab VI) requires Mac OS X 10.10 Yosemite or newer. It won’t work on Mac OS X 10.9 Mavericks or older.

New features and improvements»

Glyph Design»

Detect node types»

New operations for detecting (correcting) node types in the Contour > Nodes menu.

Detect Smooth converts those corner nodes to smooth nodes for which the handles are collinear. This is equivalent to the FLS5 Correct Connections operation.

Detect Genius converts smooth nodes to Genius nodes (which will maintain G2 smoothness) if the curvature at both sides of the smooth node is nearly identical.

Detect Servant converts secondary nodes to Servant nodes, so you can nudge them when you move the primary nodes around.

These two operations were previously only performed when a font was opened the Preferences > Open and New Fonts > Detect smart nodes setting was enabled.

Clear Genius and Servant will make all nodes “dumb” again, i.e. just sharp, smooth or tangent.

Simplify vs. Clean Up»

The Contour menu now has two operations:

  • Clean Up is a “weaker” (more conservative) operation. It will remove superflous nodes at a minimum tolerance and detect smooth nodes, but will not perform any other optimizations, such as adding nodes on extremes.

  • Simplify is a “stronger” (more aggressive) operation. It combines Clean Up, Nodes at Extremes and some other optimizations, so it will reconfigure your contours a bit more.

More Glyph Editing improvements»

  • Improved: Glyph > Flatten Glyph combines all Elements with same appearance (fill & stroke) that are on the current layer into one element. It will also “flatten” any compound elements that use contour filters such advanced Fills, Smart Corners, Glue or Power Brush. This emulates the FLS5 Decompose Glyph operation.

  • Improved: the Transformation panel has three new buttons for horizontal alignment. These buttons perform alignment depending on the active tool. They will align the glyph the advance width when in Metrics mode, will align selected or all elements of the glyph when in Elements mode, and will align nodes in other modes.

Glyph Window»

Local View settings»

In FontLab VI, you can control which View details are visible in the Glyph Window (nodes, handles, curvature, hints, coordinates etc.). This is done via the View panel or the View menu (along with the Show submenu). Each Glyph Window has three combinations of View settings:

  • the Metrics View settings, which are used if the Glyph Window is in Metrics mode (i.e. if it was opened as a Metrics Window or if the Metrics tool is active)
  • the Kerning View settings, which are used if the Glyph Window is in Kerning mode (i.e. if it was opened as a Kerning Window or if the Kerning tool is active)
  • the Main View settings, which are used if any other tool is active (except the Text tool, which doesn’t use any customizable View settings)

In previous builds, each combination of View settings was “global”. Any change to the View settings would affect all currently open Glyph Windows. This build makes the View settings “local”, so each Glyph Window can be configured individually.

This means that when you change the View settings for one existing Glyph Window, the remaining Glyph Windows won’t be affected.

If you create a new Glyph Window, it will inherit the View settings depending on the window that is currently active:

  • If you open a new Glyph Window from within an existing Glyph Window, the new Glyph Window will inherit the View settings that you saw in that Glyph Window.
  • If you open a new Glyph Window from within a Font Window, the new Glyph Window will inherit the last combination of View settings that you’ve customized. In other words, whenever you change the View settings anywhere, that combination of settings becomes the “default View settings combination”, and that set is used when you open a new Glyph Window from within a Font Window.

We think this feature allows you to have much greater flexibility in your workflow. You can use one Glyph Window in a high zoom level, with many View details enabled (such as the grid, FontAudit, coordinates, handles, curvature etc.) and at the same time have a second, much more “minimalistic” Glyph Window open which gives you a more “long-distance” overview of the glyphs you’re working on.

True Fill»

In FontLab VI, you can set the opacity at which the contours are filled using Preferences > Glyph Window > Glyph fill. This works for all editing modes of a Glyph Window except Metrics, Kerning, Text and TTH. Typically, you would have this setting at about 30–40% transparent, which gives you a sense of which areas are filled or unfilled but does not obscure the view.

In this build, we’re introducing the View > True Fill setting (tap ShiftSpace to toggle). True Fill works like View > Show Layers > Fill Outline in FLS5. It will switch from rendering the semitransparent glyph fill to rendering the glyph fill at 100% opacity. All other View details that you’ve enabled (nodes, handles, hints etc.) are still visible.

Note that you can still hold Space or ` to Quick Preview only the fill (all other View details are hidden). You can also open a Metrics Window or use the Preview panel.

More Glyph Window improvements»

  • New: Preferences > Distances > Glyph window default zoom level has a new setting Fit to safe metrics. With this setting, the default zoom level (View > Outlines) vertically fits the glyphs between the Safe Top and Safe Bottom dimensions which you can specify in Font Info > Family Dimensions. Note: Those dimensions are also written as OS/2.WinAscent and OS/2.WinDescent OpenType fields.

  • Improved: More detailed settings in Preferences > Glyph window > Show node coordinates which allow you to customize which node coordinates are displayed if View > Show > Coordinates is enabled.

  • Improved: Preferences > Glyph window > Glow contour selection enables or disables the “glow effect” which appears when a contour is selected. When disabled, the contour is simply colored red.

  • Improved: When View > Show > Glyph Metrics is enabled, the glyph name will be shown above the advance width box near the bottom of the glyph inside the Glyph Window (#844)

  • Improved performance: On newer Macs, the hardware-accelerated OpenGL rendering (which is controlled in Preferences > General) should significantly accelerate the redrawing of the Glyph Window.

Spacing and Kerning»

  • In the Kerning panel, you can now select multiple pairs. Then you can delete them with Del. You can also adjust the values of all the active pair by 1 (with Left and Right) or by 10 (with ShiftLeft and ShiftRight). Note: Adjusting the values for multiple selected pairs doesn’t work yet, and there are some other issues with this functionality, which we’ll address.

  • There are new operations available in the Kerning panel “hamburger menu”: Filter Kerning for removing unwanted pairs (not fully working yet), and Adjust Kerning for changing the kerning values across multiple pairs (no Undo support yet).

Font Editing»

Variations and Layers»

  • New operation: Glyph > Match Masters which will attempt to the masters compatible for interpolation.

  • New: When you use the Variations panel, FontLab VI now builds a virtual .instance layer for all the affected glyphs. That layer is destroyed and updated whenever you navigate through the design space using the Variations panel. We’re still working on this functionality. Preferences > Editing > Live preview controls how often the .instance layer is rebuilt.

  • Improved: Importing MultipleMaster .vfb files and .glyphs files has been greatly improved.

  • Improved: Adding a new master in File > Font Info. This is still work in progress.

  • Relaxed master naming: a Master layer may still follow the mm.xxx=nnn notation (where xxx is the axis tag and nnn is the location), but that’s not required. You may name your Glyph Master layer with the same name as the name of a Font Master, then the Axis settings from the font master will be used (including weight/width). You may also name it using the Typographic Style Name, using one of “known” names for weight and width, then these values are used to position master on weight/width space. Note: We’re working on more documentation about these topics!

More Layers improvements»

  • A wireframe layer will show nodes. This is useful if you want to manually match masters (i.e. make the masters compatible for interpolation).

User Interface»

Elements panel»

We’ve improved the Elements panel.

  • Each contours is now rendered separately within each element.
  • You can drag-and-drop elements and contours within elements to change their stacking order (the first one is on top)

Toolbar»

  • The Toolbar can be now docked to the edges of the screen (rather than just window).

Files»

  • Improved: VFC and VFJ files are now associated with FontLab VI so they should open in the app when you 2x-click on them.

Bugfixes»

Major bugfixes»

  • Improved: Copy, Cut, Paste and Select All commands unavailable, menu problems after Save As (#981, #1051, #1061) — final resolution of this problem is pending

  • Fixed: Very hard to de-select Free Transform box (#1038)

  • Fixed: Glyph color flags disappear on re-open (#1036)

Crashes fixed»

  • Fixed: Noto Sans CJK tc Medium crashes app (#1001)

  • Fixed: Renaming an anchor makes FL crash often (#1017)

  • Fixed: Crash at startup (#1008)

  • Fixed: Crash on removing the kerning pair in the Kerning panel (#987)

  • Fixed: Crash on breaking a contour after joining (#1045)

  • Fixed: Add layer to all glyphs crashes on Win (#1003)

  • Fixed: Image panel: the smart mode of Remove Background crashes (#866)

Glyph Design»

Glyph Editing»

  • Fixed: Round Coordinates misbehaves with guidelines, Snap to Guides also (#1048)

  • Fixed: Measure tool not snapping to all contours and nodes (#788)

  • Fixed: “To Curve” does not work (#1021)

  • Fixed: Slant works incorrectly (#804)

  • Fixed: Rotate has 3x effect (#761)

  • Fixed: Double-click on a curve doesn’t select it (#1004)

Glyph Window»

  • Fixed: Contextual menu on a smooth node shows the option to turn it into a Smart corner (#1065)

  • Fixed: Ctrl-click on a guideline doesn’t give the guideline context menu (#1023)

  • Fixed: Zoom via click-and-drag magnifying glass misbehaves (#992)

  • Fixed: Problematic default zooming (#862)

  • Fixed: Problems with zoom out cursor in the Knife tool (#1052)

  • Fixed: Autoscroll GW on canvas bounds when drawing (#863)

  • Fixed: Can’t turn off mark attachment cloud in Metrics Tab (#951)

  • Fixed: Need way to turn off anchor cloud while kerning (#1015)

  • Fixed: Anchors Cloud is not showing (#1000)

  • Fixed: View > Show Handles has no effect (#1022)

  • Fixed: Quick Preview (Space or `) renders open contours with thickness (#1057)

Advanced Glyph Editing»

  • Fixed: Element Reference - copy/paste (#955)

  • Fixed: Undo problems with Elements (#993, #995)

  • Fixed: Undo kills glyph after element was placed into glyph (#864)

  • Fixed: Fill tool fails (#991)

  • Fixed: The Glyph tab renders elements differently (#986)

TrueType Curves»

  • Fixed: Try to maintain TT curve shape during point deletion (#1016)

  • Fixed: Marquee selection selects nodes but not handles should not affect TT off-curve points (#943)

  • Fixed: TT curves display strangely when unfilled (#1019)

  • Fixed: Scissors interact badly with TrueType curves (#1014)

Spacing and Kerning»

  • Fixed: Changing kerning is not undoable (#663)

Font Editing»

Variations and Layers»

  • Fixed: The Global mask is invisible (#954)

  • Fixed: Function to rearrange contours/Elements per master (#896)

drag-drop in the elements panel will rearrange elements or contours.

Actions and Operations»

  • Fixed: Selecting the section titles (metrics, effects, hinting) references the last sub-section of the preceding section in Actions (#1069)

  • Fixed: Change title of right-hand panel from “Set Fixed Width” to “Set advance width” to match the name in the left-hand list in Metrics Actions (#1070)

  • Fixed: Actions / Metrics / Adjust metrics wrongly includes kerning (#542)

  • Fixed: Generate Glyphs creates glyphs with no Unicode (#857)

  • Fixed: Total glyph count when 2 fonts selected (#937)

  • Fixed: Index actually uses name ordering (#983)

Files and Sketchboard»

  • Fixed: Pref for save font location does not work (#990)

  • Fixed: Fonts panel: the pane for fonts export works incorrectly (#985)

  • Fixed: Place As Glyphs Issues (#1010)

  • Fixed: Priority of Traced Image (#833)

  • Fixed: Adobe Illustrator swatch usage messes up copy/paste of color to FL (#1002)

FontAudit and Hinting»

  • Fixed: F7 Autohint grabs wrong stem values and/or affects wrong glyphs (#814)

  • Fixed: FontAudit visualization doesn’t always trigger (#1075)

  • Fixed: Autohinting (F7) does not Undo (#813)

User Interface»

  • Fixed: Font Window Cascade & Tile functions needed (#883)

  • Fixed: Detaching and re-docking a tab results in cut off content (#560)

  • Fixed: Button in Node Panel that converts a Corner Node to Smart Node should be called “Smart” not corner (#1067)

  • Fixed: Node panel: when handle is selected most of the controls should be disabled (#1033)

  • Fixed: Gallery panel: wrong tool tip for the + button (#1062)

  • Fixed: Pencil Tool Left/Bottom icon needs tool tip adjustment bug (#960)

  • Fixed: After I used the Ellipse tool, the Property bar for Rectangle tool doesn’t appear (#972)

  • Fixed: Selecting the “link sidebearing” buttons in the Glyph panel doesn’t reflect in the same buttons in the Property Bar (#1040)

  • Fixed: Output Panel needs a Tool Tip (#964)

  • Fixed: Text Tool Tags icon needs Tool Tip (#959)

  • Fixed: The order of the Window menu items (#517)

  • Fixed: Backspace is not working in the text field in the Content Sidebar (#1026)

  • Fixed: Anchors and Pins panel loses its content (#906)

  • Fixed: Tapping D key activates Fill tool, tapping S key activates Scissors tool (#1006)

  • Fixed: Property Bar doesn’t update on selection (#1044)

  • Fixed: Metrics Table changes metrics mistakenly (#1043)

  • Fixed: Node panel: the update icon next to the Node field is always disabled (#1032)

  • Fixed: Clicking on the lock buttons next to the sidebearings doesn’t do anything (#1035)

  • Fixed: Tools > Edit Mask is not in synch with the layer selection (#698)

  • Fixed: The Element panel becomes empty (#774)

  • Fixed: Adding a Sticker corrupts the preview of MM glyph (#855)

  • Fixed: Font Audit panel needs tool tips bug (#962)

  • Fixed: Brush tool: wrong mode selection is shown (#997)


FontLab VI Preview 6343»

Panels»

When a panel is hidden, Alt-clicking on its name in Window > Panels or on the Panels List bar will “summon” the panel to the current window: the panel will appear and will be docked at the side or bottom of the current window. This is useful when working with detached windows or if a certain panel appears off-screen.

VFJ (FontLab VI JSON format)»

The support for reading and writing the JSON-based VFJ format is ready for testing. We still expect changes, but all or most aspects of a FontLab VI font (including multiple layers and compound elements) should now export correctly into VFJ. You can use File > Export Font As > FontLab VI JSON (VFJ) to save a font into the VFJ format. Then, you can modify the VFJ file outside of FontLab VI (in a plain-text editor or programmatically), and read the changes back into FontLab VI by opening the VFJ file.

Bug fixes»

A few dozen bug fixes regarding geometric operations and other aspects of the app.


FontLab VI Preview 6314»

Build 6314 brings several improvements in handling of zoom as well as metrics and kerning.

Zoom»

In FontLab VI, there are three types of measurement for the zoom level in the Glyph window. The zoom level can be based on:

  • points, with a customizable “actual text size” defined in typographic points
  • pixels, where font units correspond to logical screen pixels
  • percentage, with several zoom levels based on a customizable “100%” setting

In addition, View > Fit On Screen (Cmd0) zooms the Glyph window so that its entire contents is visible.

Point-based zoom»

The Glyph window’s Content sidebar, as well as the Metrics or Kerning tool’s context top bar have a Text size control, where you can select or (in the sidebar) enter a reference size of the Glyph window text, measured in typographic points. Then, View > Actual Text Size (Cmd1) will zoom to your actual text size that you’ve chosen. If you choose the Text size to be 96, then zooming to Actual Text Size will show the glyphs at 96 pt, just as they show in an app where your final font will be used. Since the point-based zoom is mostly useful for previewing and spacing, when you choose Window > New Metrics Tab, a new editing window will be opened with the zoom defaulting to Actual Text Size, and the Metrics tool activated.

Note that you can still zoom in and out, using the Z and X keys, using Cmd+ and Cmd-, and using the Free zoom tool (in the bottom-right corner of the Glyph window or using CmdSpace). Zooming in and out does not change the actual text size. However, the automatic text wrapping in the Glyph window does depend on the actual text size. If you have a long text in your Glyph window and use Text > Wrap > Auto, then the text will automatically wrap (line-break) to multiple lines. The length of the lines will depend on the Text size that you’ve defined. So if you want longer lines, reduce the Text size. If you use Text > Wrap > Manual, the Text size doesn’t really matter because the lines will only break when you press Enter in the Text tool, or enter \n in the Content sidebar’s text editing field.

Pixel-based zoom»

The pixel-based zoom is useful when you want a very precise preview of your node coordinates. If you choose View > Zoom 1:1px (Cmd5), then the Glyph window will zoom so that one font unit (UPM unit) corresponds to one logical pixel on your screen. A “logical pixel” means that on a non-Retina screen, it will be really one pixel, but on a Retina screen, it will be two pixels. View > Zoom 2:1px will zoom so that one font unit will correspond to half a logical pixel (i.e. one Retina pixel). Pixel-based zoom makes it easy to work with on-screen measuring apps as xScope or QuickLens.

Percentage-based zoom»

Finally, there is the percentage-based zoom, which is the most flexible system. Choosing View > Zoom 100% (Cmd3) will zoom the Glyph window to a “100%” zoom level, which you can define.

In Preferences > Distances > Glyph window default zoom level you can decide yourself which vertical distance FontLab VI will fit to your window when you choose the “Zoom 100%”: it can be the line height, a text size in points, or a distance between two percentages of the font’s UPM size.

The 2nd setting defaults to 600 pt. You can easily coordinate this with the actual text size that you set in the Content sidebar of the Glyph window. For example, if you keep the setting at 600 pt but set the Glyph window’s actual text size to 150 pt, then Cmd3 will give you 4x the zoom factor of Cmd1.

The 3rd setting defaults to fitting between -40% and 90% of the UPM size. If you set the first number lower (say, -60%), then “Zoom 100%” will include more of the glyph portions that is below the baseline (useful for scripts with long descenders).

In addition to Zoom 100% (Cmd3), there are predefined zoom levels for 50% (Cmd2), 200% (Cmd6) and 400% (Cmd7), which are all relative to the “100%” zoom level.

Font Window»

If you have one or more glyphs selected in the Font Window, then:

  • Enter or ++“double-click”++ will open a Glyph window with the Contour tool active, and the zoom level set to “100%”
  • CmdEnter or Cmddouble-click will open a “Metrics window”, i.e. Glyph window with the Metrics tool active, and the zoom level set to Actual Text Size
  • CmdAltEnter or CmdAltdouble-click will open a “Kerning window”, i.e. Glyph window with the Kerning tool active, and the zoom level set to Actual Text Size

Metrics and Kerning tools»

  1. If you enable Preferences > Editing > Double-click to glyph in Metrics mode opens it for editing, then when you’re in the Metrics or Kerning tool, and you double-click on a glyph, a new Glyph window with just that glyph will open, with the Contour tool active. This emulates the behavior of the Metrics window in FontLab Studio 5.

  2. When the Metrics or Kerning tool is active, the context top bar of the Glyph window has a Show panel button which will open the appropriate panel (Metrics or Kerning) on the side of the window — like in FLS5.

  3. If you use the Kerning tool and have a text in the Glyph window, then, in order to change the kerning value between two glyphs in the text, you need to “activate” that pair first by clicking. This is safer but slower. But if you enable Preferences > Editing > Inactive kerning pairs are editable, any kerning pair between any two glyphs in your Glyph window becomes instantly editable when dragging with your mouse pointer. This is faster but also potentially more error-prone.

  4. When you use the Metrics tool, the context top bar of the Glyph window now has buttons that can “lock” or “unlock” the sidebearings. If you unlock the sidebearings, the glyph width will not change if you edit the contours. If you lock the sidebearings, and you edit the contours (e.g. scale them), the sidebearings will keep their defined value while the glyph width will change.

  5. In the Kerning panel, you can now:

  6. Ctrl-click on a class-based pair to populate into the text all combinations of the left class with the right glyph

  7. Alt-click on a class-based pair to populate into the text all combinations of the left glyph with the right class
  8. CtrlAlt-click on a class-based pair to populate into the text all combinations of the left class and the right class

Other»

Numerous fixes, regarding removing overlaps and crashes on some operations.


FontLab VI Preview 6302»

Build 6302 brings initial support for multi-master (variation) kerning. In previous builds, kerning was only stored for the first master, so if you imported a MM VFB, all masters got the kerning values of the 1st master. It was not possible to define kerning for different masters.

This build changes that: when you open a MM VFB in FontLab VI, kerning will be imported for each master. Then, when you switch the master using the Layers and Masters panel or the context top bar, the correct kerning will be displayed for each master in the Glyph window. When using the Kerning tool, you can edit the kerning for each master separately.

However, note that in this build, the correct kerning will only be saved in the VFC file. If you export a VFJ, or a set of VFB or UFO files, incorrect kerning will be saved. We’re working on this actively.

Also, note that in the Features panel, if you choose Create [kern] feature, a kern feature for the currently-selected master will be generated, and the feature definition for the previously-defined kern feature will be lost. The Features panel currently does not support variation feature definitions. This is similar to how FontLab Studio 5 worked. We intend to improve this.


FontLab VI Preview 6293»

User interface»

Build 6293 brings further improvement in the general user interface, especially in the management of windows and panels. We’ve redesigned the Preferences dialog, most options have more clear labels and are better organized. Some have icons for increased clarity.

The most important change is in Preferences > General > Windows and tabs configuration. The three choices allow you to work either with all tabs integrated into one window, each font having its own floating window (but all Glyph windows opening as tabs within that window), or all Font and Glyph windows being floating.

Note that you can always turn a tab into a floating window and back, using docking. To undock a tab, move the tab heading out of the window heading. To dock, move the window heading near another window’s heading (Window > Allow docking needs to be enabled). You can also undock all windows from the Window menu.

The major change in the user interface on macOS is that FontLab VI no longer has a main window. This means that you can close the Sketchboard or other windows and closing those windows will not cause the entire app to quit. Also, when you close the Sketchboard (or disallow it from opening on startup in Preferences > General), you won’t see a light gray floating window that has no function. Overall, FontLab VI on macOS now works more similarly to other Mac apps when it comes to window management.

Text menu»

We’ve redesigned the Text menu. If you have a Glyph window open with the text adhesion and the glyph A is active, then Text > Next in Text (] key) will step to the next glyph, i.e. the D glyph, while Glyph > Next Glyph (Cmd] or .) will replace A with the next glyph from the font (possibly B), so the text will be bdhesion.

If your text in the Glyph window is multi-line, you can use the Text menu navigate to the next/previous line. Text > Wrap allows you to change how the Glyph window presents the glyphs. If you choose Text > Wrap > Manual, then the text you enter using the Text tool or into the Glyph window’s Content sidebar will be shown as one long line, unless you manually enter line breaks using Enter, or, in the Content sidebar, using the special code \n. With Text > Wrap > Auto, the Glyph window becomes a “frame” with a fixed width. The text will automatically wrap to form multi-line text. The length of each line depends on the font size that you can set in the Content sidebar or, when using the Metrics or Kerning tools, in the context top bar. Finally, Text > Wrap > Table presents the Glyph window’s text as a table of individual glyph cells, which will be useful if you’re designing overlapping or zero-width glyphs.

Sketchboard text frames»

In addition to using Glyph tabs or windows, you can work on the Sketchboard to do your glyph design. Use the Text tool on the Sketchboard to place multiple text frames, and use the Fonts panel to switch the font shown in the frame. Each Sketchboard frame is a mini Glyph window. You can use all the Toolbar tools within each Sketchboard frame to draw or edit glyphs and perform spacing or kerning. But you can also arrange multiple text frames on the Sketchboard, from different fonts, with different texts, and in different sizes. With the Text > Frames submenu, you can arrange multiple frames on the Sketchboard and perform additional operations.

Other changes»

The VFC files open faster.

The Pencil tool now uses just one universal algorithm. Previously, we had two different algorithms and allowed you to switch between them using Shift. But after user feedback, we decided to only keep the one which users considered better.


FontLab VI Preview 6283»

Window management»

Build 6283 improves management of Font and Glyph tabs vs. windows. There is a new option in Preferences / General.

If you choose Fonts open in windows, glyphs open in tabs, each font that you open will have its own floating window. When you select and open some glyphs, the Glyph windows will open as docked tabs next to its Font window, but Glyph windows from different fonts will not be mixed as docked tabs in the same floating window. You can still undock a Glyph tab from one floating window and move it to another document window.

The setting All fonts and glyphs open in windows simulates the working environment of FontLab Studio 5, where all Font and Glyph windows open as floating windows instead of docked tabs. The setting All fonts and glyphs open as tabs represents the previous default behavior of FontLab VI, where you have one main floating window and all Font windows and their Glyph windows open a docked tabs.

This build also introduces new commands in the Windows menu: Tile Windows and Cascade Windows, which automatically arrange the floating windows. In this menu, you can also undock an active Font or Glyph tab by disabling Allow Docking, and you can turn all Font or Glyph docked tabs into floating windows using the commands from the Undock submenu.

The FontLab VI build 6283 for Microsoft Windows has a more native windows management, with one common application frame and all floating windows gathering within it — just as you would expect from a native Windows app.

In this build, panels and toolbars still don’t behave perfectly — sometimes they appear docked to one particular floating window, or the Sketchboard, while you may need them in another window. If you prefer to work with floating windows, you can undock the toolbars and panels and stick them to the edges of the screen. You can also disallow docking of the panels by clicking on the small rectangle in the top-right corner of a panel heading. This is something we’re still working on to improve.

Also, on macOS, FontLab VI still has an “main app window”, which contains either the Sketchboard or is just a gray window. If you close that main window, the entire application will close. We’re working on eliminating that “main app window” so FontLab VI for Mac behaves fully like a native macOS app.

Other changes»

Build 6283 includes numerous other fixes and improvements. A more complete list will be provided.


FontLab VI Preview 6268»

Elements»

  • New Element context bar (at the top of a Glyph Window).
  • Elements panel now shows the transformation (slant, rotation) of the element, you can edit these properties there (previously it was possible to edit them in the Transform panel).
  • In the Elements panel, you can now copy the metrics from the base glyph to glyphs selected there.
  • New command Element / Link Element Reference is the reverse of Unlink References. With an unlink element selected, it will look for identical elements in the font and, if found, build a link, i.e. convert the current element into a reference.

Glyph drawing»

  • Node context bar has new button to set position of a Handle relatively to the Node.
  • Selected handles will show angle of the control vector.
  • Glyph context bar shows width and height (in addition to bottom-left and top-right points).
  • Glyph context bar has a Flatten Glyph button.

Glyph management»

  • Rename Glyph command will rename glyph in features, classes and kerning.
  • When Font Window is sorted by Index, drag-drop will reorder glyphs like in FLS5.

Kerning classes»

  • FontLab VI now reads kerning group flag (mark) color from UFO.
  • If 1st or 2nd kerning class is selected as caption in Font Window, glyph cells will show kerning class flag instead of glyph flag.
  • When you create a new kerning class, it is named after the first selected glyph.

Other»

  • Transform panel is now “write-only” — it always applies the transformation to contours, not elements.
  • Behavior of Pins is improved.
  • Many other fixes.

FontLab VI Preview 6254»

Shapes are now “Elements”»

In FontLab VI, glyphs are constructed from flexible building blocks that in earlier Public Preview released were called “Shapes”. With build 6254, we’re introducing a new name that should better communicate their function: Elements.

In FontLab VI, each font includes a collection of elements that are used in the design process. In FontLab VI, each glyph (except empty ones without any content) consists of one or more layers, and each layer can hold one or more elements. In FontLab Studio 5, the predecessor of elements was components, which were modeled after the components in the TrueType font format. In FontLab VI, elements are partly inspired by the CFF font format, where each glyph can refer to one or more subroutines. These elements are more flexible than components were.

Elements are “boxes” which have some “contents”. An element has the “outside” (the “shell”) and the “inside” (the contents, which can be contours, images or some more compound objects). FontLab VI elements are a bit magical: multiple elements can refer to the same contents, elements can contain references to other elements, and can form more compound elements.

Element types»

  • Contour element contains one or more closed or open contours built from PostScript or TrueType segments. It can also contain some alignment objects: element guides and pins. The “inside” i.e. the existing contents of a contour element can be modified using the Contour, Eraser, Knife, Scissors tools, and new contours can be added to an element using the Brush, Pencil, Rapid, Pen, Ellipse and Rectangle tools.
  • Image element contains a bitmap image or an SVG image. You can apply some image filters to bitmap images inside FontLab VI, but detailed editing of SVG and bitmap images needs to be done in dedicated apps outside FontLab VI. You can convert SVG image elements into editable contour elements within FontLab VI, but more advanced SVG effects like gradients will be lost. You can also convert bitmap image elements into contour elements via autotracing.
  • Compound element contains one or more contour elements and a contour filter that adds advanced, live (non-destructive) contour effects to the contours: Fill makes open contours and advanced fill effects, Smart Corner makes rounded or inktrap corners, Glue can fluently stick an open contour to another contour, and Power Brush creates skeleton-based calligraphic strokes.
  • Element group consists of two or more elements grouped together, so that they can be moved, transformed etc. together.
  • Sticker is a special element that can be used to create “sticky notes” with arrows inside glyphs.

Element references (components)»

Any element can be referenced in multiple glyphs. Each element reference shares the same contours, element guides and pins, but has its own transformation (position, scale, rotation, slant) as well as, for color fonts, its own fill color and stroke color and thickness.

Element references can work like traditional components: you place an unlocked reference to an element in a primary glyph (such as A). There, you can edit the contours.

Then, you place locked references to the same element in other glyphs (e.g. Aacute, Adieresis). When you try to edit the contents of a locked reference, FontLab VI will open the primary glyph where you can modify the contours, and the changes will propagate to all the locked references. So locked references behave like TrueType, UFO or VFB components.

However, you can always unlock some or all of the locked references. Then, you can also edit the contours in-place in each unlocked reference, and the changes of the element contents will propagate to all references including the one in the primary glyph. So in fact, the primary glyph is just one of the glyphs that contains a reference to a given element where that reference is unlocked.

If a reference is unlocked only in one primary glyph, FontLab VI will use that glyph as the contour glyph when generating fonts in formats that support components (TrueType-flavored OpenType, VFB or UFO), while all the other references will be exported as components. If you unlock more than one reference, FontLab VI will automatically pick the best contour glyph.

Element transformation»

With the Element tool and the Elements panel, you edit the “outside” of elements — the “shells” of the “boxes”. The difference is most evident with contour elements:

  • If you scale, rotate, slant or mirror the contours in an element using the Contour tool (or the Transform panel when the Contour tool is active), you’re editing the contents of the element, so the point coordinates change permanently and the change is visible in all references.
  • If you scale, rotate, slant or mirror an element using the Element tool (or the Transform panel when the Element tool is active), the change is “live” and applies only to the active element. The contents of the element (and of all references to the element) stays unchanged. Only the “shell” of the particular element is scaled, which is similar to how scaled or rotated TrueType components work.

Exclusive Editing»

When Edit > Exclusive Editing is enabled, the contour modification tools (Contour, Eraser, Knife and Scissors) work only on contours in the active element of the current glyph. When Edit > Exclusive Editing is disabled, tools like Pencil or Pen will draw in the active element of the current glyph, but the contour modification tools work on contours in all elements of all glyphs visible in the Glyph Window.

Element menu»

In build 6254, we have replaced the Element menu with the Element menu and rearranged it a bit. The structure of the Element menu is as follows:

  • New Element creates a new element in the active glyph. The new element has no contents but you can start adding contours using any of the drawing tools, or paste some contours from the clipboard. Since this is a new element, you can use a new contour filters with new settings, for example a Power Brush, or assign a new stroke and fill color to the element.
  • Add Element Reference… works like Add Component… in FontLab Studio 5 — it allows you to insert a reference to all elements from a glyph that you can specify by name. If the specified glyph has more than one element, those elements will be added as a group. When you generate a TTF, such a group will be exported as a “nested component”.
  • Component-centric commands that work on elements selected in the Glyph Window, or on all elements of a glyph in the Font Window. They correspond to the behavior of components in FontLab Studio 5: you can lock/unlock the elements, edit their contents, unlink a reference (i.e. decompose) and place the selected element into their own dedicated glyph, which will become the primary glyph for references for that element.
  • Submenus to Arrange and Align the selected elements (or all elements in the current glyph).
  • Group and Ungroup selected elements (or all elements in the current glyph).
  • Optically Separate splits an element consisting of multiple non-overlapping contours into single elements.
  • Next/Previous activate different elements within a glyph.
  • Combine Contours to Element works best with Exclusive Editing disabled. Then, you can select contours from multiple elements and create one single element from them. This is different from a group: if you group elements, each element keeps its filter, stroke and fill settings. If you combine contours into an element, the contours get the same filter, stroke and fill settings.
  • Separate Contours to Elements creates a separate element from each selected contour.
  • Glue Selection is a contour filter that allows you to fluently attach and open contour onto another contour.
  • Make Power Brush is a contour filter that takes the contours of the active element as a skeleton and applies a live calligraphic stroke that you can control using the Brush panel.
  • Expand Transformation will permanently convert an element transformation (scale, slant, rotation) into a contour transformation if the element has no references.
  • Expand Filters converts compound contour filters such as Fill, Smart Corner, Glue and Power Brush into simple contours.
  • Expand Stroke converts the stroke defined in the Stroke panel into simple contours.
  • The Image submenu contains a number of operations specific to bitmap and SVG image elements.
  • New Pin adds a pin to the active element.
  • New Sticker adds a new sticker to the current glyph.

Other changes in 6254»

Color Flags»

In the Font Window, the Color Flag selector now has small +/– buttons which allows you to set the flag values of all selected glyphs higher or lower by 1, or with Shift by 10. This way, if you have glyphs flagged with different colors and you select some of them, you can change their existing flag colors while keeping them distinct, rather than giving them all a completely new flag color.

Glyph editing»

  • Page Up/Page Down node or element navigation [Mac-6189] #742 — if a glyph only contains locked elements (components), the Page Up/Page Down keys will navigate between them, otherwise they’ll navigate between the contour points of the active element (like in FLS5)

Bugfixes in 6254»

Contour editing»

  • Contour / Simplify should not deselect contour [Mac-6224] #836
  • Contour selection should disable Tunni line control [Mac-6224] #825
  • BCPs jump strangely while moving contour [Mac-6241–2-] #870

Fill»

  • Copy Paste in FW Destroys Fill [6241–2-] #873
  • Fill tool misbehaves [Mac-6189] #745

Transform»

  • Rotate and flip are damaging contours [Mac-6249] #884
  • Various Transform panel problems [Mac-6224] #819
  • Want to free transform partial contour [Mac-6241–2-] #871
  • Rotate 90 does a 180 instead [Mac-6224] #834

Copy-paste»

  • Copy/paste big problems [Mac-6224] #826
  • Improve paste from Sketchboard to Glyph window [Mac-6224] #837
  • Paste+Move+Undo undoes Paste [Mac-6224] #811
  • Copy-paste of elements [Mac-6224] #818

Elements»

  • App keeps reverting to Element tool! [Mac-6224] #827
  • Moving element using the Transform panel crashes or removes the element [Mac-6224] #822
  • Switching between glyphs should remember which element was selected using V tool [Mac-6224] #817
  • Visualization of active locked element vs. unlocked element [Mac-6189] #743
  • Element and Contours selection visual feedback confusing [Mac-6189] #741
  • Glue Selection crashes if applied to selected elements [Mac-6249] #881
  • “Expand” of Power Brush crashes [FL6M-6193] #752
  • Smart Corners removes guidelines [Mac-6224] #809

Glyphs»

  • Added Glyphs don’t get friendly names [Mac-6241–2-] #876
  • Need easy way to Append glyph [Mac-6239] #843
  • Copy + Append Glyph creates linked ref [Mac-6241–2-] #877
  • Legacy FL5 code doesn’t work in Generate Glyphs dialog [Mac-59XX-6224] #808
  • Anchor display is erratic, often missing [Mac-6241–2-] #879

Color fonts»

  • Interpret SVG: elements preview get mirrored in the Elements panel [Mac-6224] #829
  • Color fonts not exported [FL6M-6193–2-] #755

Other»

  • Stickers cannot be resized on the Sketchboard [Mac-6241] #867
  • Right click on Glyph cell in Font window crashes [Mac-6241] #845
  • Hangs on vfb open [Mac-6238] #838
  • Kerning edit crashes FL [Mac-6224] #810
  • Vertical guides type isn’t changed [Mac-6224] #805

FontLab VI Preview 6224»

VFJ, experimental JSON-based save format»

This build adds experimental support for VFJ, FontLab’s new JSON-based save format. The current version of the VFJ format is very early and it will change, so fonts saved in the JSON format today will likely not open in future builds of FontLab VI. However, we’re interested in your feedback on VFJ.

The default native (lossless) save format of FontLab VI is VFC, which is a compact binary representation of all the internal data structures. We’ve also wanted to support a human-readable lossless save format. After having experimented with XML-based formats, we’ve now decided to adopt a JSON-based format. JSON is a modern open-standard format which was popularized through its use in JavaScript but is now increasingly popular in other scenarios. It’s quite similar to Python lists and dictionaries, and is much more lightweight than XML.

When you save a font in FontLab VI using File / Save Font or File / Save Font As…, FontLab will save the font in the VFC format. However, in Preferences / Save Fonts, you can enable additional formats in which the font will be saved. Saving fonts in UFO and VFB is lossy, i.e. not all structures will be saved. The XFO format (our extended variant of UFO) will be phased out. You can also export to any of these formats using File / Export Fonts or File / Export Fonts As.

In this build, you can also choose File / Export Fonts As / FontLab VI JSON (VFJ). Keep in mind that currently, the support for VFJ is unfinished, so use the VFJ saving for experiments only. VFC is the only format that we currently fully support. Also: in Preferences / Save Fonts, there is a setting for saving the fonts as VFJ, but this setting does not work yet. To test VFJ, please use File / Export Fonts As.

Bugfixes»

This build also fixes numerous bugs reported on the forum, including

  • Guideline lock state is not saved in VFC [Mac-6204] bug #783
  • Families from PostScript name works incorrectly [Mac-6204] bug #798
  • Open VFB then save causes crash [Mac-6204] BAD bug #795
  • “Save Changes” dialog circles endless [Mac-5997] bug #456
  • Sidebearings not draggable when they should be [Mac-6204] bug wish (feature/UI from FLS 5) #784
  • Sidebearing measurements don’t update while dragging sidebearing [Mac-6204] bug #785
  • “Back to the future” issue [Mac-6203] BAD bug #780
  • The export destination link stopped working [Mac-6193] bug #767
  • Crash on closing several fonts [Mac-6224] bug #802
  • Next and Prev Layer commands are reversed [Mac-6204] bug #801
  • Can’t always select points of unfilled contour area [Mac-6204] bug #787
  • Measure tool not snapping to all contours and nodes [Mac-6204] bug #788
  • Brush panel: the Set button is inactive [Mac-6204] bug #776
  • The Gallery panel doesn’t show new clones [Mac-6166] bug #705
  • Copy-paste of outlines removes overlap (shouldn’t) [Mac-6193] bug #762
  • Rotate messes up existing bucket fills [Mac-6193] bug #763
  • Particular SVG font won’t open [Mac-6204]bug #797
  • Bucket fills are changed by sidebearing changes [Mac-6224] bug #803
  • Use .vfj as the JSON document file extension Feature #713
  • Selected outline is not red [Mac-6204] bug #775

Important for Windows users»

Some keyboard shortcuts in the menus are marked with a Meta modifier key. They are not accessible. The Mac has three modifier keys: Ctrl, Alt and Cmd, while Windows computers only have two that can be used by app developers: Ctrl and Alt. We’re working hard on providing sensible keyboard shortcuts for our Windows users, but this will take a while!

Important for Mac users»

If you launch the app for the first time, right-click or Ctrl-click on FontLab.app and choose Open. If you experience problems launching this new build on Mac OS X, remove the FontLab VI Preferences file ~/Library/Preferences/com.FontLab.FontLabVI.plist. To do that:

  • In Finder choose Go / Go to Folder…
  • In the dialog box, paste ~/Library/Preferences/
  • Locate the com.FontLab.FontLabVI.plist file and delete it.

FontLab VI Preview 6204»

App stability»

We believe we fixed a 3rd-party library that caused some 50% of the FontLab VI crashes, so this build should be much more stable.

Tracking and leading»

The tracking and leading controls are now in the content sidebar of the Glyph Window, and in the context bar of the Spacing tools (Metrics and Kerning). You can apply “virtual” tracking and leading using those controls. The tracking and leading is only visible in the Glyph Window, and does not affect how the font is exported.

The horizontal tracking is measured in ‰ (1/1000) of the em size. Half of the selected value is added on each side of the glyph.

The vertical leading is measured as a percentage of the line height (baseline-to-baseline distance), where 100% equals the sum of the font’s typo ascender, descender and line gap.

Classes panel (was Groups panel)»

By popular demand, we’ve renamed the Groups panel back to Classes panel, as it was called in FLS5.

You can now flag classes using colors.

Sorting of classes in the panel is disabled by default, but you still can sort by clicking on the column header.

If a class definition contains glyphs that are not present in the current font, they will no longer disappear. Instead, FLVI will show them as “empty cells” in the cell view of the Classes panel, and will show how many glyphs you actually have

Glyph drawing»

If Edit > Exclusive Editing is off, you can still connect different elements with the Pen tool.

The Pen tool is improved.

Quite a few problems with rounding should be fixed.

FontAudit»

The FontAudit test for disproportional curves is off by default. Iff it is on, it will detect only very disproportional curves.

View panel»

The View panel now has icons for many more View details, so its contents corresponds to the contents of the View menu (including the View > Show submenu).

Text and Pair Phrases»

In the Spacing tools (Metrics, Kerning) context bar, the “…” button will open a dropdown box where you can now more comfortably edit the Pair Phrases or the Text Phrases. You can navigate through those phrases using the Pairs and Phrases panel.

Important for Windows users»

Some keyboard shortcuts in the menus are marked with a Meta modifier key. They are not accessible. The Mac has three modifier keys: Ctrl, Alt and Cmd, while Windows computers only have two that can be used by app developers: Ctrl and Alt. We’re working hard on providing sensible keyboard shortcuts for our Windows users, but this will take a while!

Important for Mac users»

If you launch the app for the first time, right-click or Ctrl-click on FontLab.app and choose Open. If you experience problems launching this new build on Mac OS X, remove the FontLab VI Preferences file ~/Library/Preferences/com.FontLab.FontLabVI.plist. To do that:

  • In Finder choose Go / Go to Folder…
  • In the dialog box, paste ~/Library/Preferences/
  • Locate the com.FontLab.FontLabVI.plist file and delete it.

FontLab VI Preview 6193»

Known issues»

There are some issues with handling of color fonts (OpenType+SVG, TrueType+sbix). We’ll be fixing it in the next release.

Contour editing»

Power Nudge is now controlled differently: to toggle it permanently on or off, tap ShiftC (previously, it was just C). But to activate it temporarily, press and hold C.

Contour / Round Coordinates now works differently. In previous builds, editing and drawing was always done in fractional coordinates while the rounding was done on the fly. Now, when rounding is enabled, editing with Contour tool, drawing with Pen, Rapid, Ellipse, Rectangle always create fully rounded coordinates.

Nodes will no longer snap to invisible guidelines.

Flipping and other transformations of partially selected contours is now correct.

Direct segment editing»

When you click on a segment, you can now edit it using the cursor keys like in FLS5. With Preferences > Editing > Click to curve makes it selected you can revert to the previous behavior which selects the segment you click on.

Direct segment editing (dragging on a “blue diamond” that appears when your pointer approaches the segment) will not snap to guidelines but will snap to its original location. Holding Ctrl prevents snapping to the original location. Also, the blue diamond will turn red if your pointer approaches a selected segment.

Open contours»

Ends of an open contour are now rendered differently.

Contour > Break on a node will only select one node so you can move it from the other node using cursor keys.

Keyboard shortcuts for tools»

  • The Eraser tool now has only one keyboard shortuct: 2 (previously it was 2 and Q).
  • The Scissors tool now has a new keyboard shortuct: Q (previously it was K).
  • The Kerning tool now has a new keyboard shortuct: K.
  • The = key activates the marquee zoom tool until you click or click-and-drag, same as CmdSpace.
  • The - key sets the zoom level to View / Outlines zoom, same as Cmd3.

Ellipse and Rectange tools»

When the Ellipse or Rectange tool is active and you click in the Glyph Window, a dialog box will appear that lets you add the object by specifying the numeric dimensions.

Pen tool»

While drawing with the Pen tool, you can click on the last node (that you’ve just drawn) multiple times. The first click will remove the outgoing handle, the second click will remove the incoming handle, the third click will remove the node. We’ve also fixed other issued with the Pen tool.

Brush tool»

The Brush panel now has new buttons: Set/Remove to apply and remove the Power Brush to the current Element, and Expand to expand a Power Brush into flat outlines. The Brush tool context bar also has the Remove and Expand buttons that work analogically.

Metrics and Kerning tools»

The context bar for the Metrics and Kerning tools now have controls for Tracking and Leading, which affect the text rendering in the current window (in all tools). This allows you to preview how your font will behave when end-users apply different tracking (letter-spacing) and leading (line-height).

In Metrics and Kerning tools, when you disable Show metrics (2nd button from the left in the context bar), the + glyph metric marks no longer appear, so you have a completely clean view of your text.

The Kerning tool now has a new keyboard shortcut: K.

In Kerning tool, it’s now possible to click very thin glyphs with your pointer.

FontLab VI will read class-based AAT kerning from an Apple-style kern table.

FontLab VI will now keep original kerning group names when opening a VFB.

Text and Pair Phrases»

Text Phrases and Pair Phrases are separate. You can edit them by clicking on the button in the context bar of the Metrics or Kerning tool.

The built-in Text Phrases and Pair Phrases are improved.

You can choose which content to show in the Pairs and Phrases panel using the selector at the bottom of the panel. Pairs will always show the pair phrases (used for kerning), Texts will always show the text phrases (used for spacing), and Auto will toggle between the two depending on the active tool.

The Pair Phrases mode of the panel allows multi-selection. You can press the diamond button to autokern the selected pairs.

Browse phrases in Metrics or Kerning tool with Up++/++Down cursor keys or with CmdPage Up/CmdPage Down (CmdFnUp/CmdFnDown). If your current Text is multi-line, it will first step through the lines, then go to the next phrase.

Elements / Components»

The Element Frame will not appear if it is not needed i.e. when you have only one element in the glyph without any references or transformations.

The bottom-left corner of the Element Frame shows the element transformation (scale, rotate, slant).

The Elements panel now has a Table that you can open using the 2nd button on the top of the panel. In Glyph Window, the Elements table shows all glyphs in the font which reference the active element. In Font Window, it shows all glyphs in the font which reference any element of the active glyph. Double-click the cell in Elements table to navigate to the glyph in the Glyph or Font Window.

When you add composite glyph is added as a component (Element), it will be added as a grouped Element, so it is much easier to move/scale it.

Transformation of contours is more logical: FLVI will not apply transformation (done using actions, for example) to elements if it is not necessary, e.g if an element is not shared. In simple cases, transformations will be applied to contours.

There is a new preference Editing > Keep visual appearance of the contour when paste to another element. It affects situation when you Copy-Paste contours between different elements, especially if those elements have a transformation applied. When the preference is enabled, the point coordinates of the pasted contour will be adjusted to keep the same appearance. When it’s disabled, the coordinates will be kept the same so the pasted element will follow the transformation of the target element.

Elements placed into a font using Element > Place Element are scaled using the “thick guidelines”, the same way as with Place Named Elements.

Element > Add Element is the new name of “Insert Element”. It will respect the glyph anchors when placing the element.

Glyph input»

In any of the dialog boxes for entering glyphs into text, you can press AltEnter or CmdEnter to insert the glyph next to the current one rather than replace it.

Font Window»

The rendering of a glyph Note in the Font Window is updated: it can be hidden using preferences, its color matches color of the note dialog box, and the Note’s first line is rendered directly in glyph cell in larger zoom levels (this can be disabled in preferences)

New Font > Generate Unicode command, works with glyphs selected in the Font Window just like Generate Names.

Font technology»

The built-in standard.nam file includes more development glyph names.

Opening large VFC fonts is faster, many operations on large fonts are faster.

SVG files are now slightly minified when an SVG image is imported or an OpenType+SVG font is opened.


FontLab VI Preview 6178»

Template font»

We changed the behavior of template glyphs that appear in the background when you create new glyphs. In previous builds, FontLab generated a blue bitmap into the Background layer which stayed there even if you were drawing your own contours, and had to be removed manually. In this build, we have a new system of Template fonts.

You can assign any installed font as a Template in Preferences / Font Window / Template. The Template can be shown or hidden via View / Ghosts.

When you create a new glyph which is not built as a composite, the new glyph takes will take advance width from the Template font. The Template renders in Text mode if glyph has no body, and renders all Unicode characters plus some variant glyphs based on glyph name suffixes such as .smcp.

Elements»

Edit / Paste Element will paste a reference to the Element, so you can copy any element, then paste it to other glyphs or other places in the same glyph, and the elements will be linked (cloned).

Glyph drawing»

  • You can activate the previous/next Point in the current contour via PgUp/PgDn (fn+Up/fn+Down).
  • New: Contour / Nodes at Extremes. This will be improved in future.
  • Dynamic rounding of coordinates (Contour / Round Coordinates) has been improved and works in more places.
  • Improved: Contour / Remove Overlap. However, it still works on all contours in the Element, not selection. We plan to improve this.
  • Improved: When you change point coordinates by entering them in-place, Contour / Power Nudge will have effect if enabled.
  • Improved: FontAudit now respects rounded coordinates and will detect non-horizontal/non-vertical errors for Handles (BCVs).

Guides»

  • New Contour / Snap to Guides operation.
  • Improved automatic naming of font guides: FontLab will assign names topXXX for guides that you create at the top of the glyph and botXX for font guides at the bottom of the glyph.

Anchors»

  • You can now repeatedly invoke Glyph / Add Anchor to add anchors named top, bottom, right, left in default locations.
  • If you have a font guide with a name that starts with top, the top anchor will be placed vertically on that guide. Same for the bottom anchor if the font guide has a name starting with bot.
  • For glyphs that represent marks, the names of the added anchors are prefixed with _ and their location is reversed.
  • With the Guide tool, you can Ctrl-click to add anchors and have them named automatically. FontLab will automatically pick the name top, bottom, right, left or center depending on where in the glyph area you Ctrl-clicked.

Hinting»

  • You can add a Link, which is a PostScript-style Hint that behaves like a Link in FLS5: select two points and press Ctrl+X to add a horizontal Hint or Ctrl+Y for a vertical Hint.
  • You can convert all Hints to Links via Tools / Hints to Links

Font Window / Glyph set»

  • Improved: In Font Window, if you Copy and Paste a glyph, all smart contour elements (fill etc will be copied).
  • Improved: Glyph / Generate Glyphs, Glyph / Add Glyphs and creating a glyph by double-clicking on an empty glyph cell in Font Window. FontLab will now correctly build composite glyphs including anchors.
  • Element / Image operations will work on all glyphs selected in the Font Window.

Importing artwork / ScanFont»

When you import or paste bitmap or vector artwork (images, SVGs) into the Sketchboard and run Element / Optically Separate, you can use thick guidelines to determine how the measurements of your artwork relates to the font canvas:

  1. Drag a horizontal guide from the Ruler to the location of the Sketchboard where you want the baseline. If your artwork is multi-line, drag the guide to the first baseline.

  2. On the right edge of the guide, change the name of the guide. The name needs to start with a specific string depending on which vertical dimension it will represent: the name should start with x if the guideline will represent the x-Height, with a for Ascender, with d for Descender. Use the format uNNN if the guide will represent an arbitrary vertical dimension where NNN is the number expressed in font units. Start the name with any other letter if the guide will represent the Caps Height.

  3. Shift-drag the guide upwards or downwards to define its thickness. The thickness that you define here will correspond to the font’s vertical dimension defined by the guide name. When you place your artwork into a font, FontLab will scale your artwork so that the thickness of the guide will correspond to the required vertical dimension.

  4. Alt-drag the guide (the edge which represents the baseline) to duplicate it, and place the duplicates on other lines of your artwork if it is multi-line.

  5. If your artwork is an SVG that represents multiple glyphs, switch to the Element tool, click on the artwork and choose Element / Image / Interpret SVG. Note that gradients and other compound contour effects will be lost. If you don’t want that, import or paste the artwork for each glyph one-by-one!

  6. Click on the artwork with the Element tool, choose Element / Optically Separate or, if it’s bitmap, Element / Image / Separate and Trace. FontLab will split the artwork into single elements, or, for multi-color vector artwork, element groups, each representing one glyph.

  7. Choose Edit / Select All and choose Element / Place Named Elements. This will actually place all selected elements, whether they have a name or not, into the font that is active in the Fonts panel.

Other improvements»

  • Improved import of some SVG drawings that caused a crash.
  • New context menus on Sketchboard (separate for Element tool and for all other tools)
  • Selected elements are highlighted.
  • Other stability fixes

FontLab VI Preview 6162»

  • Improved: Alignment works on entire contours as well as individual points.
  • Improved Guides tool.
  • Improved stability when working with Pairs and Phrases panel.
  • Fixed: New Metrics Tab command doesn’t work after restart.
  • Fixed: The “Delete Layer” confirmation dialog hides behind panels.
  • Fixed: View panel: clicking on the Mask link sometimes moves the panel down.
  • Fixed: Selecting multiple Smart Corners behaves strangely.
  • Fixed: Wrong text wrapping in the Preview panel with OT features applied.
  • Other stability fixes.

FontLab VI Preview 6157»

  • Improved export of OpenType+SVG color fonts with better compatibility with existing implementations.
  • Working context bar for Kerning tool.
  • Other stability fixes.

FontLab VI Preview 6148»

Variations: masters and layers»

Numerous improvements have been done to how FontLab VI handles Variations (Multiple masters).

  • In the Glyph/Metrics window, the layers switcher in the top-left of the context bar allows for direct access to masters and renders their preview directly in the bar when there no more than 4 masters in the font. Alt-click for the full list of layers.
  • You can easily switch between masters using Alt, and Alt..
  • The metrics are stored now per master.
  • The Font Info dialog has ability to edit per-master data (unfinished).
  • Opening .vfb or .glyphs MM fonts and OpenType / GX Variation fonts has been improved.

Spacing and kerning»

This build introduces a brand-new spacing and kerning workflow that we have been working for a long time.

This workflow is not yet entirely finished, but we are very eager to hear your opinion!

Separate Metrics and Kerning tools»

We have separate Metrics and Kerning tools, accessible from the Toolbar. They are, in principle, similar to the Metrics and Kerning modes in FontLab Studio 5, yet far more flexible.

Pairs & Phrases panel»

We have a brand-new Pairs & Phrases panel accessible through Window / Panels. This panel can hold your “to-do” lists of words (or short phrases) and kerning pairs.

Note: the Metrics panel displays metrics for all glyphs in your font. The Kerning panel displays all kerning pairs defined in your font. The Pairs & Phrases panel is more of a “to-do” list and an intelligent text samples browser which you can walk through when defining Metrics and Kerning.

Text Phrases with the Metrics tool

When the Metrics tool is active, the Pairs & Phrases panel displays a list of Text Phrases which you can easily walk through using the Up and Down arrow keys. If your current Text is multi-line, you can walk in it using Up and Down arrow keys, and the Text will switch to the previous/next Text Phrase once you walk past the first or the last line of your current Text (we may change this behavior in future). In the panel, you can select multiple Text Phrases to be displayed, using Shift.

Use the Filter field to enter one character (not glyphname) that will subset the phrases list to phrases containing that character (you cannot use glyphnames at this point). If you choose a phrase when the panel is filtered, the filtered character will become active in the window.

The + button at the bottom right of the panel can open a Phrases file, which is a list of words or phrases, one per line, using glyphtext (UTF-8 text with /glyphname or \uCODE inserts).

Pair Phrases with the Kerning tool

When the Kerning tool is active, the Pairs & Phrases panel displays a list of kerning Pair Phrases, i.e. text samples that include pairs of characters or glyphnames suitable for kerning, optionally surrounded by context, i.e. related glyphs or a word.

The Pair Phrases can include kerning pairs that you have already kerned as well as those you wish to kern. With the Up and Down arrow keys, you can go to the previous/next Pair Phrase in the list. In the panel, you can select multiple Pair Phrases to be displayed, using Shift.

If the Pair Phrase in the panel corresponds to a kerning pair already defined in your font, the panel will show its value. The panel has a group kerning toggle. When on, FontLab VI compares your existing font kerning, your kerning groups and your Pairs Phrases, and shows group-based pairs when appropriate. When the toggle is off, the Pair Phrases are shown as simple pairs, but you will still be editing group-based pairs if the corresponding glyphs are in kerning groups.

Use the Filter field to enter two space-separated glyphnames such as A V to find all Pair Phrases that refer to those glyphs. You can use the * wildcard to match the glyphs only on one side, e.g. A * or * V.

The + button at the bottom right of the panel can open a Pairs file in a number of formats. The easiest format is a newline-separated list of pairs and contexts that uses glyphtext, where the kerning pair is indicated with with the pipe (|) character:

aggr|oupment
sav|vy
c/aacute rbohy|drate
bir|ds
emplo|tment

Other formats, such as .afm or a simple list of single-character pairs without context are also supported:

A' AC AG AO AQ AT AU AV AW AY
BA BE BL BP BR BU BV BW BY
CA CO CR

Spacing with the Metrics tool»

When you select some glyphs in the Font Window and choose the Metrics tool or choose Window / New Metrics Tab, a new Metrics Window (or tab) will open in Metrics mode, similar to how it worked in FontLab Studio 5.

Use the top context bar or the left content sidebar to control the point size at which the font is displayed at the 100% zoom level (Cmd+1).

You can enable/disable the shown details using the context bar:

  • The Metrics button on the top-left of the context bar shows/hides the numeric glyph metrics display.
  • The Kerning button on the top-left of the context bar displays the current Text kerned or unkerned (so you can adjust the metrics while seeing your kerning).
  • The 3-line menu button on the top-right of the context bar provides more control over the displayed details. If you enable Center on Glyph there, the focus of the window will follow the active glyph.

The vertical Metrics panel (unfinished) provides an overview over the Width, LSB and RSB of all glyphs in the font, and can be filtered to only show a subset of the glyph set.

The horizontal Metrics table can now be docked at the top or bottom of the Metrics Window, and can display glyphs for just the current line of Text or for all Text in the Window.

To edit the glyph metrics, use the follwing keyboard shortcuts. Note: The adjustments of “1” and “10” are by default 1 and 10 font units but are customizable in Preferences / Distances.

Navigation in Metrics tool

  • Up///Down: walk to previous/next line in Text, or previous/next Text Phrase defined in Pairs & Phrases panel
  • [/] or Left/Right: walk to previous/next glyph in Text
  • ,/. or CmdLeft/CmdRight: replace active glyph with previous/next glyph in Font
  • /: enter glyph by name
  • ;: auto-calculate metrics for active glyph

Metrics editing (spacing)

  • CtrlLeft/CtrlRight: decrease/increase LSB by “1” (with Shift by “10”)
  • AltLeft/AltRight: increase/decrease RSB by “1” (with Shift by “10”)
  • CtrlAltLeft/CtrlAltRight: move glyph within the current width by “1” (with Shift by “10”)
  • -/+ or CtrlAltDown/CtrlAltUp: decrease/increase both LSB and RSB (with Shift by “10”)
  • The Cmd modifier will decrease/increase the value by 100 units, and ShiftCmd will decrease/increase it by a true 1 unit, regardless of the setting in Preferences / Distances.

Kerning with the Kerning tool»

When you select some glyphs in the Font Window and choose the Kerning tool, a new Metrics Window (or tab) will open in Kerning mode, similar to how it worked in FontLab Studio 5.

Control the point size, enable/disable shown details, as in the Metrics tool. The Metrics button shows/hides the numeric glyph metrics display, while the Kerning button is always active, since you want to view the kerning as you’re editing it.

Group kerning (class-based kerning)

The vertical Kerning panel provides an overview over the Font’s existing kerning pairs, and the Groups panel assigns glyphs to kerning groups (classes). You can also assign a glyph to a different kerning group using the Glyph panel.

In FontLab VI, group-based pairs are assigned directly to groups like in UFO or OpenType, not to key glyphs. The priority in which kerning pairs are applied is:

  1. glyph-to-glyph (two-side exception)
  2. glyph-to-group (1st-side exception)
  3. group-to-glyph (2nd-side exception)
  4. group-to-group

When editing kerning in the Metrics window with the Kerning tool active, FontLab VI will display representative glyphs from groups to render the pair, and will display a semi-transparent Kerning Groups cloud (that you can turn off in the View menu).

Note: you will see two glyphs next to each other when kerning, but you’ll be actually editing either glyph-based or group-based pairs, depending on whether the visible glyphs in the active pair are in kerning groups.

To edit the kerning, use the follwing keyboard shortcuts. Note: the adjustments of “1” and “10” are customizable in Preferences / Distances.

Navigation in the Kerning tool

  • Up/Down: walk to previous/next line in Text, or previous/next Pair Phrase defined in Pairs & Phrases panel
  • [/]: walk to previous/next glyph in Text. Note: Left/Right are used for editing of the kerning value!
  • ,/. or CmdLeft/CmdRight: replace active pair’s 2nd glyph with previous/next glyph in Font
  • /: enter glyph by name
  • CtrlUp/CtrlDown: if the 1st glyph in the active pair belongs to a kerning group, replace it with previous/next glyph from the same group (the kerning you edit will still apply to the same group in the 1st position)
  • AltUp/AltDown: if the 2nd glyph belongs to a group, replace it with previous/next glyph from the same group

Kerning editing

  • ;: auto-calculate kerning for the active pair
  • -/+ or Left/Right: decrease/increase the kerning value for the active pair by “1” (with Shift by “10”)
  • CtrlLeft/CtrlRight: if the 1st glyph in the active pair is in a kerning group, define an glyph-to-group exception pair and decrease/increase that exception by “1” (with Shift by “10”). Note: Once an exception has been defined, you can use the Left/Right keys without modifiers.
  • AltLeft/AltRight: if the 2nd glyph in the active pair is in a kerning group, define an group-to-glyph exception pair and decrease/increase that exception by “1” (with Shift by “10”)
  • CtrlAltLeft/CtrlAltRight: define a glyph-to-glyph exception and decrease/increase
  • Backspace: Delete the current pair. If it’s an exception, the higher-level pair will kick in, from glyph-to-glyph, to glyph-to-group, to group-to-glyph, to group-to-group, so you may to hit Backspace several times to completely remove kerning.
  • The Cmd modifier will decrease/increase the value by 100 units, and ShiftCmd will decrease/increase it by a true 1 unit, regardless of the setting in Preferences / Distances.

Other»

  • Numerous bugfixes and improvements since build 6129

FontLab VI Preview 6129»

Preferences»

  • The Preferences dialog box now has a menu which allows to open, save, and reset preferences.
  • Search works in the Preferences dialog box.

Variations»

  1. glyphs format import is improved to better handle MM fonts.
  2. same for VFB
  3. it is now possible to copy outline + guidelines. if outline is linked to guideline (aka powerguides), it also is copied.
  4. GW sidebar now can automatically close after certain amount of inactivity (customized in preferences > general)
  5. place element is improved
  6. few bugs related to bucket fill fixed
  7. many more bug fixes (incl. 2 crash-bugs).

FontLab VI Preview 6117»

User interface»

  • When a panel is undocked, it now has a rectangular toggle in its title bar. This toggle controls whether the panel is dockable or not dockable. If the panel is not dockable, it will not automatically docked to other panels or the edges of the window when moved around.

  • When panels are docked together in a group, each panel has an icon on the label on the bottom.

Variations (Multiple Master, Interpolation)»

  • Additional fixes for handling Variations, including better support for opening VFB MM fonts and OpenType Variations / GX Variations .ttf fonts. This functionality is still under development.

Working with Metrics»

  • New: customizable text point size in the Metrics tool, that can be changed in the top context bar or in the left sidebar of the Metrics Window. The point size refers to the Zoom level Actual Text Size (Cmd+1).

  • Improved Font / Link Glyph Metrics operation that allows you to create metrics formulas (more powerful Metrics Classes) in a flexible way. It can link LSB and RSB of dependent glyphs to some key glyphs fully automatically, including a customizable precision (so for example, the D glyph can have the LSB set to H and the RSB set to O+2). You can also specify the key glyphs yourself, then FontLab VI will pick the closest glyph from the key glyphs list when linking sidebearings.

Working with Overlaps»

  • New Contour / Make Overlap operation that creates an overlap for a group of selected nodes.

  • New Glyph / Create Overlaps operation that tries to automatically create overlaps for a glyph or selected glyphs (it will create overlaps on vertical and horizontal stem connections).

  • Note: Contour / Remove Overlaps currently only works on the entire element, not selected nodes.

Other»

  • New Glyph / Create Bubbles operation that automatically creates bubbles for bubble-based kerning (experimental).

  • Numerous bugfixes and improvements since build 6082


FontLab VI Preview 6082»

User interface»

  • Brand-new Window / Panels List toolbar that allows quick access to all the app’s panels.

Variations (Variable Fonts, Multiple Master, Interpolation)»

This build introduces preliminary support for Variations (i.e. interpolation, a successor to FontLab Studio’s Multiple Master model). Many aspects are not finalized yet, including some functionality, the user interface, and interpolation of certain parameters such as kerning.

The Variations model in FontLab VI is compatible with OpenType Variable Fonts, MutatorMath, Superpolator and GX Variations. It allows for an arbitrary number of axes and arbitrary number of masters (including intermediate masters in the middle of an axis). It is much more flexible that the FLS5 Multiple Master approach, but still backwards-compatible with MM.

FLVI Variations work across fonts and across layers within each font. If Preferences / Open Fonts / Separate masters imported… is on, multi-axis fonts will be opened as separate fonts, if it’s off, they’ll be opened as layers within one font.

  • This build includes a new Window / Panels / Variations panel and a new File / Font Info / Variations section that allows you to perform interpolation.
  • File / Font Info / Variations, you can specify the font’s axes. By default, each font has predefined weight and width axes, but you can add additional axes. The default scale of each axis is 0–1000. You can also specify non-linear interpolation along each axis, for X and Y separately.
  • In the Window / Panels / Layers panel, you can add, remove or edit layers which act as masters. For example, the layer named mm.wt=900 specifies that the layer acts as a master at the position 900 of the wt (weight) axis. You can also specify additional masters for just specific glyphs! (Note: this is not finalized yet.)
  • In the Window / Panels / Variations panel, you can select an instance that will be visible in the Preview panel, using a Map or List view. In the List view, you can also tune anisotropic interpolation for X and Y (specifying the multiplier between 0x and 2x). There, you can also create a new layer or a new font for a given instance.

Glyph management»

  • Glyph / Generate Glyphs / Custom now supports the RoboFont GlyphConstruction notation
  • Glyph / Add Glyphs allows you to easily add placeholder glyphs for various Unicode scripts and categories

Composite glyphs»

  • If Preferences / Operations / Detect clones / Lock references to the core element is on, FLVI will not allow editing components inside composite glyphs directly. Instead, the element that represents a component inside a composite glyph will be locked. If you double-click on such a locked element, its “parent glyph” will open for editing. This simulates how components are edited in FontLab Studio 5 and other font editors.

Importing artwork / ScanFont»

  • If you import an SVG graphic, FLVI will now store the original SVG, retain all the advanced effects such as gradients, and only allow you to move or scale it, but not edit its contents. If you choose Element / Image / Interpret SVG, only then FLVI will convert the imported SVG into a group of FontLab elements. Some advanced effects such as gradients may get lost, but you will be able to precisely edit the contours of the imported artwork.
  • ScanFont functionality: If you paste or import a bitmap or outline-based alphabet or word into the Sketchboard, you can then choose Element / Optically Separate the artwork into separate elements. FLVI will even perform OCR (controlled via Preferences / Operations) and try to assign meaningful names to the elements that represent letters or digits. Or you can assign names to the elements using the Elements panel. Then choose Element / Place Named Elements to quickly add all the named elements into the currently open font, or choose Element / Place Element… to add the currently selected element individually.

Other»

  • Numerous bugfixes and improvements since build 6046

FontLab VI Preview 6046»

Glyph management»

  • The top-right corner of the Glyph window has a new Note popup
  • Notes and Stickers now use Markdown so you can add formatting to your notes and stickers
  • Generally improved Copy-Paste
  • New: Edit / Copy Layer, works in both Font and Glyph window. Allows duplicating a layer, copying a layer from one font to another, etc.
  • You can now copy an element from the Glyph window and then paste it to many glyphs in the Font window.

Glyph editing»

  • Improved Eraser tool in smart mode (with Shift, removes only non-essential nodes)
  • Improved View / Suggest Stems
  • Improved Tools / Transform / Free transform (Cmd+T), now snaps to guidelines etc.
  • New View / Ghosts shows or hides subtle rendering of font metrics, zones and PS hints (full rendering can still be enabled using the individual View / Show entries or the Window / View panel)
  • Improved Fill tool, will no longer unnecessarily produce compound elements
  • Fixed problems with Contour / Join
  • Fixed Knife tool, the Ctrl and Alt modifiers work correctly now
  • New context bar for guidelines, PS hints and zones that allows changing their color or type

TrueType hinting (TTH) tools»

  • When the TTH tool is active, the popups for editing stem, zone and other font-wide TTH info in the context bar now work correctly, and can be closed via CmdEnter.
  • TTH stems, zones and points are all now referenced by their names in the TTH programs, so they are much more portable, especially when copy-pasting the TTH program using the right section of the TTH panel. If you rename a stem or zone, a dialog box will allow you to update the name in all TTH programs.

User interface»

  • Fixed behavior of the context bar (the property bar on top of the Glyph window)
  • Improved automatic window resizing when you undock a Font/Glyph tab

Other»

  • File / Font Info: editing of stems now works, some bug fixes
  • New cell captions in the Font Window: Character (shows “3” for the three glyph, “3.sups” for three.sups and the glyph name for unrecognized glyphs) and Cell index (shows the running number of the cell in the current view)
  • Improved reading/saving of stem info and the Font Info Curve tension and Corner tension parameters in VFC format
  • Improved reading of the .glyphs format
  • Numerous other bugfixes and improvements

Still to do»

There are three major areas in which this build does not yet have the planned functionality. We’re still hard at work on them:

  1. Multiple master designs: interpolation/superpolation
  2. Composite glyphs: more “native” handling of traditional components, as found in TTF, VFB and UFO, including their TT hinting
  3. User interface: improved handling of panels and multiple windows

In other areas, we’re working of course on improvements, and are keen to receive your feedback on our FontLab Forum!


FontLab VI Preview 6025»

Initial public preview

TrueType hinting (TTH) tools»

  • Completely new TrueType hinting (TTH) tool, backwards-compatible with the FontLab Studio 5 manual TrueType hinting but with numerous improvements
  • Brand-new, superbly legible UI for TTH
  • Not fully functional yet, but good for community feedback regarding UI and functionality
  • Integrated true Microsoft ClearType rasterization preview, even in the Mac OS X version of FontLab VI
  • Ability to edit existing commands (move them to different points), so no need to delete old command and and add a new one if you make a mistake
  • Ability to apply TTH commands to PostScript outlines (no need to keep separate PS and TT versions of source files)
  • TTH commands survive operations such as removing and restoring overlaps
  • TTH commands are applied to points using point names, so they survive adding or removing points
  • Ability to show/hide off-curve points
  • Hinting suggestions: automatic highlighting of most important points that need to be hinted
  • Zones and stems are subject to glyph tags (experimental), so they may appear only in certain glyphs such as lowercase-only or uppercase-only (much better automatic selection of stems for link commands)
  • New TTH program panel with editable plain-text FL TTH sources (great for copy-pasting)
  • Intelligent Paste Special which will smartly transfer TTH commands between different fonts or different glyphs within a font
  • New Hinting commands in Tools / Actions
  • New TrueType Autohinting section in Preferences
  • Currently, the generated TT instructions bytecode is fully compatible with FLS5. We’re working on introducing ClearType- and DirectWrite-savvy branching and other improvements.

User interface»

  • Brand-new Edit / Paste Special command (currently works for metrics and TrueType hinting)
  • Window / “New Glyph Tab” and “New Metrics Tab” open tabs in different preconfigured arrangements, similar to FLS5 “New Glyph Window” and “New Metrics Window”
  • The toolbar commands work in the Font Window: select multiple glyphs, and click on one of the Toolbar icons to open a new window with that tool applied (e.g. Contour, Metrics, Text or TrueType hinting)
  • New Preferences section: Font window / Caption content is editable (if off, it’s not possible to accidentally rename a glyph in the Font Window)

Metrics»

  • New Window / Metrics panel, similar to the Metrics list in FLS5 Metrics Window
  • New Preferences section: Editing / Automatically update linked metrics (experimental, may be slow; with this option enabled, all metrics formulas are instantly recalculated upon any change)
  • Countless minor improvements in metrics editing (we are working on a comprehensive tutorial)

Other»

  • More than a hundred bugfixes and improvements

FontLab VI Preview 5962»

General UI»

  • (new) context menus (right-click or Ctrl+click) are now implemented in Glyph window and Font window
  • (new) Preferences / Editing / High contrast mode increases the visible contrast of UI elements within the Glyph window area

Shapes»

  • (new) Brand-new _ Gallery_ panel lists all named shapes in the font and allows you to easily place them into the currently active Layer via the _ Place_ button inside the panel, or via drag-and-drop. This works in the Glyph and Font window. If you create or choose a shape in the Glyph window, and then give it a name using the Shapes panel, then the shape will be added to the Gallery panel for easy reuse in other glyphs.

Glyph access»

(improved) Glyph access methods in Font and Glyph window work better with the
keyboard and have new keyboard shortcuts:

  • use the _ /_ key to go to a glyph via its glyph name
  • use the _ #_ key to go to a glyph via its Unicode
  • use _ Cmd+F_ ( Edit / Find Glyphs… ) in Glyph Window to insert one or more specific glyphs via various criteria, and in Font Window to go to or select specific glyphs
  • use _ Shift+Cmd+F_ to jump to the Search box in Font Window to search the font for specific results and filter the window to the results, or in Glyph Window to insert the results
  • use _ Cmd+L_ ( Edit / List Related Glyphs…) to go to glyphs that are related to the current selection

(new) _ All Glyphs_ toggle button in Font Window’s History sidebar
(left sidebar) lets you control how the Font Window filtering works when
you select an Encoding, use the Search box, Search History or Bookmarks. If
on (default), filtered glyph cells are displayed in the “yellow
area”
at the top while the rest of the glyph cells follow, just like in
FontLab Studio 5. If off , only the filtered glyph cells are displayed
while the rest is hidden.

Glyph design»

  • (new) View / Apply Italic Angle ( \ key) changes the behavior of sidebearings, vertical grid and the vertical point movement in italic fonts. When you have a non-zero italic angle (in Windows / Font Infopanel, / Angle ), tap on the \ key to toggle between three states:

  • Tap \ once to display slanted sidebearings. The sidebearings angle corresponds to the italic angle, and the italic correction corresponds to the Caret Offset setting in Font Info. This also affects some sidebearing values displayed in the UI (it needs improvement)

  • Tap \ again to also slant grid. In this state, when you use Shift key to move points or other objects “vertically” using mouse or keyboard, the movement will happen along the italic angle axis, not vertically.
  • Tap \ again to “straighten” both the sidebearings and the grid.

  • (improved) In Glyph window, arrow keys move points and other objects by 1 font unit. with Ctrl , they move by 0.1 unit, with Shift by 10 units, with Cmd by 100 units. The basic and Shift distances can be modified in Preferences / Distances

  • changed: with Guides tool, use Ctrl+click to add a glyph Anchor, use Alt+click to add a shape Pin (#207, thanks Lucas)

  • (improved) positioning within glyphs created via Generate Glyphs now respects matching named anchors such as top and _top (#68)

Import, Export, Technology»

  • (new) confirmation dialog shows the location of exported fonts after File / Export Fonts (#255)
  • (changed) Preferences / Curve Conversion / Create short curves now only affects explicit curve conversion initiated by the user. New Preferences / Open Fonts / Break long TrueType curves to short segments setting controls the same behavior when fonts are opened.
  • (updated) built-in ttfautohint and HarfBuzz are now updated to the April 2016 versions

Other improvements»

  • (fixed) Destination dropdown menu now works in Fonts panel (#314)
  • (fixed) Remove shape button in the Shapes panel now works (#319)
  • (fixed) Artwork placed into Sketchboard is now visible (#262)
  • (fixed) clicking when Ctrl+Space is pressed now zooms in (#263, thanks Lucas)
  • (fixed) Copied contours are pasted vertically mirrored in the Sketchboard. The size is of the pasted image is 10 times bigger. (#331)
  • (fixed) Redraw issues on curvature comb (#183)
  • (fixed) crash when copy-pasting glyphs from FontLab Studio 5 to FontLab VI
  • (fixed) Guides tool now snaps to outlines when measuring (#207, thanks Lucas)
  • (fixed) Undo now works for anchor operations (#315)
  • (fixed) Detect Clones multiplied shapes (#340)
  • (fixed) crash on Crop Image (#338)
  • (fixed) Flag color is now applied on Glyph window close (#246)
  • (fixed) Magnet tool leaves painting artefacts (#269, thanks Lucas)
  • (fixed) import Adobe Illustrator EPS via Import / Artwork (#171)
  • (improved) adding new layers in Layers panel (#204)
  • (fixed) moving guidelines with the Contour tool (#247)
  • (fixed) hang on color palette in the Shapes panel (#286)
  • (fixed) Open Sketchboard now always activates Sketchboard (#304)
  • (fixed) glyph renaming in Glyph panel (#303)
  • (fixed) crash on second Export Fonts As operation (#295)
  • (fixed) preview was missing in Actions dialog after Undo (#272)
  • (fixed) Layers panel now allows renaming a layer (#280)
  • (fixed) bbox problems with bitmaps created via rasterized Layers (#278)
  • (fixed) kerning is now imported from Mac Type 1 suitcases (#305)
  • (fixed) crash on Undo for Scissors tool (#307)
  • (fixed) various Font Window and Glyph Window refresh/redraw problems
  • (fixed) Undo now works after Combine to Shape (#339)—-

FontLab VI Preview 5934»

  • The new binary format VFC for saving of FontLab VI native source fonts is nearly finalized. In addition, we’re working on an XML-based format, but it’s not finalized yet.
  • In the Preferences / Editing section, you can enable the High-contrast mode which will make some UI elements within the FontLab VI user interface more legible.
  • The Window / Groups panel is now functional.
  • Initial implementation of a Python API is done. Documentation will be published soon.—-

FontLab VI Preview 5844»

  • In the Preferences / General section, you can disable the option Open new windows as tabs. With this option disabled, after you restart FontLab VI, all new windows (Font Window, Glyphs Window, Metrics Window) will open as separate windows, creating the experience more familiar to FontLab Studio 5 users.
  • In the Preferences / General section, you can enable the new experimental OpenGL renderer. With this enabled, and the Preferences / Glyph Window / Smooth contours rendering enabled, all contents of the Glyphs Window will be rendered using a hardware-accelerated rendering engine. This should, overall, speed up the redrawing of the Glyph Window, especially for complex outlines with many nodes.—-

FontLab VI Preview 5721»

User Interface»

We have done some further tuning to the panels and windows system. Because the
changes are large, we recommend that you launch this new build with the Alt
key press (hold Alt, 2x-click on the FontLab VI.app icon or click on it in
the dock, and keep the Alt key pressed until the app finally starts). This
will restore the UI to the factory settings. Some panels still exhibit some
weird behavior if moving, undocking or docking, so if you run into problems,
you can always restart FontLab VI with the Alt key pressed to restore the
default UI.

Toolbar»

The Toolbar is vertical by default, and is docked to the left edge of the main
window.

  • You can show and hide the Toolbar with Window / Toolbar.
  • You can undock the Toolbar. If the Toolbar is vertical and docked, click on the tiny green button in the top-left corner of the toolbar. If the Toolbar is horizontal and dock, 2x-click near the left edge of the Toolbar.
  • When the Toolbar is undocked , you can 2x-click anywhere on the gray area between the buttons of the toolbar to toggle it between vertical and horizontal layout
  • Also, when the Toolbar is undocked , you can move it (or dock it) — that’s a bit tricky right now, you need to click and drag on the darker gray area between the red and the green buttons (but NOT on the gray button that is between them). We’ll improve this, right now it takes a bit of practice.

Panels»

Many panels are improved. The entire panels system also has some improvements
but they’re not finalized yet. The automatic and manual resizing of the panels
does not yet work well (working on it).

  • You can: dock most panels to any of the edges of any window, undock them, position them freely of any screen, stick them to the edge of a screen, stack panels vertically or group them into panel tabs.
  • To resize a panel, drag its edge (a blue line appears). If it’s undocked, also drag its corner. To close a panel, click on the “X” icon in the top-left corner.
  • The gray rectangle with the panel’s name is the panel header. Drag it to move a panel. If you drag a panel to a dockable location, a blue line or rectangle appears.
  • If a blue line appears, you can dock the panel there: at the edge of the window or at the top or bottom of another panel or between two panels. If you dock a panel at the top or bottom of another panel, they stack vertically. When panels are stacked, dragging the topmost panel header will move the entire stack, and dragging any other panel header will undock that panel. At this point, you cannot dock a panel on the side of another panel, but we’re working on this.
  • If a blue rectangle appears, you can group panels into panel tabs. If panels are tabbed, a tab footer appears at the bottom of the panel (we plan to improve this UI aspect). If panels are tabbed, dragging the panel header will move the entire panel group, and dragging the tab footer will move/undock the specific panel.

The panel names in the Window menu are now sorted alphabetically so it’s
easier to find them.

We’ve split the Inspector panel into several panels ( Node, Guideline,
Shapes, Anchors & Pins
).

View panel»

We have a brand-new panel: the View panel. It’s modeled after the
advanced mode of the Editing Layers panel of FontLab Studio 5. You can
easily toggle the visibility, snapping behavior and lock status of various
user interface details of the Glyphs window in that panel.

Property bar»

The top of the Font window (where you work with the font’s glyphset) and
the top of Glyphs window (where you enter your text, edit glyphs and their
metrics) has a property bar.
The Font window property bar is static: it has

  • the switch for the Query drawer (which has a new icon now)
  • switches to toggle the Table and List views of the glyph set
  • dropdown menus to control the Caption of each glyph’s cell (and the contents of the List view), the Encoding (a “mask” for your glyph set like in FLS5) and the Sort (allowing you to dynamically sort the Table view).

At the end, you can set the glyph’s Flag (i.e. the color highlight which
in FLS5 was called Mark), and you can use the Search box to limit the
glyphs that you see in the Font window. The Font Map panel works the same,
except that you can always see it, and it allows you to overlay and compare
glyph sets from multiple fonts that you select in the Fonts panel.
But the Glyphs window property bar is now dynamic (context-
sensitive).
On the left side, the Glyphs window property bar contains some static
elements:

  • The switch for the Content drawer (new icon). In the Content drawer, you can pick one of the texts available in your Texts library (you can edit the contents of the Texts library in Preferences), convert the text to lower- or uppercase, edit the text manually (using the glyphtext notation i.e. real characters, /glyphnames and \uUnicodes), enter “zigzag glyphs” that are interweaved with your text, and control the OpenType Layout features that are applied to your text (using the compiled OpenType features and a fully functional “world-aware” OpenType Layout engine).
  • The Kerning toggle , which enables or disables the kerning in the Glyphs window. If enabled, you can see the kerning as defined inside FontLab VIusing classes/groups defined in the Groups panel and the kerning values that are visible in the Kerning panel and can be edited inside the Glyphs window.
  • The Mark Attachment toggle , which enables or disables the mark attachment in the Glyphs window. If enabled, you can preview mark attachment as defined inside FontLab VI using anchors. There are still some issues with the mark attachment which we’re working on.
  • The Glyphs window property menu which toggles the FOG-style Metrics Table and the visibility of the FLS-style Measurement line. It also switches the current Glyphs window between three formats : Line (where the entire text is rendered as a single line, only interrupted by manual line breaks), Block (where the entire text is rendered in a fixed-size column — currently it’s not possible to change the width of this column), and Table (which renders the text as a table of glyph cells — the glyphs still remain editable. This is useful for overlapping or narrow glyphs, emoji glyphs etc.)
  • The Text dropdown menu which is the same as the Text dropdown in the Content drawer but now includes an immediate preview of the full text (hover your mouse pointer over the text header).
  • The Font dropdown which allows you to switch the current window’s contents to a different font, keeping the same text. It now includes a better preview
  • The Glyph dropdown which allows you to switch the currently active glyph to a differ “related” glyph. The list of “related” glyphs is created by FontLab VI using some built-in automation.

On the right side, the Glyphs window property bar contains the same Flag
and Search box as the Font window. Note: the result of using this Search
box will replace the entire text of the current Glyphs window.
But what’s really new is the middle section of the Glyphs window
property bar. It was blank in the previous builds, but now it is dynamic.
Depending on your work context, i.e. on the currently used tool or on the
current selection, this section will show a different “context bar” that
displays just the information you mostly need in the given context.
We’re still working on the contents of the different context bars. Some are
more-less finalized, others are still in development. Some are “ editable
” i.e. you can view information there, and you can edit it, and your edits
will actually be applied to the font. Some context bars are “ read-only
for now, i.e. they will display information correctly, but if you edit
anything there, your changes will not be applied. And some are “ stub
i.e. they only show some default information not really based on your font.
But of course we will finalize these later.

  • By default , when nothing is selected and a glyph is active, the context bar displays its Unicode codepoint (with a dropdown that lets you see a system-provided image for that Unicode character along with some info), the number of Shapes, Contours and Nodes (similarly to the Glyph Properties panel in FLS5), the bounding box of the current layer (read-only), and two buttons. One opens the Layers dropdown (so you can easily switch to a different layer), the other opens the Tags dropdown (where you can assign tags to glyphs)
  • When one or more Points (Nodes or Handles) are selected, the context bar displays some node properties, their coordinates and (for multiple points) width and height of the selection box. They work, so they can be used to move nodes and scale the selection. Flip and Align buttons are also there (Note: flipping also automatically reverses the contour direction).
  • When a Guideline is active, the context bar displays the most important properties of a Guideline (editable).
  • When an Anchor or a Pin are active, the context bar displays the most important properties of a Pin or Anchor (read-only).
  • When the Ellipse or Rectangle tools are active, the context bar displays properties that allow you to easily create a new Ellipse or Rectangle. Note: for Ellipse, you can create a geometric Ellipse or a “curved” ellipse which uses the Tension parameter specified in the Window / Font Info panel.
  • When the Guides tool is active and you are dragging a guideline, the context bar mimics the FLS Meter bar. (Hold Alt when using the Guideline tool to make a temporary guideline for measuring, without actually creating the guideline permanently).
  • When the Brush tool is active, the context bar displays some relevant properties (stub).
  • When the Free Transform tool is active (you can activate it by double-clicking on the selected contours, or by pressing Cmd+T), the context bar displays text boxes where you can enter values to Move the selection (in X and Y, in both directions), Scale, Rotate, Slant and Flip. (Note: flipping also automatically reverses the contour direction).

Note: most of the properties shown in the context bar are also accessible in
the dedicated panels: Anchors & Pins, Brush, Glyph Info, Guideline, Node,
Transform.

Tools»

Pen tool & Rapid tool»

We have brought back the traditional Bézier Pen tool, which is now
accessible via the P key. Its implementation is a sort of “best of” the
Fontographer, Freehand, Illustrator and Affinity Designer Pen tools. We will
post more details regarding using the Pen tool soon. Please experiment with it
and post your first impressions!

We have changed the keyboard shortcut for the Rapid tool to 5.

Fill tool»

We have improved the Fill tool so that it won’t create a complex Shape
if the result can be represented using simple shapes (i.e. simple “reverse
path direction” operations won’t result in a complex shape).

Guides tool»

With the Guides tool, hold Alt when dragging the mouse pointer to just
perform measurement, similarly to the Meter tool in FLS5. Drag without Alt
to create a short guide.

Ellipse & Rectangle tools»

With the Ellipse tool, choose between “geometric” (traditional) Ellipse
or a “curved” Ellipse which takes the Tension parameter into account. You can
specify the Tension in the Font Info panel, as a percentage length of the
handles. The geometric Ellipse has a tension of 55%.
Both the Ellipse and the Rectangle tools now have a context bar from
which you can create these primitives using precise parameters. The Width and
Height dropdowns in the context bar give you quick access to the important
font dimensions (caps height, x-height, main stem) so you can create
rectangles or ellipses even faster.

Brush tool, Brush panel, Power Brush feature»

The Brush panel currently serves two purposes:

  • If you switch to the Brush tool (B key), you can use the Brush panel to set the parameters of the brush. With the Brush tool, the effects of your drawings are immediately converted to final outlines, and cannot be changed for contours that you have already drawn.
  • But we have a new feature called Power Brush. If draw a Bezier “skeleton” (using all the other tools: Pencil, Pen, Rapid, Ellipse, Rectangle), or use an existing contour, you can choose Shape / Create Power Brush. This will create a “live” brush stroke along all contours of the current Shape. You can use the Brush panel to change the brush parameters, and they will be applied to the current Shape that uses Power Brush. You can leave the Shape with the Power Brush applied, or at any time, you can convert it to normal contours via Shape / Combine to Shape.

Eraser tool»

Eraser tool (Q key) now works differently:

  • Clicking will remove any Nodes and Handles that you click on, and Shift+clicking will not remove certain “strategic” Nodes.
  • Ctrl+drag to resize the Eraser’s scope.
  • Ctrl+click on a node, and then click on another node on the same contour, and the Eraser will simplify the path between those two nodes.

Contour editing»

The Contour tool (the default tool, A key or 1st arrow on the Toolbar,
where you perform your normal editing of the contours) has also been improved:

Canvas (drawing area)»

  • Alt+ click near a segment to select the entire contour.
  • Shift+Alt+ click near a segment to add the entire contour to previous selection , or remove it from the selection.
  • Drag on the canvas to select multiple Nodes and/or Handles using a rectangular marquee selection. Alt+ drag to use a freeform marquee selection. With Shift, add to previous selection or remove from it.
  • Click on the canvas to deselect.

Segment»

  • Drag on an unselected segment to edit the segment.
  • Click on a segment to select the segment.
  • Alt+ click on a segment, or 2x-click on a segment to select the entire contour.
  • Shift+Alt+ click on a segment, or Shift+ 2x-click on a segment to add the entire contour to previous selection or remove from it.
  • Ctrl+ click on a Line segment to convert the segment to a Curve Segment.
  • Ctrl+ click on a Curve segment to Balance the segment (make both Handles of proportionally the same length).
  • Ctrl+Alt+ click on a segment to add a Node in that position.
  • Shift+Ctrl+Alt+ click on a segment to add an extremum Node to that segment (if it’s needed).
  • Alt+ drag on a selected segment to duplicate it.
  • With one or more segments selected, tap Backspace to merge their adjacent Nodes , i.e. remove them and try to keep the path unchanged.
  • With one or more segments selected, tapping Delete or fn+Backspace currently does not work correctly, but should break the contour at the Nodes adjacent to the segments and delete these segments.

Node»

  • Click on a Node to activate it. Shift+ click on a Node to add to the selection (currently does not remove from selection).
  • 2x-click on a Node to convert it between Sharp and Smooth. If the Node is between a Curve and a Line segment, a Sharp Node will be converted to Tangent.
  • Alt+ 2x-click on a Sharp Node to Normalize its sharpness. This will change all Handle positions on both adjacent segments so that you get a “natural” corner.
  • Shift+Alt+ 2x-click on a Sharp Node to convert the node into a Smart Corner. A Smart Corner can produce a rounded corner or an inktrap. It’s live and non-destructive, and you can change the radius of the Smart Corner, or, if you double-click on the Smart Corner, of all Smart Corners in the current shape. Right-click on a smart corner to Apply it, i.e. convert it to a regular contour with the rounding or inktrap applied.
  • Alt+ 2x-click on a Smooth Node to Harmonize its position i.e. equalize the Curvature on both sides of the Node.
  • Shift+Alt+ 2x-click on a Smooth Node to convert the Node to a Genius Node (one that will always remain harmonized).
  • Drag a Node to move it and its associated Handles. Also works with multiple selected Nodes.
  • Shift+ drag a Node to move it and its associated Handles along the horizontal or vertical axis. Also works with multiple selected Nodes.
  • Alt+ drag a Node to move it but keep its Handles in place (also works with multiple).
  • Ctrl+Alt+ drag a Node to move it and proportionally nudge all Handles of both adjacent segments. Also works with multiple.
  • Alt+Cmd+ drag a Smooth Node to move it and Normalize its smoothness. Also works with multiple Smooth Nodes. When smoothness is normalized, all Handles of both adjacent segments are recalculated so that “best” smoothness is achieved. This is equivalent to the Fontographer “Auto-Curvature”.
  • Shift+Alt+ drag a single Node to slide it along a segment. The Handles will be recalculated to keep the current form of the segment. If it’s a Smooth Node, you can slide only within the current segment. If it’s a Sharp Node or a Start/End Node of an open contour, you can continue sliding outside the current segment (i.e. smartly extend the segment). This does not work for multiple Nodes.
  • With one or more Nodes selected, tap Backspace to merge these Nodes, i.e. remove them and try to keep the path unchanged.
  • With one or more Nodes selected, tap Delete or fn+Backspace to Break contour at these Nodes, or to Break the contour and delete the adjacent segments. This is controlled in Preferences / Editing. We recommend the first setting (“break contour”) because with this setting, if you select some nodes and tap Delete once, the contour will be broken , and if you tap Delete again, then the segments will be deleted.

Handle (BCP)»

  • Click on a Handle to activate it. Shift+ click on a Handle to add to the selection.
  • 2x-click on a Handle of a Sharp Node to align its angle to the opposite Handle.
  • Shift+ 2x-click on a Handle of a Sharp or Smooth Node to align its angle to the closest horizontal or vertical axis.
  • Alt+ 2x-click on a Handle of a Smooth node to slide the Node to the closest extremum.
  • Drag a Handle to move it. Also works with multiple selected Handles.
  • Shift+ drag a single Handle to move it without changing its angle. This does not work for multiple Handles.
  • Shift+ drag multiple selected Handles to move them along the horizontal or vertical axis.
  • Alt+ drag a Handle to also move its opposite Handle. For a Sharp Node, it aligns the opposite Handle to the same angle. For a Smooth Node, it also puts the opposite Handle at the same distance to the Node. Also works with multiple Handles.
  • With one or more Handles selected, tap Backspace or Delete to convert a Curve Segment to a Line Segment.

Special features»

  • Hold Ctrl at any time when dragging Points (Handles or Nodes) to disable snapping and snapping suggestions.
  • Tap the C key or use the Contour / Power Nudge menu item to toggle the Power Nudge mode. With Power Nudge on, when you drag some points, FontLab will automatically guess which other points should be moved. This works well most of the time. If Power Nudge is off, you can enable it temporarily (while dragging) when you hold the C key.

#Layers

Layers panel and context bar selector»

The general functionality of the Layers panel and the Layer context bar
selector has been improved. You can click on the Layer thumbnail to hide and
show a layer (the currently active layer is always shown regardless of the
setting). The three toggle fields next to each layer’s name allow you to lock
a layer, make it a Service layer (which means that they layer is displayed but
will not be exported into the font), and a Wireframe layer (which disables the
fill in the glyph’s preview and renders a stroke instead. The color of that
stroke can be defined in the last selector).

Mask layer»

We have improved our support for the Mask layer to make it FLS-compatible.
Cmd+M copies the contents of the current layer to the Mask layer (and will
create the Mask layer if needed). Cmd+K removes the Mask layer. Ctrl+H

Metrics»

We have a set of keyboard shortcuts for Metrics editing:

  • Ctrl+Left/Right: decrease/increase LSB (note to self: this needs to be reversed!)
  • Alt+Left/Right: decrease/increase RSB
  • Ctrl+Alt+Left/Right: move glyph to left/right within width
  • Ctrl+Alt+Up/Down: increase/decrease both LSB & RSB

Shift increases the jump tenfold. The Shift+Ctrl+Left shortcut is normally
assiged to Spaces switching so you’ll need to disable it in OS X’s System
Preferences.
We’ll be refining the shortcuts soon.—-

Varia»

  • Edit / Exclusive Editing now works differently. If it’s on (by default), the active glyph is shown in detail (with contours, nodes and a pale semitransparent fill that can be changed in Preferences) while inactive glyphs are showed without details, filled. If it’s off, then all glyphs in the text are shown in detail.—-

FontLab VI Preview 5648»

Live gridfitting (dynamic rounding to integer coordinates)»

We have an initial implementation of live rounding to integer
coordinates
. You can toggle the live rounding on and off by tapping on the
H key (currently there is no visual indicator of the state).

Internally, FLVI is working in fractional precision like Fontographer. The
outlines are dynamically rounded to integers (gridfitted), but remain in
fractional precision. This means that if you scale something down and then up,
there is no loss of precision, like there was in FLS5. When you change the UPM
size, the points will be “re-rounded” to the new UPM, but internally stay the
same. In essence, you get the best of both worlds (FLS & FOG).

New quick Scale, Rotate, Slant and Flip tools»

You can flip the selection or the current glyphs by tapping on a key: tap W
for horizontal and E for vertical flip. Also, you can access the quick Scale
(S key), Rotate (R key) and Slant (D key). They work temporarily: press-
and-hold the key, click on where you want your center of transformation be and
drag to control the operation.

Quick point alignment»

If you select some points (nodes or handles), you can tap { to align them to
the leftmost or topmost point of the selection, tap } to align to rightmost
or bottom point, or tap | to center them vertically or horizontally. FLVI
will intelligently guess whether you want to align in the vertical or
horizontal direction based on the proportions of the selection rectangle.

Temporary and permanent tool switching via single-letter keystrokes»

We have an initial implementation of a very novel user interface paradigm
(we’d love to hear what you think about it!). All tools are now mapped to
single-letter keystrokes (like in Adobe Illustrator), but there are two ways
of activating the tools.

  1. You can tap (press and quickly release) on the shortcut key to
    switch to the tool permanently (or, in some cases, to invoke an action
    or toggle a mode). Once you’re done using the tool, tap on another key to
    switch to another tool.
  2. You can hold (press and hold) the shortcut key to activate the tool
    temporarily. It will remain active until you release the key, then the
    default tool is activated.

So you can work in the Outline tool and by holding various single-letter keys
you can quickly activate important tools like Knife, Eraser, Pen, Scale,
Rotate etc.

If you need to add a node or a few: hold J or 3, the Knife cursor appears,
click to add a node, release the key and you’re back in normal outline
editing! No need to click or tap to switch to Knife and to click or tap again
to switch back to the normal Outline tool. But you can tap on J to switch to
Knife more permanently if you need it longer, do your thing, and then tap on
A to switch to the Outline tool again.

There are some tiny glitches in the implementation but we think the concept is
superb , and you will be able to work even faster than before. We’re
looking forward to your comments on this new way of working.

Most tools support both tap and hold. In the list below, the exceptions
are marked:

  • ¹) Tap-only: you tap (press and quickly release) the key to switch
    to the tool or toggle it
  • ²) Hold-only: you press and hold the key to activate the tool,
    release to deactivate it

Note: when you hold a tool keystroke, you can further press the usual
modifier keys (
Shift, Ctrl and Alt).

Also note that we’re still working hard on assigning many keyboard shortcuts
throughout the app. We’re carefully reviewing existing apps ( FontLab Studio
5, but also Adobe Illustrator, Apple apps, Fontographer and some other tools)
for best and maximum compatibility.

A or 1: Outline tool for selecting, moving and editing points
V: Shape tool for moving shapes (components)
M: Metrics tool for metrics and kerning editing

Q or 2: Eraser tool for removing non-extrema nodes or, with Shift,
any nodes
J or 3: Knife tool for adding nodes and slicing the outlines
G or 4: Guide tool for measuring and adding short guides
K: Scissors tool for disconnecting or opening contours
U: Magnet tool for attaching points to guides
F: Fill (Bucket) tool

W: Horizontal Flip¹
E: Vertical Flip¹

S: Quick **Scale**²
D: Quick **Slant**²
R: Quick **Rotate**²

B: Brush tool
N: Pencil tool
I: Rectangle tool
O: Elipse tool
P: Pen tool
5: Rapid tool

Z: **Zoom in**¹
X: **Zoom out**¹
Y: **Zoom in**¹ (for German users)

C: Power Nudge mode. Enable it, select some nodes and move them. This
mode automatically identifies both nodes and handles which should be
nudged. Note: it can also be toggled in the View panel.
H: Live gridfit (live integer rounding). Note: it can also be toggled
in the View panel.

{: Align selection left or top¹
|: Center selection horizontally or vertically¹
}: Align selection right or bottom¹

`: Quick **Preview**²
Space: **Pan & Preview**²

T: Text tool¹ for text keyboard input
Esc: Exit Text tool¹
/: Glyph name input¹
#: Unicode input¹—-


FontLab VI Preview 5628»

Improved: Brush tool»

The curve quality that the Brush tool generates has been improved. Press
Alt to toggle between the round and the calligraphic (flat) brush. Hold
Ctrl to change the size and angle of the brush (additionally holding Shift
constrains the angles). Hold Cmd to use rectangular endings instead of
round endings. View video or new Brush
in action.

This feature is new and the UX is not final.

New: Rewind»

FontLab VI now has a “short-term memory” feature called Rewind (in Tools /
Rewind
). When you’re working on a glyph, at any point you can press
Ctrl+A to Record a state of that glyph (so it becomes the start of your
“recording”). Then, continue to perform some modifications, and the current
state will always be the end of the recording. At any time, you can press
Ctrl+V to Rewind gradually to the start, or Ctrl+B to gradually Fast-
Forward to the end of the recording.

Here’s the key point: the rewinding and fast-forwarding is done through
blending (interpolation), so it’s not the same as Undo/Redo. You can also
use the slider in the History panel to rewind and fast-forward. If you
arrive at an intermediate state between start and end, and perform some
modification, this state becomes the end. If you press Ctrl+A , you start a
new recording, so the current state becomes the start. View
video
of Rewind in action.

This is useful when experimenting with the desired shape. Instead of moving or
scaling things back and forth, you can modify them in a slightly exaggerated
manner and then find the optimal intermediate (“softened”) state easily.

This feature is new and the UX is not final.

New: Smart Stems»

Enable View / Smart Stems and check if File / Font Info / Stems has
correctly defined Horizontal and Vertical stems. (You can now assign tags to
stems so they are only used in glyphs with a certain tag). Now, whenever you
draw contours with the Pen tool or move nodes, FontLab VI will automatically
suggest node locations at distances from existing nodes which correspond
to the stem values. Think of it as “stem thickness dynamic guidelines”.

This way, you don’t need to keep measuring and measuring, and you’ll arrive at
consistent shapes much faster. View
video
to see how quickly I can draw the
correct counter of the “o”.

This feature is new and highly experimental. The UX is not final, and
sometimes it does not work well.

Improved: Curvature»

FontLab VI now automatically calculates the Curvature of an imported
font. You can change it in Window / Font Info. The Curvature specified
there will be used if you Alt+double-click on a Tunni line of a segment,
or if you draw a new Curve segment using the new Pen tool. This is a quick way
to achieve consistency.—-


FontLab VI Preview 5618»

In build 5618, we’ve made some further improvements to the user interface, and
to the existing tools. Also, we’re introducing a brand-new approach to the
Pen tool.

User interface»

After months of experimenting with different shades of user interface
elements, we’ve settled for the “light” user interface. You’ll still see
some traces of the “dark” elements in some popups but they’ll be eliminated in
future builds.

We’re in the process of revamping the Toolbar. We’re rewriting our
windows management system. At this point, we’ve made the toolbar fixed on top
of the screen (we’ll also look into possibilities to dock it on the side).
We’ve eliminated the distinction between Tools and window Modes, so now the
first four tools represent the window modes. The main section of the toolbar
is now centered, which makes is compliant with the Apple human interface
guidelines and is more ergonomic because it takes your mouse pointer the same
amount of “travel” regardless of where it was.

Various improvements»

We’ve renamed the Screw tool to Scissors as it better reflects the use
case (disconnecting nodes or segments). We’ve tweaked and improved many
Panels (Inspector, Layers, Transformation, Shapes). We’ve improved many
UI aspects of guidelines. The Tunni line which you can use to
control the tension of a segment has gotten a new friend, the Tunni
point which is even better at controlling the configuration of a segment
(the UI of this is not finished yet) — and you can easily make all Tunni lines
for your selection visible via Contour / Create Tunni lines.

You can now specify fixed sidebearings using an action in Tools /
Actions
, or by specifying the LSB or RSB value as =35 instead of 35.
By prepending the equal sign, the sidebearing will be fixed and will keep its
value even if the outlines change (i.e. the width of the glyph will
dynamically reflect the changes to the glyph).

Make sure to explore the various Preferences , especially those in Glyph
Window section. We’ll simplify them later, but we’d really like to hear your
feedback on which of the many configurations of Node sizes and colors you
prefer. Please also test whether you prefer View / Show / All Nodes to be
on or off.

We’ve improved FontAudit , taking some visual inspiration from Tal
Leming’s liberally-licensed [Glyph Nanny](github.com/typesupply/glyph-
nanny) plugin. Enable FontAudit via View / Show / FontAudit, and take more
control over how it works via Window / FontAudit.

Brand-new Pen tool»

But most importantly: we’ve thought long and hard about the traditional Bezier
Pen tool. First introduced 30 years ago in Fontographer, the Bezier Pen
tool has found numerous implementations — in Freehand, Illustrator, Corel
Draw, FontLab Studio, Glyphs, RoboFont, Sketch, Affinity Designer and many
many other apps which can draw Bezier curves. Most of the many variations of
the traditional Bezier Pen tool had some little advantages when compared to
the original Fontographer one, but none made it really better. It is a fact
that only a small fraction of designers (both type and graphic) use the Bezier
Pen tool, because it is so awkward to use. Plus it’s always been oblivious to
the specific requirements of type design. Many type designers draw a shape
made out of straight lines, and then “inflate” it by converting some segments
to curves — which is kind of silly. It shows that the traditional Bezier Pen
tool is counterintuitive.

“If something doesn’t really catch up with the users for 30 years, there’s
something really wrong with it,”
we thought. So we decided to re-imagine
the Pen tool
. It works entirely differently now — we think it’s now much
easier to draw sensible shapes made out of both lines and curves. We’ll add
some explanatory videos about it, but please give it a try now. A hint: the
Ctrl, Alt and Shift modifiers, and double-click work. And a remark: the Pen
tool is “write-only”, i.e. you can only use it to draw new paths, not modify
existing ones. We’ll think about the possibilities of changing it in the
future.

So, that’s some short release notes this time, but we’ll be adding more
detailed explanations and videos soon. Enjoy! We’re looking forward to your
feedback!

  1. Preference to fill open contours.
  2. Some changes in rendering of inactive nodes.
  3. Few fixes in UI and few bug fixes.
  4. Font Info Panel setting for “default curvature”.
  5. Better rendering of open contours in all panels and windows.—-

FontLab VI Preview 5571»

We’ve been extremely busy in the last month. In this new build 5571, we’re
introducing a huge number of new features that bring FontLab VI many steps
towards the completion. Make sure to check out the Screw disconnection
and the fantastic Slide node functionality (with Shift+Alt) which now
enables you to actually elongate any curved or straight segment. It plays very
well with our revolutionary new Bucket tool that makes complicated
Boolean operations a thing of the past.

You can now apply Tags to glyphs and to global guides or zones, so that
they only appear in some glyphs (such as only uppercase or lowercase, only
figures etc.). The new Glyph cell caption colorization and new
sorting options for the Font Window allow you to keep the relevant glyphs
together at all times, and to quickly find your way in a large glyph set. This
includes the experimental ability to sort glyphs by Age (last
modification date and time).

We have a 1st implementation of Anchors that can be used for dynamic
mark attachment and glyph generation (and we have a great new Generate
Glyphs
implementation).

Inside the Glyph Window, you’ll find some improved design including a way to
display information about Shapes. And, by popular demand, you can switch
off contour antialiasing (monochrome outlines actually look very cool
on Retina because antialiasing is actually a low res thing).

Metrics are now easier to set with slalom glyphs and a simple
library of sample texts.

There are tons of minor improvements as well. We accomplished all this in just
over a month. We’re well aware that the UI is still very flaky and
inconsistent at places, and that some of the new features are very early
implementations. Our planned overhaul of terminology and menus is still ahead,
and there are still a few major things that we’ll be doing in the coming
months. But we hope you’ll enjoy this new build as much as we do!

Slide node improved»

We have greatly improved the “Slide node” operation (when you drag a node with
Shift+Alt pressed). Until now, you could only slide a smooth node between two
curve segments. But now, you can also slide corner nodes, or even open path
ends!

Bucket tool major»

We have a revolutionary new tool: the Bucket tool. With it, you can
dynamically designate certain areas of your glyph filled or transparent,
without any complicated Boolean operations. FontLab VI will of course apply
the Boolean operations when you flatten the glyph or generate it. With the
Bucket tool, for the first time in a font editor, you can actually design your
whitespace. Note: the implementation is still flaky.

Glyph and guideline tags major»

We have a major new feature: glyph and guideline tags.

In the Glyph Info panel, you can assign a glyph a space-delimited list of
tags. All glyphs with a certain tag can be accessed as a Group. Alignment
zones or font guides can be tagged as well, and they will only appear in
glyphs with a certain tag (so essentially, you can have per-group alignment
zones or font guides, for example separate sets of UC, lc and SC).

We have a simple implementation of automatic tagging. Check out Window /
Groups and choose “Virtual Tags” from the top-left dropdown list. This
implementation will be improved.

The new Glyph Info panel (Window / Glyph Info) displays more information about
the current glyph. This includes the GDEF OT Class, Unicode name, Note and
Tags.

Font Window»

The glyph cells in Font Window can now have automatically colorized captions
and can be sorted according to a range of additional properties:

  • Width, left and right sidebearing
  • Number of shapes
  • OT class (GDEF)
  • Script (writing system)
  • Age (date and time of last modification)
  • Color tag (sorting only)
  • Left and right kerning group (caption colorization only)

Note: The implementation of sorting and cell colorization by “Age” is a proof-
of-concept at this point, it does not hold this information across saves (but
we intend to make it work across saves).

We have also added a number of preferences (check them out!), including a
preference to place the glyph cell caption at the bottom of the cell (which
will be our default). Please let us know which one you prefer!

Anchors, Pins, mark attachment»

Another major feature: FLVI has now an initial (early!) implementation of
anchor-based mark attachment and glyph generation. We’ll provide more
information about this at a later time. Not all aspects of the implementation
including Anchors panel are yet functional, and there are some bugs in the
anchor-based positioning of the marks.

Generate Glyphs»

We have a brand-new Generate Glyphs functionality in Font / Generate Glyphs.
It works best if you have some glyphs selected in Font Info or in Text Mode of
the Glyph Window. More information will be provided.

Font Info»

The new Font Info panel (Window / Font Info) displays only the most
essential naming and design parameters. Advanced Font Info has been moved to a
dialog box (File / Font Info), which is unfinished. It will allow a better
structure, more UI elements, and better management of the settings.

The new Font Info panel features the italic angle and caret offset
parameters which now also control the slant angle and offset of the
sidebearings and the grid. With a non-0 italic angle, the vertical
Shift+mouse movements or Shift+up/down keys will also move the nodes along the
italic angle (we’ll add a preference for it).

Glyph Window / Shapes and Outlines»

The node coordinates are displayed in a more modest fashion.

You can disable antialiasing of the contours in Preferences / Glyph window /
Smooth contour rendering. This gives you the beloved monochrome contours known
from FOG and FLS5.

The names and bounding boxes of Shapes (the FLVI components) can be displayed
using View / Shape Frame

Glyph Window / Metrics»

The Metrics Table can now be shown and hidden and is permanently docked at the
bottom of the glyph window. It’s visible in all modes.

The Glyph Window now has a 1st implementation of a library of texts that you
can pick from a list.

We also have a 1st implementation of “slalom glyphs”, an ability to intertwine
your text with some control glyphs on the left and right of each glyph for
spacing purposes.

Largely completed (but still subject to fine tuning)»

  • Reading of all kinds of font formats (.vfb, .ufo, .glyphs, .otf, .ttf, .ttc, .phf and many others), with up-to-date handling of many OpenType tables, including OTL and color font tables
  • Writing of many font formats (.vfb, .ufo, .otf, .ttf and many others), though there may be issues with the generated font files in some formats so they’re not production-quality
  • Management of Sketchboard, Frames, Windows, Panels and Toolbars
  • Font Map panel and Font Window
  • Glyphs window with glyph drawing and with metrics and kerning editing
  • Drawing tools (Pen, Pencil, Knife, Eraser, Brush, Ellipse, Rectangle, Screw, Meter)
  • New point types (X-Servant, Y-Servant, Genius, Smart Corner)
  • Vastly improved TrueType (B-spline) curve editing and conversion

Known issues»

  • No real handling of multiple masters (.glyphs or .vfb files with Multiple Masters will open as separate fonts, this is not the final behavior)
  • No editing of TrueType hinting
  • The Groups panel (former Classes panel) is read-only
  • Undo and History are not working as intended
  • The file format for saving and opening font projects is not finalized
  • Menu structure, terminology and keyboard shortcuts are work in progress
  • Layers support is still incomplete
  • Multiple monitors support is present, but sometimes flaky.
  • Many UI elements such as panels are working only partially. Also, their design is subject to change. Your feedback is welcome!