Skip to content

Cal Sans v2.011

Latest

Choose a tag to compare

@MarkFonts MarkFonts released this 15 Oct 20:30
706884a

2.011

“Scheduling infrastructure” changing across Cal Sans’s optical sizes

A maintenance, docs, and minor performance update, and the one where Cal Sans Flex becomes an upgraded font. Its letterforms now morph along GEOM on hidden avar2 axes. Where avar2 is not supported, they still switch forms in a similar way to Cal Sans does, and then some.

a (U+0061) interpolating from wght 400–700 at opsz 10

Cal Sans Flex

Cal Sans Flex: I t f y j M C 9 morphing across the GEOM axis where the blends happen

Flex now uses true higher-order interpolation: every point travels one smooth curve through each blend, carried by three hidden axes that avar2 drives from GEOM. As an example, InDesign 2026 does not support Avar2 or this HOI function at all.

  • Smooth curves. Each point moves along one continuous curved path from the start of a blend to its end.
  • More Axes for more fun. GEOM with it’s numbered, support siblings: GE1M, GE2M, and GE3M. These may not show up everywhere because they’re hidden.
  • More letters blend: λ (along with y), and a and l on their A11y side instead of switching, plus the superior and inferior sixes and nines.
  • Smoother tails. 6, 9, y and ȷ no longer pinch, notch or bulge partway through the blend.
  • Accented letters follow their base through the blend, so Í Ī Į IJ, Ç Ć Č, ĵ ij and the rest no longer crowd their neighbors.
  • Falls back cleanly. A renderer without avar2 shows each drawn form and switches at the usual points, the way Cal Sans does.
  • Be a trailblazer! This is experimental, and your milage may vary.

Cal Sans Phlex

New alongside Flex in the repo’s fonts/calsans-var-flex: Cal Sans Phlex, the same blends built a different way. Phlex uses pre-composed, automated drawings to rough out the curve, using intermediate masters along GEOM itself, so it needs nothing but a variable-font renderer. This is quasi-linear, quasi-higher order approach known as “Piecewise Interpolation.” As Flex is not supported in InDesign 2026, Phlex does work. It’s hacky, what can I say.

  • Blends everywhere. No avar2 required: Phlex morphs in any app or browser that supports variable fonts.
  • Lighter: 2.1 MB .ttf / 413 KB .woff2, a third smaller than Flex.

Fixes

  • Kerning (#46): “di” and “li” no longer open up in the bold masters. A ďi value had leaked onto the whole l group (+190 to +240 units); it now applies to ďi only. The source is fixed too, not just the binaries.
  • Accented widths at SHRP 100: accented letters now match their base letter’s width and accent position at every SHRP value. ý was 18 units wider than y at opsz 10.
  • ĺ uses the case acute in both forms, so its accent keeps its shape when the l switches at A11y.
  • Accents on ascenders use the case forms. Typed accents on b d h k l (ḱ, or l followed by a combining acute) now match the precomposed ĺ and ĥ, and k’s accent sits over its stem.
  • Accents follow YTAS. On b d h k l they rise as far as the ascender does. On x-height letters (á é ó …) they rise half as far, so they stay close to the letter. Cal Sans Flex does this automatically at small optical sizes.
  • l redrawn to match its A11y form, with ŀ following, and the ss19 l family’s accents placed properly.
  • ” in italic (quotedblright) interpolates cleanly again. Two of its contours were swapped on the Display Regular Italic master. Thanks to @emmamarichal for spotting it.

Documentation

Static instance names are now documented. fonts/README.md lists all 384 static instances, shows each family and optical tier, and explains how to choose between Display, Text and Micro:

Hax in every tier, Regular and Bold, overlaid: only the x-height moves, and the small tiers set wider
opsz 45Cal v2 in Cal Sans UI, each letter's advance marked
Text
opsz 10
73% looser
Cal v2 in Cal Sans UI Text, each letter's advance marked: it sets 15% wider than Display
Micro
opsz 8
86% looser
Cal v2 in Cal Sans UI Micro, each letter's advance marked: it sets 18% wider than Display

Files

File Contents
CalSansVF Cal Sans, every axis
CalSansFlexVF Cal Sans Flex
calsans-static-essentials.zip The everyday static cuts
calsans-static-full.zip All 384 static instances