Closed laerm0 closed 6 years ago
Just did a quick diff on this.
I'm actually pretty impressed with this rebuild so far.
Unfortunately, we have the usual pixel jumping on IE 9 etc. At 28+ billion views per a week, we can't get away with this.
I'm very tempted to write some glue to determine ttfautohint settings between font releases
Aha, great, thank you. I was waiting for your GIFs to see what adjustments needed to be made. I can fix this. Is this ready for my use yet so I don't have to bug you to run screenshots?
Yeah that sounds good, but something to put on the schedule for later.
I agree we can't have the pixel jump, but, Open Sans was hand hinted before so it needs to be again to prevent regressions; if your screenshot system isn't picking that up, its a problem ;)
Hand-hinting it again is, of course, no problem, but if I can push ttfautohint a little bit more to get hints that are 95% there, isn't that kind of better yet? I.e. we don't need to do any hand-tweaking as more scripts get added in to Open Sans.
if your screenshot system isn't picking that up, its a problem ;)
Oh, It did :-). Only way I spot things these days.
Tomorrow it will be pip installable. I suggest we get @laerm0 a separate BrowserStack account. I'll help him get setup. He'll then be able to do his own tests on the fly.
Sounds great. And yes if you can get closer to the previous release with TTFA that would be fantastic
Okay! The weight expansion of Open Sans is done. Woo. I did not mess with any of the metrics in the interpolated instances, as I figured that would take way too long.
Up next, working on the hinted TTFs to make sure they don't regress. @m4rc1e, maybe tomorrow you can show me how to get the diffenator going for myself.
@laerm0 sure!
I just need to push a few things to the repo and get it merged. Its come a long way in the past month. Drop me a line when you're online.
Its getting better.
I just genned off the Regular and compared it against the version on fonts.google.com.
I wouldn't worry about the modified glyphs for the moment. I have to perfect the threshold.
***attribs 18 modified***
table attrib value_a value_b
OS/2 ySubscriptYOffset 287 153
OS/2 ySuperscriptXSize 1434 1331
head modified 2017/04/30 17:18:13 2018/04/23 11:17:32
OS/2 ulUnicodeRange2 1073750107 1073741824
OS/2 ulUnicodeRange3 40 0
OS/2 ulUnicodeRange1 3758097135 536873607
OS/2 ySubscriptYSize 1331 1228
OS/2 ulCodePageRange1 536871327 536871359
head yMin -555 -568
OS/2 sFamilyClass 2050 0
OS/2 yStrikeoutPosition 497 657
gasp gaspRange {8: 10, 13: 7, 65535: 15}{65535: 15}
OS/2 usFirstCharIndex 32 0
OS/2 ySubscriptXSize 1434 1331
OS/2 ySuperscriptYOffset 977 716
OS/2 panose 2-11-6-6-3-5-4-2-2-40-0-5-0-0-0-0-0-0-0
head fontRevision 1.101 2.01
OS/2 ySuperscriptYSize 1331 1228
***metrics 5 modified***
glyph diff_adv diff_lsb diff_rsb
brevegravecomb 420 0 0
uni0479 96 0 0
Tcedilla -1 0 0
napostrophe -3 0 0
uni1F4D -23 0 0
***kern new***
No differences
***kern modified***
No differences
***kern missing***
No differences
***names new***
No differences
***names 10 modified***
id string_a string_b
(0, 1, 0, 0) Digitized data c... Digitized data c...
(0, 3, 1, 1033) Digitized data c... Digitized data c...
(3, 1, 0, 0) 1.10;1ASC;OpenSa... 2.010;1ASC;OpenS...
(3, 3, 1, 1033) 1.10;1ASC;OpenSa... 2.010;1ASC;OpenS...
(5, 1, 0, 0) Version 1.10 Version 2.010; t...
(5, 3, 1, 1033) Version 1.10 Version 2.010; t...
(13, 1, 0, 0) Licensed under t... This Font Softwa...
(13, 3, 1, 1033) Licensed under t... This Font Softwa...
(14, 1, 0, 0) http://www.apach... http://scripts.s...
(14, 3, 1, 1033) http://www.apach... http://scripts.s...
***names 2 missing***
id string
(7, 1, 0, 0) Open Sans is a trademark of Google and may be registered in certain jurisdictions.
(7, 3, 1, 1033) Open Sans is a trademark of Google and may be registered in certain jurisdictions.
***marks new***
No differences
***marks modified***
No differences
***marks missing***
No differences
***glyphs 125 new***
glyph
.null
I.ss01
IJ.ss01
Iacute.ss01
Ibreve.ss01
Icircumflex.ss01
Idieresis.ss01
Idotaccent.ss01
Igrave.ss01
Imacron.ss01
Iogonek.ss01
Iota.ss01
Iotadieresis.ss01
Iotatonos.ss01
Itilde.ss01
acutecomb
dotbelowcomb
f_f
f_f_i
f_f_l
g.ss02
gbreve.ss02
gcircumflex.ss02
gcommaaccent.ss02
gdotaccent.ss02
nonmarkingreturn
one.lf
uni0302
uni0304
uni0306
uni0307
uni0308
uni030A
uni030B
uni030C
uni0312
uni0326
uni0327
uni0328
uni0406.ss01
uni0407.ss01
uni0483
uni0484
uni0485
uni0486
uni04C0.ss01
uni04CF.ss01
uni05B0
uni05B1
uni05B2
***glyphs 723 modified***
glyph diff
brevegravecomb 41303.5833333
uni0478 1718.125
afii10048 1330.20833333
uni047E 1229.20833333
uni04E8 1227.45833333
uni0472 1227.45833333
uni04EA 1218.29166667
Theta 1198.875
afii10096 1158.70833333
uni1EE2 1142.41666667
uni1F4D 1137.08333333
uni047A 1132.66666667
copyright 1123.83333333
uni1EDA 1109.41666667
uni0473 1103.75
uni04E9 1103.75
uni1EE0 1099.625
uni1EDE 1096.5
uni04EB 1094.58333333
Ohorn 1091.58333333
uni1ED6 1087.45833333
uni047C 1074.29166667
otilde 1034.04166667
uni1ED7 1031.0
uni1ECC 1027.375
uni0479 1006.5
uni1ED8 997.291666667
Oacute 994.375
Omicrontonos 985.791666667
Otilde 984.583333334
uni1ECE 981.458333333
Omacron 976.541666667
afii10032 976.541666667
Omicron 976.541666667
O 976.541666667
uni1ECD 970.916666667
Obreve 970.041666666
uni1EDC 970.0
Odieresis 967.375
uni04E6 967.375
uni1ED2 966.541666667
ocircumflex 957.833333334
Ocircumflex 946.458333333
uni1ED9 940.833333333
oacute 937.916666667
omicrontonos 929.333333333
uni1ECF 925.0
afii10080 920.083333334
omicron 920.083333334
o 920.083333334
***glyphs 35 missing***
glyph
I.alt
IJ.alt
Iacute.alt
Ibreve.alt
Icircumflex.alt
Idieresis.alt
Idotaccent.alt
Igrave.alt
Imacron.alt
Iogonek.alt
Iota.alt
Iotadieresis.alt
Iotatonos.alt
Itilde.alt
afii10055.alt
afii10056.alt
dotbelow
ff
g.alt
gbreve.alt
gcircumflex.alt
gcommaaccent.alt
gdot.alt
one.pnum
uni0301
uni0483
uni0484
uni0485
uni0486
uni04C0.alt
uni04CF.alt
uni1EC8.alt
uni1ECA.alt
uniFB03
uniFB04
Ignoring the pixel jumps, I can see we need to reimplement those ff ligs and some marks are shifted. We'll do a more thorough review in Seville.
Cool, yeah, let's look at it later this week. Thanks.
@laerm0 what is needed to get this merged? :)
Hints as good as the original, pretty much.
So all the ligatures and mark-shifting diffs are fixed? Only hinting remains (and that is being pushed behind VF hinting)?
That being the case, let's merge :)
Not yet,
attribs 19 modified
table | attrib | value_a | value_b |
---|---|---|---|
OS/2 | ySubscriptYOffset | 287.0 | 153.0 |
OS/2 | ySuperscriptXSize | 1434.0 | 1331.0 |
head | modified | 2017/04/30 17:18:13 | 2018/05/18 07:13:19 |
OS/2 | ulUnicodeRange2 | 1073750107 | 1073741824 |
OS/2 | ulUnicodeRange3 | 40.0 | 0.0 |
head | xMax | 2466.0 | 2454.0 |
OS/2 | ulUnicodeRange1 | 3758097135 | 536873607 |
OS/2 | ySubscriptYSize | 1331.0 | 1228.0 |
OS/2 | ulCodePageRange1 | 536871327 | 536871359 |
head | yMin | -555.0 | -568.0 |
OS/2 | sFamilyClass | 2050.0 | 0.0 |
OS/2 | yStrikeoutPosition | 497.0 | 657.0 |
gasp | gaspRange | {8: 10, 13: 7, 65535: 15} | {65535: 15} |
OS/2 | usFirstCharIndex | 32.0 | 13.0 |
OS/2 | ySubscriptXSize | 1434.0 | 1331.0 |
OS/2 | ySuperscriptYOffset | 977.0 | 716.0 |
OS/2 | panose | 2-11-6-6-3-5-4-2-2-4 | 0-0-5-0-0-0-0-0-0-0 |
head | fontRevision | 1.101 | 2.01 |
OS/2 | ySuperscriptYSize | 1331.0 | 1228.0 |
metrics 12 modified
glyph | diff_adv | diff_lsb | diff_rsb |
---|---|---|---|
uni0484 | 1182.0 | 0 | 0 |
uni0485 | 1182.0 | 0 | 0 |
uni0486 | 1182.0 | 0 | 0 |
uni0483 | 1141.0 | 0 | 0 |
brevegravecomb | 420.0 | 0 | 0 |
mkmks 98 new
mark1_glyph | mark2_glyph | mark1_x | mark1_y | mark2_x | mark2_y |
---|---|---|---|---|---|
acutecomb | acutecomb | -559 | 1096 | -559 | 1569 |
acutecomb | macron | -559 | 1096 | 512 | 1378 |
acutecomb | gravecomb | -559 | 1096 | -745 | 1569 |
acutecomb | tildecomb | -559 | 1096 | -627 | 1501 |
acutecomb | hookabovecomb | -559 | 1096 | -579 | 1679 |
kern 7771 missing
left | right | value |
---|---|---|
A | quoteright | -143 |
A | quotedblright | -143 |
A | Wgrave | -82 |
A | Wacute | -82 |
A | Wdieresis | -82 |
names 10 modified
id | string_a | string_b |
---|---|---|
(0, 1, 0, 0) | Digitized data copyright © 2010-2011, Google Corporation. | Digitized data copyright (C) 2010-2011, Google Corporation. |
(0, 3, 1, 1033) | Digitized data copyright © 2010-2011, Google Corporation. | Digitized data copyright (C) 2010-2011, Google Corporation. |
(3, 1, 0, 0) | 1.10;1ASC;OpenSans-Regular | 2.010;1ASC;OpenSans-Regular |
(3, 3, 1, 1033) | 1.10;1ASC;OpenSans-Regular | 2.010;1ASC;OpenSans-Regular |
(5, 1, 0, 0) | Version 1.10 | Version 2.010 |
names 2 missing
id | string |
---|---|
(7, 1, 0, 0) | Open Sans is a trademark of Google and may be registered in certain jurisdictions. |
(7, 3, 1, 1033) | Open Sans is a trademark of Google and may be registered in certain jurisdictions. |
marks 3451 new
mark1_glyph | mark2_glyph | mark1_x | mark1_y | mark2_x | mark2_y |
---|---|---|---|---|---|
A | uni05BC.small | 0 | 0 | 0 | 0 |
A | acutecomb | 648 | 1462 | -559 | 1096 |
A | gravecomb | 648 | 1462 | -745 | 1096 |
A | tildecomb | 648 | 1462 | -627 | 1096 |
A | hookabovecomb | 648 | 1462 | -579 | 1096 |
glyphs 121 new
glyph --- | I.ss01 IJ.ss01 Iacute.ss01 Ibreve.ss01 Icircumflex.ss01
glyphs 3 modified
glyph | diff |
---|---|
uni0499 | 13647.75 |
aringacute | 8112.625 |
uni04BE | 1321.83333333 |
We need the following resolved:
@m4rc1e Want to set up a chat for next week to go over the diffs? I'll figure out the kerning this weekend.
I commented on the other issue regarding kerning, @m4rc1e. #4
Also, only Cond Light, Cond Bold, and Cond Bold Ital existed beforehand so those are the only ones that had kern data. I can see how well Glyphs did at interpolating out the kern data, but... 🤷♂️ On the condensed italics, it's probably garbage. Probably should schedule some time for me to kern it...
...or we just consider the static font no longer under development and then the variable font will have new and better data in it. I vote in favor of this.
Kerning is done! I think that's it (except for autohinting out of Glyphs). If the diffenator output is good, then let's merge.
Okay, the italic and variable italic source files are ready. The VGX italic font works.
Sources are ready to go. I have no errors and "fix fonts for Google spec" doesn't do anything else, so I think that's good. I updated the OT and all features have come over except
salt
, which is deprecated in favor ofss01
etc. Kerning, however, is gone. This will be an ongoing project to fix.Hinted TTFs look good. There are some fails on check-googlefonts but that's because I've expanded the character set and it doesn't compare well. Also, it complains about an improper number of contours for some reason.
I will go through the list of Open Sans bugs and see which look likely to be fixed by this PR.
The condensed fonts will require design so those aren't part of this phase.