Difference between user space and design space?

33 views
Skip to first unread message

WeiH

unread,
Nov 27, 2019, 9:59:18 PM11/27/19
to Google Fonts Discussions
Saw this over at https://github.com/LettError/designSpaceRoboFontExtension
But I couldn't find it documented anywhere what a user space is?

Stephen Nixon

unread,
Nov 27, 2019, 10:10:54 PM11/27/19
to Google Fonts Discussions
The "designspace" is the set of axis values you use to describe things inside your designspace. 

The "user space" is the set of axis values you want your end users (e.g. CSS developers) to see. For weight, this is 300, 400, 700, etc. For width, this is based around 100. See the OpenType spec for more user space values.

In my project Recursive, I have started setting my "designspace" weight values to be equivalent to the stem widths I want for interpolations. Then, these are mapped to the CSS values for the weights I want things to appear as. I initially tried to set my designspace values in terms of CSS values, but found that it was too hard to conceptualize. 
Screen Shot 2019-11-27 at 10.06.36 PM.png
Screen Shot 2019-11-27 at 10.10.13 PM.png
Screen Shot 2019-11-27 at 10.10.22 PM.png

WeiH

unread,
Nov 28, 2019, 5:19:47 PM11/28/19
to Google Fonts Discussions
Thanks for you answer Stephen! That makes sense!
Is that where it refers to "User coordinate scale" here:

User coordinate scale: The numeric scale used to characterize a given axis of variation, and the scale used by applications when selecting instances of a variable font.
Note: Some axes of variation have a prescribed, limited range, expressed in terms of the user scale. When using a particular variable font, the user scale for a given axis is bounded by minimum and maximum specified within the 'fvar' table, and may be a sub-range of the valid range for that axis generally.

My next question is, is it possible to map the font-stretch keywords to the correct `wdth` value?
I found these docs, but looking at the font-stretch Mozilla doc it seems they're hard coded to a % value, which seems like a user could select `expanded` which is 125% but not necessarily get the Expanded style, or is there a way to noramlise it?
https://developer.mozilla.org/en-US/docs/Web/CSS/font-stretch

Dave Crossland

unread,
Nov 28, 2019, 5:47:43 PM11/28/19
to googlefonts-discuss
On Thu, Nov 28, 2019 at 5:19 PM WeiH <weiand...@gmail.com> wrote:

My next question is, is it possible to map the font-stretch keywords to the correct `wdth` value?

That is already planned to be specified in CSS; see https://www.w3.org/TR/css-fonts-4/#font-stretch-prop 
 
I found these docs, but looking at the font-stretch Mozilla doc it seems they're hard coded to a % value, which seems like a user could select `expanded` which is 125% but not necessarily get the Expanded style, or is there a way to noramlise it?
https://developer.mozilla.org/en-US/docs/Web/CSS/font-stretch

The 'avar' table can warp a design space to ensure that your 'wdth' axis value of 125% (which is hard coded as Expanded) is the style that you want. 

WeiH

unread,
Nov 28, 2019, 7:30:38 PM11/28/19
to Google Fonts Discussions
Thanks Dave, Is there a project that has editing the AVAR table as part of the build i can refer to?

Dave Crossland

unread,
Nov 28, 2019, 8:16:39 PM11/28/19
to googlefonts-discuss, Marc Foley
Hepta Slab, and recursive, spring to mind

On Thu, Nov 28, 2019, 7:30 PM WeiH <weiand...@gmail.com> wrote:
Thanks Dave, Is there a project that has editing the AVAR table as part of the build i can refer to?

--
You received this message because you are subscribed to the Google Groups "Google Fonts Discussions" group.
To unsubscribe from this group and stop receiving emails from it, send an email to googlefonts-dis...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/googlefonts-discuss/84892479-9daf-444e-8384-e1553d2ed2e4%40googlegroups.com.

Adam Twardoch (Lists)

unread,
Nov 29, 2019, 2:32:14 AM11/29/19
to googlefon...@googlegroups.com
The .designSpace v4 <map> element gets written out as the avar table. 

On Fri, 29 Nov 2019 at 01:30, WeiH <weiand...@gmail.com> wrote:
Thanks Dave, Is there a project that has editing the AVAR table as part of the build i can refer to?

Reply all
Reply to author
Forward
0 new messages