diff --git a/docs/lab/index.html b/docs/lab/index.html
index f7479b2f4..4602bf9af 100644
--- a/docs/lab/index.html
+++ b/docs/lab/index.html
@@ -620,7 +620,7 @@ for (const ch of uniqueChars) {
},
})
- samples.set(ch + ' – combinations', {
+ samples.set(ch + ' – combinations + words', {
_cachedHTMLResult: null,
toHTML() {
if (this._cachedHTMLResult) {
@@ -649,6 +649,45 @@ for (const ch of uniqueChars) {
return html
}
})
+
+ samples.set(ch + ' – combinations', {
+ _cachedHTMLResult: null,
+ toHTML() {
+ if (this._cachedHTMLResult) {
+ return this._cachedHTMLResult
+ }
+ let s = []
+ for (const comb of combs1) {
+ s.push(comb)
+ }
+ let html = s.join(' ')
+ this._cachedHTMLResult = html
+ return html
+ }
+ })
+
+ samples.set(ch + ' – combinations (upper case)', {
+ _cachedHTMLResult: null,
+ toHTML() {
+ if (this._cachedHTMLResult) {
+ return this._cachedHTMLResult
+ }
+ let s = []
+ for (const comb of combs1) {
+ let p = comb.indexOf(ch)
+ if (p == 0) {
+ s.push(comb[0].toUpperCase() + comb[1])
+ } else if (p == 1) {
+ s.push(comb[0] + comb[1].toUpperCase())
+ } else {
+ s.push(comb)
+ }
+ }
+ let html = s.join(' ')
+ this._cachedHTMLResult = html
+ return html
+ }
+ })
}
diff --git a/docs/res/sample.png b/docs/res/sample.png
index 2284ce9fe..37a99d5d1 100644
Binary files a/docs/res/sample.png and b/docs/res/sample.png differ
diff --git a/docs/res/weights-and-styles.svg b/docs/res/weights-and-styles.svg
index 004350f60..e20070e41 100644
--- a/docs/res/weights-and-styles.svg
+++ b/docs/res/weights-and-styles.svg
@@ -45,17 +45,17 @@
-
+
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
diff --git a/misc/pylib/fontbuild/mix.pyx b/misc/pylib/fontbuild/mix.pyx
index 7fb1fa320..b47a38796 100644
--- a/misc/pylib/fontbuild/mix.pyx
+++ b/misc/pylib/fontbuild/mix.pyx
@@ -339,15 +339,6 @@ def interpolate(a,b,v,e=0):
return le + (qe-le) * e
def interpolateKerns(kA, kB, v):
- # to yield correct kerning for Roboto output, we must emulate the behavior
- # of old versions of this code; namely, take the kerning values of the first
- # master instead of actually interpolating.
- # old code:
- # https://github.com/google/roboto/blob/7f083ac31241cc86d019ea6227fa508b9fcf39a6/scripts/lib/fontbuild/mix.py
- # bug:
- # https://github.com/google/roboto/issues/213
- # return dict(kA)
-
kerns = {}
for pair, val in kA.items():
kerns[pair] = interpolate(val, kB.get(pair, 0), v.x)