summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2021-11-24 17:46:55 -0500
committerMatthias Clasen <mclasen@redhat.com>2021-11-25 07:57:14 -0500
commitcddd173f713335318802a98f008d44b66ac4db46 (patch)
tree1d354ef8486e76d7359059bb87c9337af7189603
parent5f539a0357ae3f5f1ebd4b97fb6844f70b48f30c (diff)
downloadpango-cddd173f713335318802a98f008d44b66ac4db46.tar.gz
Make test-layout use included fonts
Add Cantarell, DejaVu Sans and a subset of Noto Color Emoji to git, and make test-layout use just those fonts. This should help with keeping the ci from breaking due to different system fonts. Update tests.
-rw-r--r--tests/fonts/Cantarell-VF.otfbin0 -> 170588 bytes
-rw-r--r--tests/fonts/DejaVuSans.ttfbin0 -> 757076 bytes
-rw-r--r--tests/fonts/README4
-rw-r--r--tests/fonts/emoji-subset.ttfbin0 -> 35236 bytes
-rw-r--r--tests/layouts/bratwurst.layout33
-rw-r--r--tests/layouts/bratwurst2.layout17
-rw-r--r--tests/layouts/bratwurst3.layout65
-rw-r--r--tests/layouts/bratwurst4.layout33
-rw-r--r--tests/layouts/effigy.layout35
-rw-r--r--tests/layouts/kebab.layout33
-rw-r--r--tests/layouts/valid-1.layout49
-rw-r--r--tests/layouts/valid-10.layout86
-rw-r--r--tests/layouts/valid-11.layout81
-rw-r--r--tests/layouts/valid-12.layout51
-rw-r--r--tests/layouts/valid-13.layout51
-rw-r--r--tests/layouts/valid-14.layout126
-rw-r--r--tests/layouts/valid-15.layout49
-rw-r--r--tests/layouts/valid-16.layout49
-rw-r--r--tests/layouts/valid-17.layout33
-rw-r--r--tests/layouts/valid-18.layout51
-rw-r--r--tests/layouts/valid-19.layout183
-rw-r--r--tests/layouts/valid-2.layout81
-rw-r--r--tests/layouts/valid-20.layout33
-rw-r--r--tests/layouts/valid-22.layout129
-rw-r--r--tests/layouts/valid-3.layout50
-rw-r--r--tests/layouts/valid-4.layout81
-rw-r--r--tests/layouts/valid-5.layout97
-rw-r--r--tests/layouts/valid-6.layout52
-rw-r--r--tests/layouts/valid-7.layout65
-rw-r--r--tests/layouts/valid-8.layout70
-rw-r--r--tests/layouts/valid-9.layout84
-rw-r--r--tests/meson.build9
-rw-r--r--tests/test-layout.c110
33 files changed, 1685 insertions, 205 deletions
diff --git a/tests/fonts/Cantarell-VF.otf b/tests/fonts/Cantarell-VF.otf
new file mode 100644
index 00000000..cd2ccf42
--- /dev/null
+++ b/tests/fonts/Cantarell-VF.otf
Binary files differ
diff --git a/tests/fonts/DejaVuSans.ttf b/tests/fonts/DejaVuSans.ttf
new file mode 100644
index 00000000..46bb331e
--- /dev/null
+++ b/tests/fonts/DejaVuSans.ttf
Binary files differ
diff --git a/tests/fonts/README b/tests/fonts/README
new file mode 100644
index 00000000..df48f804
--- /dev/null
+++ b/tests/fonts/README
@@ -0,0 +1,4 @@
+The fonts in this directory are available to test-layout tests.
+emoji-subset.ttf is a subset of Noto Color Emoji that is just
+big enough to provide the Emoji that are present in our test
+cases.
diff --git a/tests/fonts/emoji-subset.ttf b/tests/fonts/emoji-subset.ttf
new file mode 100644
index 00000000..2addf727
--- /dev/null
+++ b/tests/fonts/emoji-subset.ttf
Binary files differ
diff --git a/tests/layouts/bratwurst.layout b/tests/layouts/bratwurst.layout
index 8102e2da..ddfe44c2 100644
--- a/tests/layouts/bratwurst.layout
+++ b/tests/layouts/bratwurst.layout
@@ -32,6 +32,7 @@
"output" : {
"is-wrapped" : false,
"is-ellipsized" : false,
+ "unknown-glyphs" : 0,
"width" : 202752,
"height" : 53248,
"log-attrs" : [
@@ -111,7 +112,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell Bold 32",
+ "font" : {
+ "description" : "Cantarell Bold 32",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 8374
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -151,7 +166,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell Bold Oblique 32",
+ "font" : {
+ "description" : "Cantarell Bold 32",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 8374
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
diff --git a/tests/layouts/bratwurst2.layout b/tests/layouts/bratwurst2.layout
index 701a0b37..0fb44a24 100644
--- a/tests/layouts/bratwurst2.layout
+++ b/tests/layouts/bratwurst2.layout
@@ -25,6 +25,7 @@
"output" : {
"is-wrapped" : false,
"is-ellipsized" : false,
+ "unknown-glyphs" : 0,
"width" : 202752,
"height" : 53248,
"log-attrs" : [
@@ -104,7 +105,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell Bold 32",
+ "font" : {
+ "description" : "Cantarell Bold 32",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 8374
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
diff --git a/tests/layouts/bratwurst3.layout b/tests/layouts/bratwurst3.layout
index fe5107d9..7d58668b 100644
--- a/tests/layouts/bratwurst3.layout
+++ b/tests/layouts/bratwurst3.layout
@@ -26,6 +26,7 @@
"output" : {
"is-wrapped" : true,
"is-ellipsized" : false,
+ "unknown-glyphs" : 0,
"width" : 78848,
"height" : 212992,
"log-attrs" : [
@@ -105,7 +106,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell Bold 32",
+ "font" : {
+ "description" : "Cantarell Bold 32",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 8374
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 4,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -146,7 +161,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell Bold 32",
+ "font" : {
+ "description" : "Cantarell Bold 32",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 8374
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 4,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -187,7 +216,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell Bold 32",
+ "font" : {
+ "description" : "Cantarell Bold 32",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 8374
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 4,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -228,7 +271,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell Bold 32",
+ "font" : {
+ "description" : "Cantarell Bold 32",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 8374
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
diff --git a/tests/layouts/bratwurst4.layout b/tests/layouts/bratwurst4.layout
index 311a1984..66c76828 100644
--- a/tests/layouts/bratwurst4.layout
+++ b/tests/layouts/bratwurst4.layout
@@ -27,6 +27,7 @@
"output" : {
"is-wrapped" : true,
"is-ellipsized" : false,
+ "unknown-glyphs" : 0,
"width" : 115712,
"height" : 106496,
"log-attrs" : [
@@ -112,7 +113,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell Bold 32",
+ "font" : {
+ "description" : "Cantarell Bold 32",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 8374
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 4,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -171,7 +186,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell Bold 32",
+ "font" : {
+ "description" : "Cantarell Bold 32",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 8374
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
diff --git a/tests/layouts/effigy.layout b/tests/layouts/effigy.layout
index 62fa596f..a2275d45 100644
--- a/tests/layouts/effigy.layout
+++ b/tests/layouts/effigy.layout
@@ -27,7 +27,8 @@
"output" : {
"is-wrapped" : true,
"is-ellipsized" : false,
- "width" : 71680,
+ "unknown-glyphs" : 0,
+ "width" : 73728,
"height" : 102400,
"log-attrs" : [
{
@@ -91,7 +92,18 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "DejaVu Sans 32",
+ "font" : {
+ "description" : "DejaVu Sans 32",
+ "checksum" : "69ccd07023a72ceb27a5e5c22f728627353b60a198170f5e58dd7014221abf01",
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 4,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -105,13 +117,13 @@
},
{
"glyph" : 5041,
- "width" : 29696,
+ "width" : 30720,
"is-cluster-start" : true,
"log-cluster" : 1
},
{
"glyph" : 2803,
- "width" : 15360,
+ "width" : 16384,
"log-cluster" : 1
}
]
@@ -132,7 +144,18 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "DejaVu Sans 32",
+ "font" : {
+ "description" : "DejaVu Sans 32",
+ "checksum" : "69ccd07023a72ceb27a5e5c22f728627353b60a198170f5e58dd7014221abf01",
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -162,4 +185,4 @@
}
]
}
-}
+} \ No newline at end of file
diff --git a/tests/layouts/kebab.layout b/tests/layouts/kebab.layout
index ce41c9b4..a62117ae 100644
--- a/tests/layouts/kebab.layout
+++ b/tests/layouts/kebab.layout
@@ -26,6 +26,7 @@
"output" : {
"is-wrapped" : true,
"is-ellipsized" : false,
+ "unknown-glyphs" : 0,
"width" : 126976,
"height" : 106496,
"log-attrs" : [
@@ -120,7 +121,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell Bold 32",
+ "font" : {
+ "description" : "Cantarell Bold 32",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 8374
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -180,7 +195,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell Bold 32",
+ "font" : {
+ "description" : "Cantarell Bold 32",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 8374
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
diff --git a/tests/layouts/valid-1.layout b/tests/layouts/valid-1.layout
index 0a966d4f..8fc1429a 100644
--- a/tests/layouts/valid-1.layout
+++ b/tests/layouts/valid-1.layout
@@ -36,6 +36,7 @@
"output" : {
"is-wrapped" : false,
"is-ellipsized" : true,
+ "unknown-glyphs" : 0,
"width" : 225280,
"height" : 37888,
"log-attrs" : [
@@ -357,7 +358,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -505,7 +520,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
@@ -601,7 +630,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "common",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 2,
"extra-attributes" : [
{
diff --git a/tests/layouts/valid-10.layout b/tests/layouts/valid-10.layout
index 51dc9ad0..ef6298d5 100644
--- a/tests/layouts/valid-10.layout
+++ b/tests/layouts/valid-10.layout
@@ -23,6 +23,7 @@
"output" : {
"is-wrapped" : false,
"is-ellipsized" : true,
+ "unknown-glyphs" : 0,
"width" : 102400,
"height" : 38912,
"log-attrs" : [
@@ -178,7 +179,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -230,7 +245,18 @@
"gravity" : "south",
"language" : "he",
"script" : "hebrew",
- "font" : "DejaVu Sans 11",
+ "font" : {
+ "description" : "DejaVu Sans 11",
+ "checksum" : "69ccd07023a72ceb27a5e5c22f728627353b60a198170f5e58dd7014221abf01",
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -250,13 +276,13 @@
},
{
"glyph" : 1331,
- "width" : 8192,
+ "width" : 9216,
"is-cluster-start" : true,
"log-cluster" : 2
},
{
"glyph" : 1344,
- "width" : 10240,
+ "width" : 11264,
"is-cluster-start" : true,
"log-cluster" : 0
}
@@ -270,15 +296,29 @@
"gravity" : "south",
"language" : "he",
"script" : "hebrew",
- "font" : "DejaVu Sans 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
"end-x-offset" : 0,
"glyphs" : [
{
- "glyph" : 3,
- "width" : 5120,
+ "glyph" : 1109,
+ "width" : 3072,
"is-cluster-start" : true,
"log-cluster" : 0
}
@@ -292,7 +332,21 @@
"gravity" : "south",
"language" : "el",
"script" : "greek",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -314,7 +368,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "common",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 2,
"extra-attributes" : [
{
diff --git a/tests/layouts/valid-11.layout b/tests/layouts/valid-11.layout
index 683cf696..d743acea 100644
--- a/tests/layouts/valid-11.layout
+++ b/tests/layouts/valid-11.layout
@@ -58,6 +58,7 @@
"output" : {
"is-wrapped" : false,
"is-ellipsized" : false,
+ "unknown-glyphs" : 0,
"width" : 109568,
"height" : 38912,
"log-attrs" : [
@@ -189,7 +190,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
@@ -253,7 +268,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -275,7 +304,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
@@ -323,7 +366,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -345,7 +402,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
diff --git a/tests/layouts/valid-12.layout b/tests/layouts/valid-12.layout
index 96362eb3..b7ee6ddf 100644
--- a/tests/layouts/valid-12.layout
+++ b/tests/layouts/valid-12.layout
@@ -30,8 +30,9 @@
"output" : {
"is-wrapped" : true,
"is-ellipsized" : false,
+ "unknown-glyphs" : 1,
"width" : 113664,
- "height" : 59392,
+ "height" : 56320,
"log-attrs" : [
{
"char-break" : true,
@@ -389,7 +390,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -555,7 +570,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -585,7 +614,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
diff --git a/tests/layouts/valid-13.layout b/tests/layouts/valid-13.layout
index 3bb98ce7..dadd40f0 100644
--- a/tests/layouts/valid-13.layout
+++ b/tests/layouts/valid-13.layout
@@ -31,8 +31,9 @@
"output" : {
"is-wrapped" : false,
"is-ellipsized" : false,
+ "unknown-glyphs" : 2,
"width" : 219136,
- "height" : 21504,
+ "height" : 18432,
"log-attrs" : [
{
"char-break" : true,
@@ -390,7 +391,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
@@ -562,7 +577,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
@@ -590,7 +619,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
diff --git a/tests/layouts/valid-14.layout b/tests/layouts/valid-14.layout
index 255f51da..09894b52 100644
--- a/tests/layouts/valid-14.layout
+++ b/tests/layouts/valid-14.layout
@@ -23,8 +23,9 @@
"output" : {
"is-wrapped" : false,
"is-ellipsized" : true,
+ "unknown-glyphs" : 0,
"width" : 161792,
- "height" : 48128,
+ "height" : 47104,
"log-attrs" : [
{
"char-break" : true,
@@ -195,13 +196,27 @@
"runs" : [
{
"offset" : 0,
- "length" : 3,
- "text" : "ä½ ",
+ "length" : 6,
+ "text" : "你好",
"bidi-level" : 0,
"gravity" : "south",
"language" : "en-us",
"script" : "common",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 2,
"extra-attributes" : [
{
@@ -227,36 +242,44 @@
},
{
"glyph" : 1058,
- "width" : 4096,
+ "width" : 16384,
"log-cluster" : 0
}
]
},
{
- "offset" : 3,
- "length" : 4,
- "text" : "好 ",
+ "offset" : 6,
+ "length" : 1,
+ "text" : " ",
"bidi-level" : 0,
"gravity" : "south",
"language" : "xx",
"script" : "han",
- "font" : "Droid Sans 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
"end-x-offset" : 0,
"glyphs" : [
{
- "glyph" : 1300,
- "width" : 15360,
+ "glyph" : 1109,
+ "width" : 3072,
"is-cluster-start" : true,
"log-cluster" : 0
- },
- {
- "glyph" : 268435488,
- "width" : 0,
- "is-cluster-start" : true,
- "log-cluster" : 3
}
]
},
@@ -268,7 +291,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -320,7 +357,18 @@
"gravity" : "south",
"language" : "he",
"script" : "hebrew",
- "font" : "DejaVu Sans 11",
+ "font" : {
+ "description" : "DejaVu Sans 11",
+ "checksum" : "69ccd07023a72ceb27a5e5c22f728627353b60a198170f5e58dd7014221abf01",
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -340,13 +388,13 @@
},
{
"glyph" : 1331,
- "width" : 8192,
+ "width" : 9216,
"is-cluster-start" : true,
"log-cluster" : 2
},
{
"glyph" : 1344,
- "width" : 10240,
+ "width" : 11264,
"is-cluster-start" : true,
"log-cluster" : 0
}
@@ -360,15 +408,29 @@
"gravity" : "south",
"language" : "he",
"script" : "hebrew",
- "font" : "DejaVu Sans 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
"end-x-offset" : 0,
"glyphs" : [
{
- "glyph" : 3,
- "width" : 5120,
+ "glyph" : 1109,
+ "width" : 3072,
"is-cluster-start" : true,
"log-cluster" : 0
}
@@ -382,7 +444,21 @@
"gravity" : "south",
"language" : "el",
"script" : "greek",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
diff --git a/tests/layouts/valid-15.layout b/tests/layouts/valid-15.layout
index ac7ab3e9..8bcec049 100644
--- a/tests/layouts/valid-15.layout
+++ b/tests/layouts/valid-15.layout
@@ -23,6 +23,7 @@
"output" : {
"is-wrapped" : true,
"is-ellipsized" : true,
+ "unknown-glyphs" : 0,
"width" : 153600,
"height" : 36864,
"log-attrs" : [
@@ -652,7 +653,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -826,7 +841,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -962,7 +991,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "common",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 2,
"extra-attributes" : [
{
diff --git a/tests/layouts/valid-16.layout b/tests/layouts/valid-16.layout
index 0f1b8698..8c80be6d 100644
--- a/tests/layouts/valid-16.layout
+++ b/tests/layouts/valid-16.layout
@@ -24,6 +24,7 @@
"output" : {
"is-wrapped" : true,
"is-ellipsized" : true,
+ "unknown-glyphs" : 0,
"width" : 153600,
"height" : 56320,
"log-attrs" : [
@@ -653,7 +654,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -827,7 +842,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -963,7 +992,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "common",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 2,
"extra-attributes" : [
{
diff --git a/tests/layouts/valid-17.layout b/tests/layouts/valid-17.layout
index 8d0ff072..f14c769c 100644
--- a/tests/layouts/valid-17.layout
+++ b/tests/layouts/valid-17.layout
@@ -22,6 +22,7 @@
"output" : {
"is-wrapped" : true,
"is-ellipsized" : false,
+ "unknown-glyphs" : 0,
"width" : 102400,
"height" : 56320,
"log-attrs" : [
@@ -152,7 +153,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -266,7 +281,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
diff --git a/tests/layouts/valid-18.layout b/tests/layouts/valid-18.layout
index e02c185a..9424a079 100644
--- a/tests/layouts/valid-18.layout
+++ b/tests/layouts/valid-18.layout
@@ -27,8 +27,9 @@
"output" : {
"is-wrapped" : true,
"is-ellipsized" : false,
+ "unknown-glyphs" : 9,
"width" : 295936,
- "height" : 62464,
+ "height" : 56320,
"log-attrs" : [
{
"char-break" : true,
@@ -343,7 +344,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
@@ -462,7 +477,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
@@ -499,7 +528,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
diff --git a/tests/layouts/valid-19.layout b/tests/layouts/valid-19.layout
index 02b07bf4..aeec29a7 100644
--- a/tests/layouts/valid-19.layout
+++ b/tests/layouts/valid-19.layout
@@ -20,8 +20,9 @@
"output" : {
"is-wrapped" : false,
"is-ellipsized" : false,
- "width" : 250880,
- "height" : 43008,
+ "unknown-glyphs" : 7,
+ "width" : 252928,
+ "height" : 38912,
"log-attrs" : [
{
"char-break" : true,
@@ -206,7 +207,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -246,7 +261,18 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "DejaVu Sans 11",
+ "font" : {
+ "description" : "DejaVu Sans 11",
+ "checksum" : "69ccd07023a72ceb27a5e5c22f728627353b60a198170f5e58dd7014221abf01",
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -254,7 +280,7 @@
"glyphs" : [
{
"glyph" : 5867,
- "width" : 15360,
+ "width" : 16384,
"is-cluster-start" : true,
"log-cluster" : 0
},
@@ -280,7 +306,18 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "DejaVu Sans 11",
+ "font" : {
+ "description" : "DejaVu Sans 11",
+ "checksum" : "69ccd07023a72ceb27a5e5c22f728627353b60a198170f5e58dd7014221abf01",
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -288,7 +325,7 @@
"glyphs" : [
{
"glyph" : 5867,
- "width" : 15360,
+ "width" : 16384,
"is-cluster-start" : true,
"log-cluster" : 0
},
@@ -308,7 +345,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -330,7 +381,18 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Raqq 11",
+ "font" : {
+ "description" : "DejaVu Sans 11",
+ "checksum" : "69ccd07023a72ceb27a5e5c22f728627353b60a198170f5e58dd7014221abf01",
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -358,7 +420,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -380,7 +456,18 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Raqq 11",
+ "font" : {
+ "description" : "DejaVu Sans 11",
+ "checksum" : "69ccd07023a72ceb27a5e5c22f728627353b60a198170f5e58dd7014221abf01",
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -402,7 +489,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -424,7 +525,18 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Raqq 11",
+ "font" : {
+ "description" : "DejaVu Sans 11",
+ "checksum" : "69ccd07023a72ceb27a5e5c22f728627353b60a198170f5e58dd7014221abf01",
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -452,7 +564,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -498,7 +624,18 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Raqq 11",
+ "font" : {
+ "description" : "DejaVu Sans 11",
+ "checksum" : "69ccd07023a72ceb27a5e5c22f728627353b60a198170f5e58dd7014221abf01",
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -550,7 +687,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
diff --git a/tests/layouts/valid-2.layout b/tests/layouts/valid-2.layout
index 30f062b0..a7e490eb 100644
--- a/tests/layouts/valid-2.layout
+++ b/tests/layouts/valid-2.layout
@@ -34,6 +34,7 @@
"output" : {
"is-wrapped" : false,
"is-ellipsized" : false,
+ "unknown-glyphs" : 0,
"width" : 200704,
"height" : 37888,
"log-attrs" : [
@@ -260,7 +261,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -330,7 +345,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell Oblique 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -370,7 +399,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -428,7 +471,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
@@ -482,7 +539,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
diff --git a/tests/layouts/valid-20.layout b/tests/layouts/valid-20.layout
index 4f799fd9..e82eec6d 100644
--- a/tests/layouts/valid-20.layout
+++ b/tests/layouts/valid-20.layout
@@ -38,6 +38,7 @@
"output" : {
"is-wrapped" : false,
"is-ellipsized" : false,
+ "unknown-glyphs" : 0,
"width" : 76800,
"height" : 44032,
"log-attrs" : [
@@ -109,7 +110,21 @@
"gravity" : "east",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell Rotated-Left 11",
+ "font" : {
+ "description" : "Cantarell Rotated-Left 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
@@ -161,7 +176,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
diff --git a/tests/layouts/valid-22.layout b/tests/layouts/valid-22.layout
index e5e5970e..5596cb19 100644
--- a/tests/layouts/valid-22.layout
+++ b/tests/layouts/valid-22.layout
@@ -100,6 +100,7 @@
"output" : {
"is-wrapped" : false,
"is-ellipsized" : false,
+ "unknown-glyphs" : 0,
"width" : 49152,
"height" : 41090,
"log-attrs" : [
@@ -204,7 +205,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -226,7 +241,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell Oblique 7.1484375",
+ "font" : {
+ "description" : "Cantarell 7.1484375",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
@@ -262,7 +291,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -302,7 +345,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 7.1484375",
+ "font" : {
+ "description" : "Cantarell 7.1484375",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
@@ -338,7 +395,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 4.646484375",
+ "font" : {
+ "description" : "Cantarell 4.646484375",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
@@ -386,7 +457,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 3.0205078125",
+ "font" : {
+ "description" : "Cantarell 3.0205078125",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
@@ -446,7 +531,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 1.962890625",
+ "font" : {
+ "description" : "Cantarell 1.962890625",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
@@ -518,7 +617,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 1.2763671875",
+ "font" : {
+ "description" : "Cantarell 1.2763671875",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
diff --git a/tests/layouts/valid-3.layout b/tests/layouts/valid-3.layout
index a40e605e..b0310eaa 100644
--- a/tests/layouts/valid-3.layout
+++ b/tests/layouts/valid-3.layout
@@ -20,7 +20,8 @@
"output" : {
"is-wrapped" : false,
"is-ellipsized" : false,
- "width" : 53248,
+ "unknown-glyphs" : 0,
+ "width" : 54272,
"height" : 38912,
"log-attrs" : [
{
@@ -91,7 +92,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -125,7 +140,18 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "DejaVu Sans 11",
+ "font" : {
+ "description" : "DejaVu Sans 11",
+ "checksum" : "69ccd07023a72ceb27a5e5c22f728627353b60a198170f5e58dd7014221abf01",
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -133,7 +159,7 @@
"glyphs" : [
{
"glyph" : 5857,
- "width" : 15360,
+ "width" : 16384,
"is-cluster-start" : true,
"log-cluster" : 0
},
@@ -153,7 +179,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
diff --git a/tests/layouts/valid-4.layout b/tests/layouts/valid-4.layout
index a57f6d63..5cdf02f4 100644
--- a/tests/layouts/valid-4.layout
+++ b/tests/layouts/valid-4.layout
@@ -21,6 +21,7 @@
"output" : {
"is-wrapped" : true,
"is-ellipsized" : false,
+ "unknown-glyphs" : 0,
"width" : 197632,
"height" : 111616,
"log-attrs" : [
@@ -897,7 +898,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 4,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -1106,7 +1121,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -1316,7 +1345,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 4,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -1519,7 +1562,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -1735,7 +1792,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
diff --git a/tests/layouts/valid-5.layout b/tests/layouts/valid-5.layout
index fa68f67c..66801d85 100644
--- a/tests/layouts/valid-5.layout
+++ b/tests/layouts/valid-5.layout
@@ -29,6 +29,7 @@
"output" : {
"is-wrapped" : true,
"is-ellipsized" : false,
+ "unknown-glyphs" : 0,
"width" : 194560,
"height" : 130048,
"log-attrs" : [
@@ -797,7 +798,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
@@ -955,7 +970,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
@@ -1125,7 +1154,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
@@ -1337,7 +1380,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
@@ -1465,7 +1522,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -1639,7 +1710,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
diff --git a/tests/layouts/valid-6.layout b/tests/layouts/valid-6.layout
index c0b31f13..7f103a8f 100644
--- a/tests/layouts/valid-6.layout
+++ b/tests/layouts/valid-6.layout
@@ -20,8 +20,9 @@
"output" : {
"is-wrapped" : false,
"is-ellipsized" : false,
- "width" : 150528,
- "height" : 40960,
+ "unknown-glyphs" : 1,
+ "width" : 151552,
+ "height" : 38912,
"log-attrs" : [
{
"char-break" : true,
@@ -183,7 +184,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -205,7 +220,18 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "DejaVu Sans 11",
+ "font" : {
+ "description" : "DejaVu Sans 11",
+ "checksum" : "69ccd07023a72ceb27a5e5c22f728627353b60a198170f5e58dd7014221abf01",
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -213,7 +239,7 @@
"glyphs" : [
{
"glyph" : 19,
- "width" : 9216,
+ "width" : 10240,
"is-cluster-start" : true,
"log-cluster" : 0
},
@@ -239,7 +265,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
diff --git a/tests/layouts/valid-7.layout b/tests/layouts/valid-7.layout
index 882e67c8..5a1fed32 100644
--- a/tests/layouts/valid-7.layout
+++ b/tests/layouts/valid-7.layout
@@ -37,6 +37,7 @@
"output" : {
"is-wrapped" : false,
"is-ellipsized" : true,
+ "unknown-glyphs" : 0,
"width" : 153600,
"height" : 37888,
"log-attrs" : [
@@ -358,7 +359,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -446,7 +461,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "common",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 2,
"extra-attributes" : [
{
@@ -475,7 +504,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
@@ -523,7 +566,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
diff --git a/tests/layouts/valid-8.layout b/tests/layouts/valid-8.layout
index ea42ae7a..d8fbee1b 100644
--- a/tests/layouts/valid-8.layout
+++ b/tests/layouts/valid-8.layout
@@ -23,6 +23,7 @@
"output" : {
"is-wrapped" : false,
"is-ellipsized" : false,
+ "unknown-glyphs" : 0,
"width" : 134144,
"height" : 90112,
"log-attrs" : [
@@ -178,7 +179,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -230,7 +245,18 @@
"gravity" : "south",
"language" : "he",
"script" : "hebrew",
- "font" : "DejaVu Sans 11",
+ "font" : {
+ "description" : "DejaVu Sans 11",
+ "checksum" : "69ccd07023a72ceb27a5e5c22f728627353b60a198170f5e58dd7014221abf01",
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
@@ -250,13 +276,13 @@
},
{
"glyph" : 1331,
- "width" : 8192,
+ "width" : 9216,
"is-cluster-start" : true,
"log-cluster" : 2
},
{
"glyph" : 1344,
- "width" : 10240,
+ "width" : 11264,
"is-cluster-start" : true,
"log-cluster" : 0
}
@@ -270,15 +296,29 @@
"gravity" : "south",
"language" : "he",
"script" : "hebrew",
- "font" : "DejaVu Sans 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
"end-x-offset" : 0,
"glyphs" : [
{
- "glyph" : 3,
- "width" : 5120,
+ "glyph" : 1109,
+ "width" : 3072,
"is-cluster-start" : true,
"log-cluster" : 0
}
@@ -292,7 +332,21 @@
"gravity" : "south",
"language" : "el",
"script" : "greek",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"y-offset" : 0,
"start-x-offset" : 0,
diff --git a/tests/layouts/valid-9.layout b/tests/layouts/valid-9.layout
index e833808e..29e2fad9 100644
--- a/tests/layouts/valid-9.layout
+++ b/tests/layouts/valid-9.layout
@@ -28,8 +28,9 @@
"output" : {
"is-wrapped" : true,
"is-ellipsized" : false,
+ "unknown-glyphs" : 0,
"width" : 71392,
- "height" : 93184,
+ "height" : 94208,
"log-attrs" : [
{
"char-break" : true,
@@ -183,7 +184,21 @@
"gravity" : "south",
"language" : "en-us",
"script" : "latin",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
@@ -255,7 +270,18 @@
"gravity" : "south",
"language" : "he",
"script" : "hebrew",
- "font" : "DejaVu Sans 11",
+ "font" : {
+ "description" : "DejaVu Sans 11",
+ "checksum" : "69ccd07023a72ceb27a5e5c22f728627353b60a198170f5e58dd7014221abf01",
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
@@ -283,14 +309,14 @@
},
{
"glyph" : 1331,
- "width" : 17080,
+ "width" : 18104,
"x-offset" : 4444,
"is-cluster-start" : true,
"log-cluster" : 2
},
{
"glyph" : 1344,
- "width" : 19128,
+ "width" : 20152,
"x-offset" : 4444,
"is-cluster-start" : true,
"log-cluster" : 0
@@ -305,7 +331,21 @@
"gravity" : "south",
"language" : "he",
"script" : "hebrew",
- "font" : "DejaVu Sans 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
@@ -343,7 +383,21 @@
"gravity" : "south",
"language" : "el",
"script" : "greek",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
@@ -408,7 +462,21 @@
"gravity" : "south",
"language" : "el",
"script" : "greek",
- "font" : "Cantarell 11",
+ "font" : {
+ "description" : "Cantarell 11",
+ "checksum" : "5bcb6ee14ee9d210b2e91d643de1fe456e9d1aea770983fdb05951545efebbe2",
+ "variations" : {
+ "wght" : 0
+ },
+ "matrix" : [
+ 1.0,
+ -0.0,
+ -0.0,
+ 1.0,
+ 0.0,
+ 0.0
+ ]
+ },
"flags" : 0,
"extra-attributes" : [
{
diff --git a/tests/meson.build b/tests/meson.build
index 00741a14..ca53d103 100644
--- a/tests/meson.build
+++ b/tests/meson.build
@@ -44,18 +44,23 @@ if cairo_dep.found()
[ 'testiter', [ 'testiter.c' ], [ libpangocairo_dep ] ],
[ 'test-ellipsize', [ 'test-ellipsize.c' ], [ libpangocairo_dep ] ],
[ 'markup-parse', [ 'markup-parse.c' , 'test-common.c' ], [ libpangocairo_dep ] ],
- [ 'test-layout', [ 'test-layout.c', 'test-common.c' ], [ libpangocairo_dep ] ],
[ 'test-itemize', [ 'test-itemize.c', 'test-common.c' ], [ libpangocairo_dep ] ],
[ 'test-shape', [ 'test-shape.c', 'test-common.c' ], [ libpangocairo_dep ] ],
[ 'test-font', [ 'test-font.c' ], [ libpangocairo_dep ] ],
[ 'testattributes', [ 'testattributes.c', 'test-common.c' ], [ libpangocairo_dep ] ],
- [ 'testmisc', [ 'testmisc.c' ], [ libpangocairo_dep, libpangoft2_dep, glib_dep, harfbuzz_dep ] ],
[ 'cxx-test', [ 'cxx-test.cpp' ], [ libpangocairo_dep, gobject_dep, harfbuzz_dep ] ],
[ 'test-harfbuzz', [ 'test-harfbuzz.c' ], [ libpangocairo_dep, gobject_dep, harfbuzz_dep ] ],
[ 'test-break', [ 'test-break.c', 'test-common.c', 'validate-log-attrs.c' ], [libpangocairo_dep, glib_dep, harfbuzz_dep ] ],
[ 'testserialize', [ 'testserialize.c' ], [ libpangocairo_dep ] ],
]
+ if build_pangoft2
+ tests += [
+ [ 'testmisc', [ 'testmisc.c' ], [ libpangocairo_dep, libpangoft2_dep, glib_dep, harfbuzz_dep ] ],
+ [ 'test-layout', [ 'test-layout.c', 'test-common.c' ], [ libpangocairo_dep, libpangoft2_dep ] ],
+ ]
+ endif
+
if host_system != 'darwin'
tests += [
[ 'testrandom', [ 'testrandom.c' ], [ libpangocairo_dep, gio_dep ] ],
diff --git a/tests/test-layout.c b/tests/test-layout.c
index 0a4c8d3a..93a6118f 100644
--- a/tests/test-layout.c
+++ b/tests/test-layout.c
@@ -29,44 +29,22 @@
#include "config.h"
#include <pango/pangocairo.h>
+#include <pango/pangofc-fontmap.h>
#include "test-common.h"
-static PangoContext *context;
-
-static GBytes *
-test_bytes (GBytes *orig)
-{
- GBytes *bytes;
- GError *error = NULL;
- PangoLayout *layout;
-
- if (context == NULL)
- context = pango_font_map_create_context (pango_cairo_font_map_get_default ());
-
- layout = pango_layout_deserialize (context, orig, PANGO_LAYOUT_DESERIALIZE_CONTEXT, &error);
- g_assert_no_error (error);
-
- bytes = pango_layout_serialize (layout, PANGO_LAYOUT_SERIALIZE_CONTEXT | PANGO_LAYOUT_SERIALIZE_OUTPUT);
-
- g_object_unref (layout);
-
- return bytes;
-}
-
static void
test_layout (gconstpointer d)
{
const char *filename = d;
GError *error = NULL;
char *diff;
- PangoFontFamily **families;
- int n_families;
- gboolean found_cantarell;
GBytes *bytes;
char *contents;
gsize length;
GBytes *orig;
+ PangoContext *context;
+ PangoLayout *layout;
char *old_locale = g_strdup (setlocale (LC_ALL, NULL));
setlocale (LC_ALL, "en_US.UTF-8");
@@ -79,35 +57,18 @@ test_layout (gconstpointer d)
return;
}
- if (context == NULL)
- context = pango_font_map_create_context (pango_cairo_font_map_get_default ());
-
- found_cantarell = FALSE;
- pango_context_list_families (context, &families, &n_families);
- for (int i = 0; i < n_families; i++)
- {
- if (strcmp (pango_font_family_get_name (families[i]), "Cantarell") == 0)
- {
- found_cantarell = TRUE;
- break;
- }
- }
- g_free (families);
-
- if (!found_cantarell)
- {
- char *msg = g_strdup_printf ("Cantarell font not available, skipping layout %s", filename);
- g_test_skip (msg);
- g_free (msg);
- g_free (old_locale);
- return;
- }
-
g_file_get_contents (filename, &contents, &length, &error);
g_assert_no_error (error);
orig = g_bytes_new_take (contents, length);
- bytes = test_bytes (orig);
+ context = pango_font_map_create_context (pango_cairo_font_map_get_default ());
+ layout = pango_layout_deserialize (context, orig, PANGO_LAYOUT_DESERIALIZE_CONTEXT, &error);
+ g_assert_no_error (error);
+
+ bytes = pango_layout_serialize (layout, PANGO_LAYOUT_SERIALIZE_CONTEXT | PANGO_LAYOUT_SERIALIZE_OUTPUT);
+
+ g_object_unref (layout);
+ g_object_unref (context);
diff = diff_bytes (bytes, orig, &error);
g_assert_no_error (error);
@@ -136,15 +97,43 @@ test_layout (gconstpointer d)
g_free (diff);
}
+static void
+install_fonts (const char *dir)
+{
+ FcConfig *config;
+ PangoFontMap *map;
+ char *conf;
+
+ config = FcConfigCreate ();
+
+ conf = g_strdup_printf ("<?xml version=\"1.0\"?>\n"
+ "<!DOCTYPE fontconfig SYSTEM \"urn:fontconfig:fonts.dtd\">\n"
+ "<fontconfig>\n"
+ " <cachedir>%s/cache</cachedir>\n"
+ "</fontconfig>", dir);
+
+ if (!FcConfigParseAndLoadFromMemory (config, (const FcChar8 *) conf, TRUE))
+ g_error ("Failed to parse fontconfig configuration");
+
+ g_free (conf);
+
+ FcConfigAppFontAddDir (config, (const FcChar8 *) dir);
+ map = pango_cairo_font_map_get_default ();
+ pango_fc_font_map_set_config (PANGO_FC_FONT_MAP (map), config);
+ FcConfigDestroy (config);
+}
+
int
main (int argc, char *argv[])
{
GDir *dir;
GError *error = NULL;
+ char *opt_fonts = NULL;
const gchar *name;
char *path;
GOptionContext *option_context;
GOptionEntry entries[] = {
+ { "fonts", 0, 0, G_OPTION_ARG_FILENAME, &opt_fonts, "Fonts to use", "DIR" },
{ NULL, 0 },
};
@@ -160,6 +149,9 @@ main (int argc, char *argv[])
}
g_option_context_free (option_context);
+ if (opt_fonts)
+ install_fonts (opt_fonts);
+
/* allow to easily generate expected output for new test cases */
if (argc > 1 && argv[1][0] != '-')
{
@@ -168,11 +160,20 @@ main (int argc, char *argv[])
GError *error = NULL;
GBytes *orig;
GBytes *bytes;
+ PangoContext *context;
+ PangoLayout *layout;
g_file_get_contents (argv[1], &contents, &length, &error);
g_assert_no_error (error);
orig = g_bytes_new_take (contents, length);
- bytes = test_bytes (orig);
+ context = pango_font_map_create_context (pango_cairo_font_map_get_default ());
+ layout = pango_layout_deserialize (context, orig, PANGO_LAYOUT_DESERIALIZE_CONTEXT, &error);
+ g_assert_no_error (error);
+
+ bytes = pango_layout_serialize (layout, PANGO_LAYOUT_SERIALIZE_CONTEXT | PANGO_LAYOUT_SERIALIZE_OUTPUT);
+
+ g_object_unref (layout);
+ g_object_unref (context);
g_print ("%s", (const char *)g_bytes_get_data (bytes, NULL));
@@ -184,6 +185,13 @@ main (int argc, char *argv[])
g_test_init (&argc, &argv, NULL);
+ if (!opt_fonts)
+ {
+ path = g_test_build_filename (G_TEST_DIST, "fonts", NULL);
+ install_fonts (path);
+ g_free (path);
+ }
+
path = g_test_build_filename (G_TEST_DIST, "layouts", NULL);
dir = g_dir_open (path, 0, &error);
g_free (path);