Comments (7)
Yes, floor it at 250. Leave the "light" at 300 if you have one, and then space the intermediate weights from 250 up. It sucks, but this is the safest way to ensure nothing bad will happen on Windows in GDI apps.
This issue has been ongoing for at least 15 years now.
Note that it is in fact possible to write Windows GDI apps that won't do this, and only about half of them do. The problem is a combination of GDI behaviors for faux font weights, plus lack of understanding from programmers about the potential for a problem, as the majority of common typefaces would never have this issue—plus, we font developers keep on avoiding the issue on our side.
from work-sans.
Would it be better to make it the mininum class 100, but as a "Work Sans Hairline"
from work-sans.
CSS can only have weights in 100s, 1-9, but Windows GDI auto-bolds anything with a weight of 249 or less, so the minimum you should use is 250.
from work-sans.
If its a problem that Windows GDI auto-bolds anything < 250, are the weights at 100, 200 okay for 'Work Sans' family?
from work-sans.
About to update my repo to match the google/fonts@00fefdc
Including adding Panose
Only difference is yours:
<namerecord nameID="3" platformID="3" platEncID="1" langID="0x409">
1.030;UKWN;WorkSans-Hairline
Mine
<namerecord nameID="3" platformID="3" platEncID="1" langID="0x409">
1.031;UKWN;WorkSansHairline-Regular
from work-sans.
If its a problem that Windows GDI auto-bolds anything < 250, are the weights at 100, 200 okay for 'Work Sans' family?
Ah, no. I suggest flooring the family at 250, eg the Hairline has that value, and incrementing the other very light weights above it. Eg,
$ grep usWeightClass *ttx ;
WorkSans-Black.ttx: <usWeightClass value="900"/>
WorkSans-Bold.ttx: <usWeightClass value="700"/>
WorkSans-ExtraBold.ttx: <usWeightClass value="800"/>
WorkSans-ExtraLight.ttx: <usWeightClass value="200"/> <-- change to 280
WorkSans-Hairline.ttx: <usWeightClass value="50"/> <-- change to 250
WorkSans-Light.ttx: <usWeightClass value="300"/>
WorkSans-Medium.ttx: <usWeightClass value="500"/>
WorkSans-Regular.ttx: <usWeightClass value="400"/>
WorkSans-SemiBold.ttx: <usWeightClass value="600"/>
WorkSans-Thin.ttx: <usWeightClass value="100"/> <-- change to 260
$
@twardoch might have a view on this as the same issue came up with the latest versinon of Fira.
Only difference is yours:
I think the PS Name is a bit arbitrary and your version will work fine; I updated the version to append a g so we can tell its a gf version. Edit: Ah, I see you went with my version. I think its clearer this way :) https://github.com/weiweihuanghuang/Work-Sans/releases/tag/v1.31 Thanks!
from work-sans.
Thanks for the advice, I've implemented the changes
from work-sans.
Related Issues (20)
- font-variation-settings HOT 2
- Issue with letter i appearing as a capital when it is the first letter in a Word HOT 1
- Issue with ggplot text rendering not working for work sans HOT 1
- Other letters with same issue as A HOT 5
- dotbelowcomb (and all diacritics that depend on it) is defective in Light and ExtraLight weights HOT 2
- Bold "g" and "!" clump up at 21 ppem HOT 1
- VF: issues in STAT table HOT 1
- The letter "E" in Work Sans pixelates when exported from InDesign to Adobe PDF HOT 3
- Work Sans in Office 365 HOT 5
- A request for an opentail "g" HOT 3
- Inclusion of cased glottal stop HOT 6
- Add Greek and Cyrillic HOT 16
- Fonts not building anymore HOT 4
- Variable WOFF HOT 5
- If you ever go getting sponsored for making monospace version
- ss01 doesn't work from TypeKit HOT 2
- Slightly uneven outline with "R" in thin cuts
- Issue Work-Sans in Adobe Font HOT 1
- Interpolation problems in `WorkSans[wght].ttf`
- Interpolation problems in `WorkSans-Italic[wght].ttf`
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from work-sans.