[test] Add tests from text-rendering-tests repo
authorBehdad Esfahbod <behdad@behdad.org>
Wed, 10 Jan 2018 02:16:56 +0000 (03:16 +0100)
committerBehdad Esfahbod <behdad@behdad.org>
Wed, 10 Jan 2018 02:16:56 +0000 (03:16 +0100)
https://github.com/unicode-org/text-rendering-tests

77 files changed:
test/shaping/Makefile.am
test/shaping/data/text-rendering-tests/fonts/AdobeVFPrototype-Subset.otf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/FDArrayTest257.otf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/FDArrayTest65535.otf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/NotoSansBalinese-Regular.ttf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/NotoSansKannada-Regular.ttf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/NotoSerifKannada-Regular.ttf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/Selawik-README.md [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/Selawik-variable.ttf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/TestAVAR.ttf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/TestCMAP14.otf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/TestCMAPMacTurkish.ttf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/TestCVARGVAROne.ttf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/TestCVARGVARTwo.ttf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/TestGLYFOne.ttf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/TestGPOSFour.ttf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/TestGPOSOne.ttf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/TestGPOSThree.ttf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/TestGPOSTwo.otf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/TestGSUBOne.otf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/TestGVAREight.ttf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/TestGVARFour.ttf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/TestGVARNine.ttf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/TestGVAROne.ttf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/TestGVARThree.ttf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/TestGVARTwo.ttf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/TestHVAROne.otf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/TestHVARTwo.ttf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/TestKERNOne.otf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/TestMORXFour.ttf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/TestMORXOne.ttf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/TestMORXThree.ttf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/TestMORXTwo.ttf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/TestShapeAran.ttf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/TestShapeEthi.ttf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/fonts/Zycon.ttf [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/AVAR-1.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/CFF-1.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/CFF-2.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/CFF2-1.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/CMAP-1.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/CMAP-2.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/CMAP-3.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/CVAR-1.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/CVAR-2.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/GLYF-1.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/GPOS-1.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/GPOS-2.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/GPOS-3.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/GPOS-4.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/GPOS-5.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/GSUB-1.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/GSUB-2.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/GVAR-1.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/GVAR-2.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/GVAR-3.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/GVAR-4.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/GVAR-5.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/GVAR-6.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/GVAR-7.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/GVAR-8.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/GVAR-9.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/HVAR-1.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/HVAR-2.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/KERN-1.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/KERN-2.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/MORX-1.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/MORX-2.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/MORX-3.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/MORX-4.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/SHARAN-1.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/SHBALI-1.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/SHBALI-2.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/SHBALI-3.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/SHKNDA-1.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/SHKNDA-2.tests [new file with mode: 0644]
test/shaping/data/text-rendering-tests/tests/SHKNDA-3.tests [new file with mode: 0644]

index 116a7e44ec89f019afa965508ca43a602959963e..33b6b9e3299bfabcdb647e540ab7c0536b08ed83 100644 (file)
@@ -12,6 +12,7 @@ lib:
 
 EXTRA_DIST += \
        README.md \
+       CMakeLists.txt \
        hb-diff \
        hb-diff-colorize \
        hb-diff-filter-failures \
@@ -23,7 +24,7 @@ EXTRA_DIST += \
        run-tests.py \
        texts/in-house \
        data/in-house/fonts \
-       CMakeLists.txt \
+       data/text-rendering-tests/fonts \
        $(TESTS) \
        $(NULL)
 
@@ -77,6 +78,47 @@ TESTS = \
        data/in-house/tests/variations-rvrn.tests \
        data/in-house/tests/vertical.tests \
        data/in-house/tests/zero-width-marks.tests \
+       data/text-rendering-tests/tests/AVAR-1.tests \
+       data/text-rendering-tests/tests/CFF-1.tests \
+       data/text-rendering-tests/tests/CFF2-1.tests \
+       data/text-rendering-tests/tests/CFF-2.tests \
+       data/text-rendering-tests/tests/CMAP-1.tests \
+       data/text-rendering-tests/tests/CMAP-2.tests \
+       data/text-rendering-tests/tests/CMAP-3.tests \
+       data/text-rendering-tests/tests/CVAR-1.tests \
+       data/text-rendering-tests/tests/CVAR-2.tests \
+       data/text-rendering-tests/tests/GLYF-1.tests \
+       data/text-rendering-tests/tests/GPOS-1.tests \
+       data/text-rendering-tests/tests/GPOS-2.tests \
+       data/text-rendering-tests/tests/GPOS-3.tests \
+       data/text-rendering-tests/tests/GPOS-4.tests \
+       data/text-rendering-tests/tests/GPOS-5.tests \
+       data/text-rendering-tests/tests/GSUB-1.tests \
+       data/text-rendering-tests/tests/GSUB-2.tests \
+       data/text-rendering-tests/tests/GVAR-1.tests \
+       data/text-rendering-tests/tests/GVAR-2.tests \
+       data/text-rendering-tests/tests/GVAR-3.tests \
+       data/text-rendering-tests/tests/GVAR-4.tests \
+       data/text-rendering-tests/tests/GVAR-5.tests \
+       data/text-rendering-tests/tests/GVAR-6.tests \
+       data/text-rendering-tests/tests/GVAR-7.tests \
+       data/text-rendering-tests/tests/GVAR-8.tests \
+       data/text-rendering-tests/tests/GVAR-9.tests \
+       data/text-rendering-tests/tests/HVAR-1.tests \
+       data/text-rendering-tests/tests/HVAR-2.tests \
+       data/text-rendering-tests/tests/KERN-1.tests \
+       data/text-rendering-tests/tests/KERN-2.tests \
+       data/text-rendering-tests/tests/MORX-1.tests \
+       data/text-rendering-tests/tests/MORX-2.tests \
+       data/text-rendering-tests/tests/MORX-3.tests \
+       data/text-rendering-tests/tests/MORX-4.tests \
+       data/text-rendering-tests/tests/SHARAN-1.tests \
+       data/text-rendering-tests/tests/SHBALI-1.tests \
+       data/text-rendering-tests/tests/SHBALI-2.tests \
+       data/text-rendering-tests/tests/SHBALI-3.tests \
+       data/text-rendering-tests/tests/SHKNDA-1.tests \
+       data/text-rendering-tests/tests/SHKNDA-2.tests \
+       data/text-rendering-tests/tests/SHKNDA-3.tests \
        $(NULL)
 
 TEST_EXTENSIONS = .tests
diff --git a/test/shaping/data/text-rendering-tests/fonts/AdobeVFPrototype-Subset.otf b/test/shaping/data/text-rendering-tests/fonts/AdobeVFPrototype-Subset.otf
new file mode 100644 (file)
index 0000000..5cc7279
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/AdobeVFPrototype-Subset.otf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/FDArrayTest257.otf b/test/shaping/data/text-rendering-tests/fonts/FDArrayTest257.otf
new file mode 100644 (file)
index 0000000..a97b1f4
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/FDArrayTest257.otf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/FDArrayTest65535.otf b/test/shaping/data/text-rendering-tests/fonts/FDArrayTest65535.otf
new file mode 100644 (file)
index 0000000..835beb2
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/FDArrayTest65535.otf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/NotoSansBalinese-Regular.ttf b/test/shaping/data/text-rendering-tests/fonts/NotoSansBalinese-Regular.ttf
new file mode 100644 (file)
index 0000000..0b0f58f
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/NotoSansBalinese-Regular.ttf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/NotoSansKannada-Regular.ttf b/test/shaping/data/text-rendering-tests/fonts/NotoSansKannada-Regular.ttf
new file mode 100644 (file)
index 0000000..7366f37
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/NotoSansKannada-Regular.ttf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/NotoSerifKannada-Regular.ttf b/test/shaping/data/text-rendering-tests/fonts/NotoSerifKannada-Regular.ttf
new file mode 100644 (file)
index 0000000..30ca550
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/NotoSerifKannada-Regular.ttf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/Selawik-README.md b/test/shaping/data/text-rendering-tests/fonts/Selawik-README.md
new file mode 100644 (file)
index 0000000..9c5a80f
--- /dev/null
@@ -0,0 +1,60 @@
+# Overview
+This version of Selawik is a test case and demonstration of OpenType 1.8 Font Variations technology and tables. It also includes some handy debugging characters.
+
+This version of Selawik is intended for testing only, and is not recommended for shipping in applications, etc. For that, it is better to use the main branch of [Selawik](https://github.com/Microsoft/Selawik).
+
+# Features
+
+* Full TrueType hinting with VTT source tables included. See [Hinting](#hinting) for details.
+* All tables required for OpenType 1.8 are present (see [Table Status](#table-status), below). This includes cvar (varied CVTs), GPOS/GDEF (kerning varies), and avar (coordinate space warping to match Segoe UI).
+
+       Note: This version of Selawik does not include an MVAR because its vertical metrics do not change anywhere in the design space, thus there is no need for MVAR. A future release will contain an axis that varies vertical metrics as an excuse to have an MVAR.
+
+* Numerous interesting debugging glyphs (requires liga to be enabled). For example, \axis1 will show the current normalized wght coordinate. See [Debugging Glyphs](#debugging-glyphs) for details.
+* 1 axis: weight
+
+## Table status
+The following tables are currently supported:
+
+- [x] fvar
+- [x] gvar
+- [x] cvar
+- [x] avar (to match Segoe UI weights and metrics)
+- [x] STAT
+- [x] GPOS/GDEF - kerning
+- [x] HVAR
+
+Not yet complete: 
+
+- [ ] GSUB/GDEF - to change dollar signs in the bold
+- [ ] MVAR (future release)
+
+## To do
+* Add a second axis that varies vertical metrics so we need an MVAR table. This axis will not be one of the standard axes listed in the [OpenType 1.8 specification] (https://www.microsoft.com/typography/otspec/fvar.htm), so that it becomes an example of out to do a foundry-defined axis.
+* Add Feature Variations (GPOS/GDEF) to switch dollar sign glyphs across weights.
+
+
+# Debugging glyphs
+Thanks to Greg Hitchcock's TrueType coding wizardry, this font includes many glyphs that are helpful for debugging implementations of variable fonts. It has a number of substitutions implemented as liga features:
+
+Feature | Description
+-------- | ----------
+\axis1 | Shows the normalized coordinate on the wght axis for the currently selected instance (e.g. 1.0 for bold, -1.0 for light, or something in between).
+\axis2 | Shows 0 because this font doesn't yet have a second axis.
+\axis1hex | Same as \axis1 but in hex.
+\axis2hex | Same as \axis2 but in hex.
+\pointsize | Shows the point size passed to the TrueType rasterizer. Note that depending on how the application calls the rasterizer, this may not be what you expect - e.g. on Safari on MacOS, this is always 1024.
+\ppem | Shows the pixels per em passed to the TrueType rastersize. Note that depending on how the application calls the rasterizer, this may not be what you expect - e.g. on Safari on MacOS, this is always 1024.
+\ttversion | Shows the version of the TrueType rasterizer.
+\ttmode | Shows the current TrueType rasterizer mode flags.
+\boldtest | A glyph to help you detect artificial emboldening. The glyph has a vertical bar and a circle. The vertical bar's weight varies with the weight of the rest of the font: it gets bolder at bolder weights, lighter at lighter weights. The circle changes weight (and size) in opposition to the rest of the font: lighter at bold weights and vice versa. Thus, if you use this character and see both the circle and bar look bold, you're not looking at a true bold instance, but an algorithmically emboldened one.
+\family | Shows the family name of the font.
+\version | Shows the version of this font
+
+
+
+
+# Hinting
+This version of Selawik is primarily hinted with the light Latin hinting style Microsoft recommends for variable Latin fonts. The VTT Light Latin autohinter was used to create the first round of hints, which were then reviewed and touched up. 
+
+This hinting style only uses CVTs for vertical metrics anchors (ascender, descender, cap height, x-height, and baseline). While this makes for an easy job hinting a Latin font, it makes for a poor test case because Selawik doesn't vary vertical metrics with weight, thus doesn't vary CVTs, thus doesn't need a cvar. So, to make it more interesting, we added CVT-based stem hints to the lowercase only. This provided the need to vary CVTs and thus require a cvar. Note that this was only done for testing purposes. For variable fonts, Microsoft recommends the light hinting style using the `ResYDist()` command instead of a CVT-based stem hint. 
diff --git a/test/shaping/data/text-rendering-tests/fonts/Selawik-variable.ttf b/test/shaping/data/text-rendering-tests/fonts/Selawik-variable.ttf
new file mode 100644 (file)
index 0000000..ff347e0
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/Selawik-variable.ttf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/TestAVAR.ttf b/test/shaping/data/text-rendering-tests/fonts/TestAVAR.ttf
new file mode 100644 (file)
index 0000000..5df9867
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/TestAVAR.ttf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/TestCMAP14.otf b/test/shaping/data/text-rendering-tests/fonts/TestCMAP14.otf
new file mode 100644 (file)
index 0000000..da485d9
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/TestCMAP14.otf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/TestCMAPMacTurkish.ttf b/test/shaping/data/text-rendering-tests/fonts/TestCMAPMacTurkish.ttf
new file mode 100644 (file)
index 0000000..4f89b09
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/TestCMAPMacTurkish.ttf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/TestCVARGVAROne.ttf b/test/shaping/data/text-rendering-tests/fonts/TestCVARGVAROne.ttf
new file mode 100644 (file)
index 0000000..84cd1ea
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/TestCVARGVAROne.ttf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/TestCVARGVARTwo.ttf b/test/shaping/data/text-rendering-tests/fonts/TestCVARGVARTwo.ttf
new file mode 100644 (file)
index 0000000..f20918a
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/TestCVARGVARTwo.ttf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/TestGLYFOne.ttf b/test/shaping/data/text-rendering-tests/fonts/TestGLYFOne.ttf
new file mode 100644 (file)
index 0000000..8f634d9
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/TestGLYFOne.ttf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/TestGPOSFour.ttf b/test/shaping/data/text-rendering-tests/fonts/TestGPOSFour.ttf
new file mode 100644 (file)
index 0000000..bd929b5
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/TestGPOSFour.ttf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/TestGPOSOne.ttf b/test/shaping/data/text-rendering-tests/fonts/TestGPOSOne.ttf
new file mode 100644 (file)
index 0000000..ea74dd0
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/TestGPOSOne.ttf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/TestGPOSThree.ttf b/test/shaping/data/text-rendering-tests/fonts/TestGPOSThree.ttf
new file mode 100644 (file)
index 0000000..158a77a
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/TestGPOSThree.ttf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/TestGPOSTwo.otf b/test/shaping/data/text-rendering-tests/fonts/TestGPOSTwo.otf
new file mode 100644 (file)
index 0000000..76d04eb
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/TestGPOSTwo.otf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/TestGSUBOne.otf b/test/shaping/data/text-rendering-tests/fonts/TestGSUBOne.otf
new file mode 100644 (file)
index 0000000..9be638f
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/TestGSUBOne.otf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/TestGVAREight.ttf b/test/shaping/data/text-rendering-tests/fonts/TestGVAREight.ttf
new file mode 100644 (file)
index 0000000..271dc4b
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/TestGVAREight.ttf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/TestGVARFour.ttf b/test/shaping/data/text-rendering-tests/fonts/TestGVARFour.ttf
new file mode 100644 (file)
index 0000000..3524f37
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/TestGVARFour.ttf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/TestGVARNine.ttf b/test/shaping/data/text-rendering-tests/fonts/TestGVARNine.ttf
new file mode 100644 (file)
index 0000000..0ecd326
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/TestGVARNine.ttf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/TestGVAROne.ttf b/test/shaping/data/text-rendering-tests/fonts/TestGVAROne.ttf
new file mode 100644 (file)
index 0000000..e155d8f
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/TestGVAROne.ttf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/TestGVARThree.ttf b/test/shaping/data/text-rendering-tests/fonts/TestGVARThree.ttf
new file mode 100644 (file)
index 0000000..ac2d7eb
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/TestGVARThree.ttf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/TestGVARTwo.ttf b/test/shaping/data/text-rendering-tests/fonts/TestGVARTwo.ttf
new file mode 100644 (file)
index 0000000..bd144c6
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/TestGVARTwo.ttf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/TestHVAROne.otf b/test/shaping/data/text-rendering-tests/fonts/TestHVAROne.otf
new file mode 100644 (file)
index 0000000..a87395c
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/TestHVAROne.otf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/TestHVARTwo.ttf b/test/shaping/data/text-rendering-tests/fonts/TestHVARTwo.ttf
new file mode 100644 (file)
index 0000000..2e81f94
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/TestHVARTwo.ttf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/TestKERNOne.otf b/test/shaping/data/text-rendering-tests/fonts/TestKERNOne.otf
new file mode 100644 (file)
index 0000000..35369d1
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/TestKERNOne.otf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXFour.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXFour.ttf
new file mode 100644 (file)
index 0000000..0028972
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/TestMORXFour.ttf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXOne.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXOne.ttf
new file mode 100644 (file)
index 0000000..88b8dec
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/TestMORXOne.ttf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXThree.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXThree.ttf
new file mode 100644 (file)
index 0000000..56984f2
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/TestMORXThree.ttf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXTwo.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXTwo.ttf
new file mode 100644 (file)
index 0000000..39f2db5
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/TestMORXTwo.ttf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/TestShapeAran.ttf b/test/shaping/data/text-rendering-tests/fonts/TestShapeAran.ttf
new file mode 100644 (file)
index 0000000..c73f569
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/TestShapeAran.ttf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/TestShapeEthi.ttf b/test/shaping/data/text-rendering-tests/fonts/TestShapeEthi.ttf
new file mode 100644 (file)
index 0000000..391dddd
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/TestShapeEthi.ttf differ
diff --git a/test/shaping/data/text-rendering-tests/fonts/Zycon.ttf b/test/shaping/data/text-rendering-tests/fonts/Zycon.ttf
new file mode 100644 (file)
index 0000000..3a6761b
Binary files /dev/null and b/test/shaping/data/text-rendering-tests/fonts/Zycon.ttf differ
diff --git a/test/shaping/data/text-rendering-tests/tests/AVAR-1.tests b/test/shaping/data/text-rendering-tests/tests/AVAR-1.tests
new file mode 100644 (file)
index 0000000..3da6dc5
--- /dev/null
@@ -0,0 +1,17 @@
+../fonts/TestAVAR.ttf:--font-size=1000 --ned --font-funcs=ft:U+2A01:[gid1]
+../fonts/TestAVAR.ttf:--font-size=1000 --ned --font-funcs=ft:U+2A01:[gid1]
+../fonts/TestAVAR.ttf:--font-size=1000 --ned --font-funcs=ft:U+2A01:[gid1]
+../fonts/TestAVAR.ttf:--font-size=1000 --ned --font-funcs=ft:U+2A01:[gid1]
+../fonts/TestAVAR.ttf:--font-size=1000 --ned --font-funcs=ft:U+2A01:[gid1]
+../fonts/TestAVAR.ttf:--font-size=1000 --ned --font-funcs=ft:U+2A01:[gid1]
+../fonts/TestAVAR.ttf:--font-size=1000 --ned --font-funcs=ft:U+2A01:[gid1]
+../fonts/TestAVAR.ttf:--font-size=1000 --ned --font-funcs=ft:U+2A01:[gid1]
+../fonts/TestAVAR.ttf:--font-size=1000 --ned --font-funcs=ft:U+2A01:[gid1]
+../fonts/TestAVAR.ttf:--font-size=1000 --ned --font-funcs=ft:U+2A01:[gid1]
+../fonts/TestAVAR.ttf:--font-size=1000 --ned --font-funcs=ft:U+2A01:[gid1]
+../fonts/TestAVAR.ttf:--font-size=1000 --ned --font-funcs=ft:U+2A01:[gid1]
+../fonts/TestAVAR.ttf:--font-size=1000 --ned --font-funcs=ft:U+2A01:[gid1]
+../fonts/TestAVAR.ttf:--font-size=1000 --ned --font-funcs=ft:U+2A01:[gid1]
+../fonts/TestAVAR.ttf:--font-size=1000 --ned --font-funcs=ft:U+2A01:[gid1]
+../fonts/TestAVAR.ttf:--font-size=1000 --ned --font-funcs=ft:U+2A01:[gid1]
+../fonts/TestAVAR.ttf:--font-size=1000 --ned --font-funcs=ft:U+2A01:[gid1]
diff --git a/test/shaping/data/text-rendering-tests/tests/CFF-1.tests b/test/shaping/data/text-rendering-tests/tests/CFF-1.tests
new file mode 100644 (file)
index 0000000..7ef9b6d
--- /dev/null
@@ -0,0 +1,13 @@
+../fonts/FDArrayTest257.otf:--font-size=1000 --ned --font-funcs=ft:U+0041:[gid66]
+../fonts/FDArrayTest257.otf:--font-size=1000 --ned --font-funcs=ft:U+211D:[gid30]
+../fonts/FDArrayTest257.otf:--font-size=1000 --ned --font-funcs=ft:U+24EA:[gid235]
+../fonts/FDArrayTest257.otf:--font-size=1000 --ned --font-funcs=ft:U+2460:[gid97]
+../fonts/FDArrayTest257.otf:--font-size=1000 --ned --font-funcs=ft:U+2461:[gid98]
+../fonts/FDArrayTest257.otf:--font-size=1000 --ned --font-funcs=ft:U+4EFF:[gid256]
+../fonts/FDArrayTest257.otf:--font-size=1000 --ned --font-funcs=ft:U+FF21:[gid34]
+../fonts/FDArrayTest257.otf:--font-size=1000 --ned --font-funcs=ft:U+10133:[gid52]
+../fonts/FDArrayTest257.otf:--font-size=1000 --ned --font-funcs=ft:U+1D4D0:[gid209]
+../fonts/FDArrayTest257.otf:--font-size=1000 --ned --font-funcs=ft:U+1F33A:[gid59]
+../fonts/FDArrayTest257.otf:--font-size=1000 --ned --font-funcs=ft:U+1F33B:[gid60]
+../fonts/FDArrayTest257.otf:--font-size=1000 --ned --font-funcs=ft:U+1F4A7:[gid168]
+../fonts/FDArrayTest257.otf:--font-size=1000 --ned --font-funcs=ft:U+1F95D:[gid94]
diff --git a/test/shaping/data/text-rendering-tests/tests/CFF-2.tests b/test/shaping/data/text-rendering-tests/tests/CFF-2.tests
new file mode 100644 (file)
index 0000000..e25040b
--- /dev/null
@@ -0,0 +1,13 @@
+../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --font-funcs=ft:U+0041:[gid66]
+../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --font-funcs=ft:U+211D:[gid8478]
+../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --font-funcs=ft:U+24EA:[gid9451]
+../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --font-funcs=ft:U+2460:[gid9313]
+../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --font-funcs=ft:U+2461:[gid9314]
+../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --font-funcs=ft:U+4EFF:[gid20224]
+../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --font-funcs=ft:U+FF21:[gid65314]
+../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --font-funcs=ft:U+10133:[gid308]
+../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --font-funcs=ft:U+1D4D0:[gid54481]
+../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --font-funcs=ft:U+1F33A:[gid62267]
+../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --font-funcs=ft:U+1F33B:[gid62268]
+../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --font-funcs=ft:U+1F4A7:[gid62632]
+../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --font-funcs=ft:U+1F95D:[gid63838]
diff --git a/test/shaping/data/text-rendering-tests/tests/CFF2-1.tests b/test/shaping/data/text-rendering-tests/tests/CFF2-1.tests
new file mode 100644 (file)
index 0000000..d2c9396
--- /dev/null
@@ -0,0 +1,9 @@
+../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --font-funcs=ft:U+0024:[dollar]
+../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --font-funcs=ft:U+0024:[dollar]
+../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --font-funcs=ft:U+0024:[dollar]
+../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --font-funcs=ft:U+0024:[dollar]
+../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --font-funcs=ft:U+0024:[dollar]
+../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --font-funcs=ft:U+0024:[dollar]
+../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --font-funcs=ft:U+0024:[dollar]
+../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --font-funcs=ft:U+0024:[dollar.nostroke]
+../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --font-funcs=ft:U+0024:[dollar.nostroke]
diff --git a/test/shaping/data/text-rendering-tests/tests/CMAP-1.tests b/test/shaping/data/text-rendering-tests/tests/CMAP-1.tests
new file mode 100644 (file)
index 0000000..309b2d6
--- /dev/null
@@ -0,0 +1,4 @@
+../fonts/TestCMAP14.otf:--font-size=1000 --ned --font-funcs=ft:U+82A6:[uni82A6_uE0100]
+../fonts/TestCMAP14.otf:--font-size=1000 --ned --font-funcs=ft:U+82A6,U+E0100:[uni82A6_uE0100]
+../fonts/TestCMAP14.otf:--font-size=1000 --ned --font-funcs=ft:U+82A6,U+E0101:[uni82A6_uE0101]
+../fonts/TestCMAP14.otf:--font-size=1000 --ned --font-funcs=ft:U+82A6,U+E0102:[uni82A6_uE0100]
diff --git a/test/shaping/data/text-rendering-tests/tests/CMAP-2.tests b/test/shaping/data/text-rendering-tests/tests/CMAP-2.tests
new file mode 100644 (file)
index 0000000..ef31563
--- /dev/null
@@ -0,0 +1,2 @@
+../fonts/TestCMAP14.otf:--font-size=1000 --ned --font-funcs=ft:U+2269:[uni2269]
+../fonts/TestCMAP14.otf:--font-size=1000 --ned --font-funcs=ft:U+2269,U+FE00:[uni2269FE00]
diff --git a/test/shaping/data/text-rendering-tests/tests/CMAP-3.tests b/test/shaping/data/text-rendering-tests/tests/CMAP-3.tests
new file mode 100644 (file)
index 0000000..9a3525b
--- /dev/null
@@ -0,0 +1,20 @@
+../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --font-funcs=ft:U+201C:[gid200]
+../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041:[gid34]
+../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --font-funcs=ft:U+0042:[gid35]
+../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --font-funcs=ft:U+00C7:[gid126]
+../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --font-funcs=ft:U+011E:[gid176]
+../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --font-funcs=ft:U+0049:[gid42]
+../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --font-funcs=ft:U+0130:[gid178]
+../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --font-funcs=ft:U+00D6:[gid140]
+../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --font-funcs=ft:U+015E:[gid181]
+../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --font-funcs=ft:U+00DC:[gid145]
+../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --font-funcs=ft:U+201D:[gid201]
+../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --font-funcs=ft:U+0061:[gid66]
+../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --font-funcs=ft:U+0062:[gid67]
+../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --font-funcs=ft:U+00E7:[gid154]
+../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --font-funcs=ft:U+011F:[gid177]
+../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --font-funcs=ft:U+0131:[gid222]
+../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --font-funcs=ft:U+0069:[gid74]
+../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --font-funcs=ft:U+00F6:[gid168]
+../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --font-funcs=ft:U+015F:[gid182]
+../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --font-funcs=ft:U+00FC:[gid174]
diff --git a/test/shaping/data/text-rendering-tests/tests/CVAR-1.tests b/test/shaping/data/text-rendering-tests/tests/CVAR-1.tests
new file mode 100644 (file)
index 0000000..70cb738
--- /dev/null
@@ -0,0 +1,3 @@
+../fonts/TestCVARGVARTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+0068,U+006F,U+006E:[uni0068|uni006F@595,0|uni006E@1126,0]
+../fonts/TestCVARGVARTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+0068,U+006F,U+006E:[uni0068|uni006F@635,0|uni006E@1212,0]
+../fonts/TestCVARGVARTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+0068,U+006F,U+006E:[uni0068|uni006F@691,0|uni006E@1331,0]
diff --git a/test/shaping/data/text-rendering-tests/tests/CVAR-2.tests b/test/shaping/data/text-rendering-tests/tests/CVAR-2.tests
new file mode 100644 (file)
index 0000000..51de920
--- /dev/null
@@ -0,0 +1,3 @@
+../fonts/TestCVARGVAROne.ttf:--font-size=1000 --ned --font-funcs=ft:U+0068,U+006F,U+006E:[uni0068|uni006F@595,0|uni006E@1126,0]
+../fonts/TestCVARGVAROne.ttf:--font-size=1000 --ned --font-funcs=ft:U+0068,U+006F,U+006E:[uni0068|uni006F@635,0|uni006E@1212,0]
+../fonts/TestCVARGVAROne.ttf:--font-size=1000 --ned --font-funcs=ft:U+0068,U+006F,U+006E:[uni0068|uni006F@691,0|uni006E@1331,0]
diff --git a/test/shaping/data/text-rendering-tests/tests/GLYF-1.tests b/test/shaping/data/text-rendering-tests/tests/GLYF-1.tests
new file mode 100644 (file)
index 0000000..90adae9
--- /dev/null
@@ -0,0 +1 @@
+../fonts/TestGLYFOne.ttf:--font-size=1000 --ned --font-funcs=ft:U+0123:[gcommaabove]
diff --git a/test/shaping/data/text-rendering-tests/tests/GPOS-1.tests b/test/shaping/data/text-rendering-tests/tests/GPOS-1.tests
new file mode 100644 (file)
index 0000000..96f84fe
--- /dev/null
@@ -0,0 +1,19 @@
+../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --font-funcs=ft:U+0104,U+004A:[Aogonek|J@732,0]
+../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --font-funcs=ft:U+0104,U+0067:[Aogonek|g@692,0]
+../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --font-funcs=ft:U+0104,U+0123:[Aogonek|gcommaabove@692,0]
+../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --font-funcs=ft:U+0104,U+006A:[Aogonek|j@752,0]
+../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --font-funcs=ft:U+0104,U+0237:[Aogonek|dotlessj@752,0]
+../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --font-funcs=ft:U+0051,U+0237:[Q|dotlessj@734,0]
+../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --font-funcs=ft:U+0105,U+006A:[aogonek|j@588,0]
+../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --font-funcs=ft:U+0105,U+0237:[aogonek|dotlessj@588,0]
+../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --font-funcs=ft:U+0067,U+0237:[g|dotlessj@563,0]
+../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --font-funcs=ft:U+0123,U+0237:[gcommaabove|dotlessj@563,0]
+../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --font-funcs=ft:U+0131,U+0237:[dotlessi|dotlessj@334,0]
+../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --font-funcs=ft:U+0173,U+0237:[uogonek|dotlessj@656,0]
+../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --font-funcs=ft:U+0076,U+0237:[v|dotlessj@587,0]
+../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --font-funcs=ft:U+0056,U+0061:[V|a@594,0]
+../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --font-funcs=ft:U+0056,U+00E1:[V|aacute@594,0]
+../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --font-funcs=ft:U+0056,U+0105:[V|aogonek@594,0]
+../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --font-funcs=ft:U+0056,U+0066:[V|f@634,0]
+../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --font-funcs=ft:U+0056,U+FB02:[V|fl@634,0]
+../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --font-funcs=ft:U+0056,U+002E:[V|period@504,0]
diff --git a/test/shaping/data/text-rendering-tests/tests/GPOS-2.tests b/test/shaping/data/text-rendering-tests/tests/GPOS-2.tests
new file mode 100644 (file)
index 0000000..cc31a07
--- /dev/null
@@ -0,0 +1,3 @@
+../fonts/TestGPOSTwo.otf:--font-size=1000 --ned --font-funcs=ft:U+25EF:[uni25EF]
+../fonts/TestGPOSTwo.otf:--font-size=1000 --ned --font-funcs=ft:U+263C:[sun]
+../fonts/TestGPOSTwo.otf:--font-size=1000 --ned --font-funcs=ft:U+25EF,U+263C:[uni25EF|sun]
diff --git a/test/shaping/data/text-rendering-tests/tests/GPOS-3.tests b/test/shaping/data/text-rendering-tests/tests/GPOS-3.tests
new file mode 100644 (file)
index 0000000..b1c3be7
--- /dev/null
@@ -0,0 +1,4 @@
+../fonts/TestShapeEthi.ttf:--font-size=1000 --ned --font-funcs=ft:U+1208:[uni1208]
+../fonts/TestShapeEthi.ttf:--font-size=1000 --ned --font-funcs=ft:U+1208,U+135E:[uni1208|uni135E@303,0]
+../fonts/TestShapeEthi.ttf:--font-size=1000 --ned --font-funcs=ft:U+1208,U+135F:[uni1208|uni135F@303,0]
+../fonts/TestShapeEthi.ttf:--font-size=1000 --ned --font-funcs=ft:U+1208,U+135D:[uni1208|uni135D@303,0]
diff --git a/test/shaping/data/text-rendering-tests/tests/GPOS-4.tests b/test/shaping/data/text-rendering-tests/tests/GPOS-4.tests
new file mode 100644 (file)
index 0000000..7a68b5a
--- /dev/null
@@ -0,0 +1,4 @@
+../fonts/TestGPOSThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+0075,U+0308,U+0301:[u|uni0308@529,-31|acutecomb@537,138]
+../fonts/TestGPOSThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+0075,U+0308,U+0304:[u|uni0308@529,-31|uni0304@526,138]
+../fonts/TestGPOSThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+0075,U+0308,U+0308:[u|uni0308@529,-31|uni0308@529,138]
+../fonts/TestGPOSThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+0075,U+0308,U+0308,U+0308:[u|uni0308@529,-31|uni0308@529,138|uni0308@529,307]
diff --git a/test/shaping/data/text-rendering-tests/tests/GPOS-5.tests b/test/shaping/data/text-rendering-tests/tests/GPOS-5.tests
new file mode 100644 (file)
index 0000000..00bfd58
--- /dev/null
@@ -0,0 +1,5 @@
+../fonts/TestGPOSFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+0634,U+0652:[uni0652@663,144|uni0634]
+../fonts/TestGPOSFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+0634,U+0652:[uni0652@680,165|uni0634]
+../fonts/TestGPOSFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+0634,U+0652:[uni0652@730,246|uni0634]
+../fonts/TestGPOSFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+0634,U+0652:[uni0652@750,282|uni0634]
+../fonts/TestGPOSFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+0634,U+0652:[uni0652@784,351|uni0634]
diff --git a/test/shaping/data/text-rendering-tests/tests/GSUB-1.tests b/test/shaping/data/text-rendering-tests/tests/GSUB-1.tests
new file mode 100644 (file)
index 0000000..591a9e5
--- /dev/null
@@ -0,0 +1 @@
+../fonts/TestGSUBOne.otf:--font-size=1000 --ned --font-funcs=ft:U+0061,U+0020,U+0061:[a.alt|space@500,0|a@1000,0]
diff --git a/test/shaping/data/text-rendering-tests/tests/GSUB-2.tests b/test/shaping/data/text-rendering-tests/tests/GSUB-2.tests
new file mode 100644 (file)
index 0000000..601b483
--- /dev/null
@@ -0,0 +1,11 @@
+../fonts/TestShapeEthi.ttf:--font-size=1000 --ned --font-funcs=ft:U+1373:[uni1373]
+../fonts/TestShapeEthi.ttf:--font-size=1000 --ned --font-funcs=ft:U+136B:[uni136B]
+../fonts/TestShapeEthi.ttf:--font-size=1000 --ned --font-funcs=ft:U+1375:[uni1375]
+../fonts/TestShapeEthi.ttf:--font-size=1000 --ned --font-funcs=ft:U+136D:[uni136D]
+../fonts/TestShapeEthi.ttf:--font-size=1000 --ned --font-funcs=ft:U+1373,U+136B:[uni1373.init|uni136B.fina@621,0]
+../fonts/TestShapeEthi.ttf:--font-size=1000 --ned --font-funcs=ft:U+1375,U+136D:[uni1375.init|uni136D.fina@662,0]
+../fonts/TestShapeEthi.ttf:--font-size=1000 --ned --font-funcs=ft:U+137B:[uni137B]
+../fonts/TestShapeEthi.ttf:--font-size=1000 --ned --font-funcs=ft:U+1373,U+136B,U+137B:[uni1373.init|uni136B.medi@621,0|uni137B.fina@1102,0]
+../fonts/TestShapeEthi.ttf:--font-size=1000 --ned --font-funcs=ft:U+1373,U+136B,U+137B,U+1373,U+136B:[uni1373.init|uni136B.medi@621,0|uni137B.medi@1102,0|uni1373.medi@1489,0|uni136B.fina@2110,0]
+../fonts/TestShapeEthi.ttf:--font-size=1000 --ned --font-funcs=ft:U+1373,U+136B,U+137B,U+1375,U+136D:[uni1373.init|uni136B.medi@621,0|uni137B.medi@1102,0|uni1375.medi@1489,0|uni136D.fina@2157,0]
+../fonts/TestShapeEthi.ttf:--font-size=1000 --ned --font-funcs=ft:U+1375,U+136D,U+137B,U+1373,U+136B:[uni1375.init|uni136D.medi@662,0|uni137B.medi@1203,0|uni1373.medi@1590,0|uni136B.fina@2211,0]
diff --git a/test/shaping/data/text-rendering-tests/tests/GVAR-1.tests b/test/shaping/data/text-rendering-tests/tests/GVAR-1.tests
new file mode 100644 (file)
index 0000000..d70f229
--- /dev/null
@@ -0,0 +1,9 @@
+../fonts/TestGVAROne.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
+../fonts/TestGVAROne.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
+../fonts/TestGVAROne.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
+../fonts/TestGVAROne.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
+../fonts/TestGVAROne.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
+../fonts/TestGVAROne.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
+../fonts/TestGVAROne.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
+../fonts/TestGVAROne.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
+../fonts/TestGVAROne.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
diff --git a/test/shaping/data/text-rendering-tests/tests/GVAR-2.tests b/test/shaping/data/text-rendering-tests/tests/GVAR-2.tests
new file mode 100644 (file)
index 0000000..fe09777
--- /dev/null
@@ -0,0 +1,9 @@
+../fonts/TestGVARTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
+../fonts/TestGVARTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
+../fonts/TestGVARTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
+../fonts/TestGVARTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
+../fonts/TestGVARTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
+../fonts/TestGVARTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
+../fonts/TestGVARTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
+../fonts/TestGVARTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
+../fonts/TestGVARTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
diff --git a/test/shaping/data/text-rendering-tests/tests/GVAR-3.tests b/test/shaping/data/text-rendering-tests/tests/GVAR-3.tests
new file mode 100644 (file)
index 0000000..700c735
--- /dev/null
@@ -0,0 +1,9 @@
+../fonts/TestGVARThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
+../fonts/TestGVARThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
+../fonts/TestGVARThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
+../fonts/TestGVARThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
+../fonts/TestGVARThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
+../fonts/TestGVARThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
+../fonts/TestGVARThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
+../fonts/TestGVARThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
+../fonts/TestGVARThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+5F4C:[gid2]
diff --git a/test/shaping/data/text-rendering-tests/tests/GVAR-4.tests b/test/shaping/data/text-rendering-tests/tests/GVAR-4.tests
new file mode 100644 (file)
index 0000000..f51a95c
--- /dev/null
@@ -0,0 +1,11 @@
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F98E:[gid5]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F98E:[gid5]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F98E:[gid5]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F98E:[gid5]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F98E:[gid5]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F98E:[gid5]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F98E:[gid5]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F98E:[gid5]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F98E:[gid5]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F98E:[gid5]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F98E:[gid5]
diff --git a/test/shaping/data/text-rendering-tests/tests/GVAR-5.tests b/test/shaping/data/text-rendering-tests/tests/GVAR-5.tests
new file mode 100644 (file)
index 0000000..7328e73
--- /dev/null
@@ -0,0 +1,11 @@
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F31D:[gid15]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F31D:[gid15]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F31D:[gid15]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F31D:[gid15]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F31D:[gid15]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F31D:[gid15]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F31D:[gid15]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F31D:[gid15]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F31D:[gid15]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F31D:[gid15]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F31D:[gid15]
diff --git a/test/shaping/data/text-rendering-tests/tests/GVAR-6.tests b/test/shaping/data/text-rendering-tests/tests/GVAR-6.tests
new file mode 100644 (file)
index 0000000..c632d46
--- /dev/null
@@ -0,0 +1,11 @@
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F422:[gid12]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F422:[gid12]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F422:[gid12]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F422:[gid12]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F422:[gid12]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F422:[gid12]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F422:[gid12]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F422:[gid12]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F422:[gid12]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F422:[gid12]
+../fonts/Zycon.ttf:--font-size=1000 --ned --font-funcs=ft:U+1F422:[gid12]
diff --git a/test/shaping/data/text-rendering-tests/tests/GVAR-7.tests b/test/shaping/data/text-rendering-tests/tests/GVAR-7.tests
new file mode 100644 (file)
index 0000000..bc06d56
--- /dev/null
@@ -0,0 +1,7 @@
+../fonts/TestGVARFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+004F,U+0049,U+004F:[uni004F|uni0049@706,0|uni004F@1072,0]
+../fonts/TestGVARFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+004F,U+0049,U+004F:[uni004F|uni0049@707,0|uni004F@1074,0]
+../fonts/TestGVARFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+004F,U+0049,U+004F:[uni004F|uni0049@707,0|uni004F@1075,0]
+../fonts/TestGVARFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+004F,U+0049,U+004F:[uni004F|uni0049@707,0|uni004F@1076,0]
+../fonts/TestGVARFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+004F,U+0049,U+004F:[uni004F|uni0049@707,0|uni004F@1077,0]
+../fonts/TestGVARFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+004F,U+0049,U+004F:[uni004F|uni0049@707,0|uni004F@1078,0]
+../fonts/TestGVARFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+004F,U+0049,U+004F:[uni004F|uni0049@706,0|uni004F@1079,0]
diff --git a/test/shaping/data/text-rendering-tests/tests/GVAR-8.tests b/test/shaping/data/text-rendering-tests/tests/GVAR-8.tests
new file mode 100644 (file)
index 0000000..e5bd257
--- /dev/null
@@ -0,0 +1,6 @@
+../fonts/TestGVAREight.ttf:--font-size=1000 --ned --font-funcs=ft:U+0048:[H]
+../fonts/TestGVAREight.ttf:--font-size=1000 --ned --font-funcs=ft:U+0048:[H]
+../fonts/TestGVAREight.ttf:--font-size=1000 --ned --font-funcs=ft:U+0048:[H]
+../fonts/TestGVAREight.ttf:--font-size=1000 --ned --font-funcs=ft:U+0048:[H]
+../fonts/TestGVAREight.ttf:--font-size=1000 --ned --font-funcs=ft:U+0048:[H]
+../fonts/TestGVAREight.ttf:--font-size=1000 --ned --font-funcs=ft:U+0048:[H]
diff --git a/test/shaping/data/text-rendering-tests/tests/GVAR-9.tests b/test/shaping/data/text-rendering-tests/tests/GVAR-9.tests
new file mode 100644 (file)
index 0000000..e4f2d75
--- /dev/null
@@ -0,0 +1,10 @@
+../fonts/TestGVARNine.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041:[A]
+../fonts/TestGVARNine.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041:[A]
+../fonts/TestGVARNine.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041:[A]
+../fonts/TestGVARNine.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041:[A]
+../fonts/TestGVARNine.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041:[A]
+../fonts/TestGVARNine.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041:[A]
+../fonts/TestGVARNine.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041:[A]
+../fonts/TestGVARNine.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041:[A]
+../fonts/TestGVARNine.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041:[A]
+../fonts/TestGVARNine.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041:[A]
diff --git a/test/shaping/data/text-rendering-tests/tests/HVAR-1.tests b/test/shaping/data/text-rendering-tests/tests/HVAR-1.tests
new file mode 100644 (file)
index 0000000..d57e9a3
--- /dev/null
@@ -0,0 +1,6 @@
+../fonts/TestHVAROne.otf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042,U+0043:[A|B@520,0|C@1094,0]
+../fonts/TestHVAROne.otf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042,U+0043:[A|B@533,0|C@1115,0]
+../fonts/TestHVAROne.otf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042,U+0043:[A|B@546,0|C@1135,0]
+../fonts/TestHVAROne.otf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042,U+0043:[A|B@558,0|C@1155,0]
+../fonts/TestHVAROne.otf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042,U+0043:[A|B@571,0|C@1175,0]
+../fonts/TestHVAROne.otf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042,U+0043:[A|B@584,0|C@1196,0]
diff --git a/test/shaping/data/text-rendering-tests/tests/HVAR-2.tests b/test/shaping/data/text-rendering-tests/tests/HVAR-2.tests
new file mode 100644 (file)
index 0000000..88d90b5
--- /dev/null
@@ -0,0 +1,6 @@
+../fonts/TestHVARTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042:[uni0041|uni0042@450,0]
+../fonts/TestHVARTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042:[uni0041|uni0042@515,0]
+../fonts/TestHVARTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042:[uni0041|uni0042@584,0]
+../fonts/TestHVARTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042:[uni0041|uni0042@673,0]
+../fonts/TestHVARTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042:[uni0041|uni0042@761,0]
+../fonts/TestHVARTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042:[uni0041|uni0042@850,0]
diff --git a/test/shaping/data/text-rendering-tests/tests/KERN-1.tests b/test/shaping/data/text-rendering-tests/tests/KERN-1.tests
new file mode 100644 (file)
index 0000000..7bc66b8
--- /dev/null
@@ -0,0 +1 @@
+../fonts/TestKERNOne.otf:--font-size=1000 --ned --font-funcs=ft:U+0131,U+0054,U+0075,U+0054,U+0075,U+0054,U+0131:[dotlessi|T|u@400,0|T@600,0|u@1000,0|T@1200,0|dotlessi@1600,0]
diff --git a/test/shaping/data/text-rendering-tests/tests/KERN-2.tests b/test/shaping/data/text-rendering-tests/tests/KERN-2.tests
new file mode 100644 (file)
index 0000000..9c2cc9a
--- /dev/null
@@ -0,0 +1 @@
+../fonts/TestKERNOne.otf:--font-size=1000 --ned --font-funcs=ft:U+0075,U+0131,U+0131,U+0054,U+0131,U+0131,U+0054,U+0131,U+0131,U+0075:[u|dotlessi@400,0|dotlessi@1100,0|T@1100,0|dotlessi@1500,0|dotlessi@2200,0|T@2200,0|dotlessi@2600,0|dotlessi@3300,0|u@3500,0]
diff --git a/test/shaping/data/text-rendering-tests/tests/MORX-1.tests b/test/shaping/data/text-rendering-tests/tests/MORX-1.tests
new file mode 100644 (file)
index 0000000..27214cf
--- /dev/null
@@ -0,0 +1 @@
+../fonts/TestMORXOne.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042,U+0043:[A.alt|B@1000,0|C.alt@2000,0]
diff --git a/test/shaping/data/text-rendering-tests/tests/MORX-2.tests b/test/shaping/data/text-rendering-tests/tests/MORX-2.tests
new file mode 100644 (file)
index 0000000..4d7a965
--- /dev/null
@@ -0,0 +1,16 @@
+../fonts/TestMORXTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+004F,U+004F,U+004F,U+0041,U+0042,U+0058,U+0059,U+005A,U+0043,U+0044,U+004F,U+004F,U+004F,U+24FF:[O|O@418,0|O@836,0|A@1254,0|B@2084,0|X@2914,0|Y@3744,0|Z@4574,0|C@5404,0|D@6234,0|O@7064,0|O@7482,0|O@7900,0|zero@8318,0]
+../fonts/TestMORXTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+004F,U+004F,U+004F,U+0041,U+0042,U+0058,U+0059,U+005A,U+0043,U+0044,U+004F,U+004F,U+004F,U+278A:[O|O@418,0|O@836,0|B@1254,0|X@2084,0|Y@2914,0|Z@3744,0|C@4574,0|D@5404,0|A@6234,0|O@7064,0|O@7482,0|O@7900,0|one@8318,0]
+../fonts/TestMORXTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+004F,U+004F,U+004F,U+0041,U+0042,U+0058,U+0059,U+005A,U+0043,U+0044,U+004F,U+004F,U+004F,U+278B:[O|O@418,0|O@836,0|D@1254,0|A@2084,0|B@2914,0|X@3744,0|Y@4574,0|Z@5404,0|C@6234,0|O@7064,0|O@7482,0|O@7900,0|two@8318,0]
+../fonts/TestMORXTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+004F,U+004F,U+004F,U+0041,U+0042,U+0058,U+0059,U+005A,U+0043,U+0044,U+004F,U+004F,U+004F,U+0033:[O|O@418,0|O@836,0|D@1254,0|B@2084,0|X@2914,0|Y@3744,0|Z@4574,0|C@5404,0|A@6234,0|O@7064,0|O@7482,0|O@7900,0|three@8318,0]
+../fonts/TestMORXTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+004F,U+004F,U+004F,U+0041,U+0042,U+0058,U+0059,U+005A,U+0043,U+0044,U+004F,U+004F,U+004F,U+0034:[O|O@418,0|O@836,0|X@1254,0|Y@2084,0|Z@2914,0|C@3744,0|D@4574,0|A@5404,0|B@6234,0|O@7064,0|O@7482,0|O@7900,0|four@8318,0]
+../fonts/TestMORXTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+004F,U+004F,U+004F,U+0041,U+0042,U+0058,U+0059,U+005A,U+0043,U+0044,U+004F,U+004F,U+004F,U+0035:[O|O@418,0|O@836,0|X@1254,0|Y@2084,0|Z@2914,0|C@3744,0|D@4574,0|B@5404,0|A@6234,0|O@7064,0|O@7482,0|O@7900,0|five@8318,0]
+../fonts/TestMORXTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+004F,U+004F,U+004F,U+0041,U+0042,U+0058,U+0059,U+005A,U+0043,U+0044,U+004F,U+004F,U+004F,U+0036:[O|O@418,0|O@836,0|C@1254,0|D@2084,0|A@2914,0|B@3744,0|X@4574,0|Y@5404,0|Z@6234,0|O@7064,0|O@7482,0|O@7900,0|six@8318,0]
+../fonts/TestMORXTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+004F,U+004F,U+004F,U+0041,U+0042,U+0058,U+0059,U+005A,U+0043,U+0044,U+004F,U+004F,U+004F,U+0037:[O|O@418,0|O@836,0|D@1254,0|C@2084,0|A@2914,0|B@3744,0|X@4574,0|Y@5404,0|Z@6234,0|O@7064,0|O@7482,0|O@7900,0|seven@8318,0]
+../fonts/TestMORXTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+004F,U+004F,U+004F,U+0041,U+0042,U+0058,U+0059,U+005A,U+0043,U+0044,U+004F,U+004F,U+004F,U+0038:[O|O@418,0|O@836,0|C@1254,0|D@2084,0|B@2914,0|X@3744,0|Y@4574,0|Z@5404,0|A@6234,0|O@7064,0|O@7482,0|O@7900,0|eight@8318,0]
+../fonts/TestMORXTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+004F,U+004F,U+004F,U+0041,U+0042,U+0058,U+0059,U+005A,U+0043,U+0044,U+004F,U+004F,U+004F,U+0039:[O|O@418,0|O@836,0|D@1254,0|C@2084,0|B@2914,0|X@3744,0|Y@4574,0|Z@5404,0|A@6234,0|O@7064,0|O@7482,0|O@7900,0|nine@8318,0]
+../fonts/TestMORXTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+004F,U+004F,U+004F,U+0041,U+0042,U+0058,U+0059,U+005A,U+0043,U+0044,U+004F,U+004F,U+004F,U+2793:[O|O@418,0|O@836,0|D@1254,0|X@2084,0|Y@2914,0|Z@3744,0|C@4574,0|A@5404,0|B@6234,0|O@7064,0|O@7482,0|O@7900,0|one_zero@8318,0]
+../fonts/TestMORXTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+004F,U+004F,U+004F,U+0041,U+0042,U+0058,U+0059,U+005A,U+0043,U+0044,U+004F,U+004F,U+004F,U+24EB:[O|O@418,0|O@836,0|D@1254,0|X@2084,0|Y@2914,0|Z@3744,0|C@4574,0|B@5404,0|A@6234,0|O@7064,0|O@7482,0|O@7900,0|one_one@8318,0]
+../fonts/TestMORXTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+004F,U+004F,U+004F,U+0041,U+0042,U+0058,U+0059,U+005A,U+0043,U+0044,U+004F,U+004F,U+004F,U+24EC:[O|O@418,0|O@836,0|C@1254,0|D@2084,0|X@2914,0|Y@3744,0|Z@4574,0|A@5404,0|B@6234,0|O@7064,0|O@7482,0|O@7900,0|one_two@8318,0]
+../fonts/TestMORXTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+004F,U+004F,U+004F,U+0041,U+0042,U+0058,U+0059,U+005A,U+0043,U+0044,U+004F,U+004F,U+004F,U+24ED:[O|O@418,0|O@836,0|C@1254,0|D@2084,0|X@2914,0|Y@3744,0|Z@4574,0|B@5404,0|A@6234,0|O@7064,0|O@7482,0|O@7900,0|one_three@8318,0]
+../fonts/TestMORXTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+004F,U+004F,U+004F,U+0041,U+0042,U+0058,U+0059,U+005A,U+0043,U+0044,U+004F,U+004F,U+004F,U+24EE:[O|O@418,0|O@836,0|D@1254,0|C@2084,0|X@2914,0|Y@3744,0|Z@4574,0|A@5404,0|B@6234,0|O@7064,0|O@7482,0|O@7900,0|one_four@8318,0]
+../fonts/TestMORXTwo.ttf:--font-size=1000 --ned --font-funcs=ft:U+004F,U+004F,U+004F,U+0041,U+0042,U+0058,U+0059,U+005A,U+0043,U+0044,U+004F,U+004F,U+004F,U+24EF:[O|O@418,0|O@836,0|D@1254,0|C@2084,0|X@2914,0|Y@3744,0|Z@4574,0|B@5404,0|A@6234,0|O@7064,0|O@7482,0|O@7900,0|one_five@8318,0]
diff --git a/test/shaping/data/text-rendering-tests/tests/MORX-3.tests b/test/shaping/data/text-rendering-tests/tests/MORX-3.tests
new file mode 100644 (file)
index 0000000..2ec5157
--- /dev/null
@@ -0,0 +1,16 @@
+../fonts/TestMORXThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042,U+0058,U+0043,U+0044,U+0030:[A|B@363,0|X@722,0|C@1086,0|D@1402,0|zero@1793,0]
+../fonts/TestMORXThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042,U+0058,U+0043,U+0044,U+0031:[A|B@363,0|X@722,0|C@1086,0|D@1402,0|one@1793,0]
+../fonts/TestMORXThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042,U+0058,U+0043,U+0044,U+0032:[A|B@363,0|X@722,0|C@1086,0|D@1402,0|two@1793,0]
+../fonts/TestMORXThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042,U+0058,U+0043,U+0044,U+0033:[A|B@363,0|X@722,0|C@1086,0|D@1402,0|three@1793,0]
+../fonts/TestMORXThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042,U+0058,U+0043,U+0044,U+0034:[A|B@363,0|X@722,0|C@1086,0|D@1402,0|four@1793,0]
+../fonts/TestMORXThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042,U+0058,U+0043,U+0044,U+0035:[A|B@363,0|X@722,0|C@1086,0|D@1402,0|five@1793,0]
+../fonts/TestMORXThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042,U+0058,U+0043,U+0044,U+0036:[A|B@363,0|X@722,0|C@1086,0|D@1402,0|six@1793,0]
+../fonts/TestMORXThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042,U+0058,U+0043,U+0044,U+0037:[A|B@363,0|X@722,0|C@1086,0|D@1402,0|seven@1793,0]
+../fonts/TestMORXThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042,U+0058,U+0043,U+0044,U+0038:[A|B@363,0|X@722,0|C@1086,0|D@1402,0|eight@1793,0]
+../fonts/TestMORXThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042,U+0058,U+0043,U+0044,U+0039:[A|B@363,0|X@722,0|C@1086,0|D@1402,0|nine@1793,0]
+../fonts/TestMORXThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042,U+0058,U+0043,U+0044,U+2793:[A|B@363,0|X@722,0|C@1086,0|D@1402,0|one_zero@1793,0]
+../fonts/TestMORXThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042,U+0058,U+0043,U+0044,U+24EB:[A|B@363,0|X@722,0|C@1086,0|D@1402,0|one_one@1793,0]
+../fonts/TestMORXThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042,U+0058,U+0043,U+0044,U+24EC:[A|B@363,0|X@722,0|C@1086,0|D@1402,0|one_two@1793,0]
+../fonts/TestMORXThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042,U+0058,U+0043,U+0044,U+24ED:[A|B@363,0|X@722,0|C@1086,0|D@1402,0|one_three@1793,0]
+../fonts/TestMORXThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042,U+0058,U+0043,U+0044,U+24EE:[A|B@363,0|X@722,0|C@1086,0|D@1402,0|one_four@1793,0]
+../fonts/TestMORXThree.ttf:--font-size=1000 --ned --font-funcs=ft:U+0041,U+0042,U+0058,U+0043,U+0044,U+24EF:[A|B@363,0|X@722,0|C@1086,0|D@1402,0|one_five@1793,0]
diff --git a/test/shaping/data/text-rendering-tests/tests/MORX-4.tests b/test/shaping/data/text-rendering-tests/tests/MORX-4.tests
new file mode 100644 (file)
index 0000000..dae1d13
--- /dev/null
@@ -0,0 +1,15 @@
+../fonts/TestMORXFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+0050,U+0051,U+0052,U+0041,U+0058,U+0059,U+005A,U+0031:[P|Q@333,0|R@699,0|A@1050,0|X@1880,0|Y@2244,0|Z@2576,0|one@2898,0]
+../fonts/TestMORXFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+0050,U+0051,U+0052,U+0041,U+0058,U+0059,U+005A,U+0032:[P|Q@333,0|R@699,0|A@1050,0|X@1880,0|Y@2244,0|Z@2576,0|two@2898,0]
+../fonts/TestMORXFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+0050,U+0051,U+0052,U+0041,U+0044,U+0058,U+0059,U+005A,U+0033:[P|Q@333,0|R@699,0|D@1050,0|A@1880,0|X@2710,0|Y@3074,0|Z@3406,0|three@3728,0]
+../fonts/TestMORXFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+0050,U+0051,U+0052,U+0041,U+0042,U+0058,U+0059,U+005A,U+0034:[P|Q@333,0|R@699,0|A@1050,0|B@1880,0|X@2710,0|Y@3074,0|Z@3406,0|four@3728,0]
+../fonts/TestMORXFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+0050,U+0051,U+0052,U+0041,U+0042,U+0058,U+0059,U+005A,U+0035:[P|Q@333,0|R@699,0|B@1050,0|A@1880,0|X@2710,0|Y@3074,0|Z@3406,0|five@3728,0]
+../fonts/TestMORXFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+0050,U+0051,U+0052,U+0041,U+0042,U+0058,U+0059,U+005A,U+0036:[P|Q@333,0|R@699,0|A@1050,0|B@1880,0|X@2710,0|Y@3074,0|Z@3406,0|six@3728,0]
+../fonts/TestMORXFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+0050,U+0051,U+0052,U+0041,U+0042,U+0058,U+0059,U+005A,U+0037:[P|Q@333,0|R@699,0|B@1050,0|A@1880,0|X@2710,0|Y@3074,0|Z@3406,0|seven@3728,0]
+../fonts/TestMORXFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+0050,U+0051,U+0052,U+0041,U+0043,U+0044,U+0058,U+0059,U+005A,U+0038:[P|Q@333,0|R@699,0|C@1050,0|D@1880,0|A@2710,0|X@3540,0|Y@3904,0|Z@4236,0|eight@4558,0]
+../fonts/TestMORXFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+0050,U+0051,U+0052,U+0041,U+0043,U+0044,U+0058,U+0059,U+005A,U+0039:[P|Q@333,0|R@699,0|D@1050,0|C@1880,0|A@2710,0|X@3540,0|Y@3904,0|Z@4236,0|nine@4558,0]
+../fonts/TestMORXFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+0050,U+0051,U+0052,U+0041,U+0042,U+0044,U+0058,U+0059,U+005A,U+2793:[P|Q@333,0|R@699,0|D@1050,0|A@1880,0|B@2710,0|X@3540,0|Y@3904,0|Z@4236,0|one_zero@4558,0]
+../fonts/TestMORXFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+0050,U+0051,U+0052,U+0041,U+0042,U+0044,U+0058,U+0059,U+005A,U+24EB:[P|Q@333,0|R@699,0|D@1050,0|B@1880,0|A@2710,0|X@3540,0|Y@3904,0|Z@4236,0|one_one@4558,0]
+../fonts/TestMORXFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+0050,U+0051,U+0052,U+0041,U+0042,U+0043,U+0044,U+0058,U+0059,U+005A,U+24EC:[P|Q@333,0|R@699,0|C@1050,0|D@1880,0|A@2710,0|B@3540,0|X@4370,0|Y@4734,0|Z@5066,0|one_two@5388,0]
+../fonts/TestMORXFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+0050,U+0051,U+0052,U+0041,U+0042,U+0043,U+0044,U+0058,U+0059,U+005A,U+24ED:[P|Q@333,0|R@699,0|C@1050,0|D@1880,0|B@2710,0|A@3540,0|X@4370,0|Y@4734,0|Z@5066,0|one_three@5388,0]
+../fonts/TestMORXFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+0050,U+0051,U+0052,U+0041,U+0042,U+0043,U+0044,U+0058,U+0059,U+005A,U+24EE:[P|Q@333,0|R@699,0|D@1050,0|C@1880,0|A@2710,0|B@3540,0|X@4370,0|Y@4734,0|Z@5066,0|one_four@5388,0]
+../fonts/TestMORXFour.ttf:--font-size=1000 --ned --font-funcs=ft:U+0050,U+0051,U+0052,U+0041,U+0042,U+0043,U+0044,U+0058,U+0059,U+005A,U+24EF:[P|Q@333,0|R@699,0|D@1050,0|C@1880,0|B@2710,0|A@3540,0|X@4370,0|Y@4734,0|Z@5066,0|one_five@5388,0]
diff --git a/test/shaping/data/text-rendering-tests/tests/SHARAN-1.tests b/test/shaping/data/text-rendering-tests/tests/SHARAN-1.tests
new file mode 100644 (file)
index 0000000..f4c92d9
--- /dev/null
@@ -0,0 +1,6 @@
+../fonts/TestShapeAran.ttf:--font-size=1000 --ned --font-funcs=ft:U+0644,U+0633,U+0627,U+0646:[OneDotEnclNS@398,-1|NoonxSep|AlefFin@861,0|SeenMed.inT2outT1@1125,0|sp0@1664,0|LamIni.outT2@1664,223]
+../fonts/TestShapeAran.ttf:--font-size=1000 --ned --font-funcs=ft:U+06CC,U+0648,U+0646,U+06CC,U+06A9,U+0648,U+0688:[TahSmallNS@118,-213|DalSep|WawFin.cut@300,0|KafMed.outT3@573,206|TwoDotsBelowNS@1115,220|BehxMed.inT2outT1@903,304|OneDotAboveNS@1271,-71|sp1@1170,0|BehxIni.outT2@1170,449|WawFin.inD2@1387,0|TwoDotsBelowNS@1867,1|sp0@1758,0|BehxIni.outD2WQ@1758,323]
+../fonts/TestShapeAran.ttf:--font-size=1000 --ned --font-funcs=ft:U+0641,U+0648,U+0646,U+0679:[TahSmallNS@595,-331|BehxFin.soft|OneDotAboveNS@1163,-182|sp0@1184,0|BehxIni.outT2B@1184,300|WawFin.inD2alt@1340,0|OneDotAboveNS@1784,108|sp0@1599,0|FehxIni.outD2WQ@1599,237]
+../fonts/TestShapeAran.ttf:--font-size=1000 --ned --font-funcs=ft:U+0679,U+0627,U+0626,U+067E,U+0020,U+0641,U+06CC,U+0633:[SeenFin|TwoDotsBelowNS@1216,269|BehxMed.inT1outT2SeenWide@1041,455|OneDotAboveNS@1454,224|sp0@1271,0|FehxIni@1271,490|space@1584,0|ThreeDotsDownBelowNS@2290,-159|BehxFin.soft@1715,0|HamzaAboveNS@2878,-201|sp0@2899,0|BehxIni.outT2B@2899,300|AlefFin.narrow@3056,0|TahSmallNS@3442,-420|sp0@3295,0|BehxIni.A@3295,0]
+../fonts/TestShapeAran.ttf:--font-size=1000 --ned --font-funcs=ft:U+0641,U+0646,U+0020,U+062E,U+0637,U+0627,U+0637,U+06CC:[YehxFin|sp0@521,0|TahIni.outD2@521,380|AlefFin@1119,0|TahMed.inD1outT1@1382,0|OneDotAboveNS@2081,-47|sp0@1451,0|HahIni.outD1@1451,36|space@2326,0|OneDotEnclNS@2855,-2|NoonxFin@2458,0|OneDotAboveNS@3361,188|sp0@3208,0|FehxIni.outT2N@3208,336]
+../fonts/TestShapeAran.ttf:--font-size=1000 --ned --font-funcs=ft:U+0646,U+0633,U+062A,U+0639,U+0644,U+06CC,U+0642:[TwoDotsAboveNS@519,-199|QafxFin.cut|TwoDotsBelowNS@977,141|BehxMed.inT2outD2WQ@692,272|LamMed.outT2@1023,434|AinMed.inT3outT1@1301,507|TwoDotsAboveNS@1785,209|BehxMed.inT2outT3@1563,603|SeenMed.inT2outT2@1865,735|OneDotAboveNS@2574,670|sp0@2434,0|BehxIni.outT2tall@2434,952]
diff --git a/test/shaping/data/text-rendering-tests/tests/SHBALI-1.tests b/test/shaping/data/text-rendering-tests/tests/SHBALI-1.tests
new file mode 100644 (file)
index 0000000..fde96aa
--- /dev/null
@@ -0,0 +1,22 @@
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B13,U+1B38,U+1B00:[gid23|gid60@1113,0|gid4@1064,0]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B15,U+1B44,U+1B16,U+1B02:[gid25|gid132@1092,0|gid6@942,0]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B18,U+1B3B:[gid28|gid62@796,0|gid57@794,0]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B19,U+1B40:[gid66|gid29@483,0|gid57@1536,0]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B1A,U+1B3F:[gid67|gid30@483,0]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B14,U+1B36:[gid24|gid58@828,0]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B13,U+1B44,U+1B13,U+1B01:[gid23|gid129@1111,0|gid5@1064,0]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B13,U+1B44,U+1B1B,U+1B01:[gid23|gid137@1111,0|gid5@1379,181]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B13,U+1B44,U+1B26,U+1B03:[gid23|gid148@1111,0|gid7@991,0]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B13,U+1B44,U+1B13,U+1B38:[gid23|gid129@1111,0|gid60@1111,-488]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B13,U+1B44,U+1B13,U+1B3C:[gid23|gid129@1111,0|gid70@1128,0|gid170@1113,0]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B13,U+1B44,U+1B13,U+1B3D:[gid23|gid129@1111,0|gid70@1128,0|gid170@1113,0|gid57@1111,0]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B13,U+1B3E:[gid66|gid23@483,0]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B13,U+1B36,U+1B3E:[gid23|gid58@1064,0|gid66@1111,0|gid128@1594,0]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B13,U+1B38,U+1B3E:[gid23|gid60@1113,0|gid66@1111,0|gid128@1594,0]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B13,U+1B44,U+1B15,U+1B3E:[gid66|gid23@483,0|gid131@1594,0]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B13,U+1B40:[gid66|gid23@483,0|gid57@1594,0]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B13,U+1B3E:[gid66|gid23@483,0]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B13,U+1B3E,U+1B36:[gid66|gid23@483,0|gid58@1548,0]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B13,U+1B3E,U+1B38:[gid66|gid23@483,0|gid60@1597,0]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B13,U+1B44,U+1B15,U+1B3E:[gid66|gid23@483,0|gid131@1594,0]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B13,U+1B40:[gid66|gid23@483,0|gid57@1594,0]
diff --git a/test/shaping/data/text-rendering-tests/tests/SHBALI-2.tests b/test/shaping/data/text-rendering-tests/tests/SHBALI-2.tests
new file mode 100644 (file)
index 0000000..6b0f0b7
--- /dev/null
@@ -0,0 +1,12 @@
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B13,U+1B44,U+1B27,U+1B3E:[gid66|gid23@483,0|gid149@1594,0]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B13,U+1B44,U+1B28,U+1B3F:[gid67|gid23@483,0|gid150@1594,0]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B13,U+1B44,U+1B31,U+1B3E:[gid66|gid23@483,0|gid159@1594,0]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B13,U+1B44,U+1B32,U+1B3E:[gid66|gid23@483,0|gid60@1597,0|gid149@1594,0]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B13,U+1B44,U+1B4A,U+1B3E:[gid66|gid23@483,0|gid60@1597,0|gid165@1594,0]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B1B,U+1B44,U+1B13:[gid181|gid129@1064,-195]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B1B,U+1B44,U+1B13,U+1B3E:[gid66|gid181@483,0|gid129@1548,-195]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B1B,U+1B44,U+1B13,U+1B38,U+1B00:[gid181|gid129@1064,-195|gid60@1064,-684|gid4@855,0]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B13,U+1B44,U+1B13,U+1B38:[gid23|gid129@1111,0|gid60@1111,-488]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B13,U+1B44,U+1B1B,U+1B39:[gid23|gid137@1111,0|gid61@1261,-488]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B13,U+1B44,U+1B31,U+1B3A:[gid23|gid159@1111,0|gid62@1753,0]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B13,U+1B44,U+1B45,U+1B38:[gid23|gid162@1111,0|gid60@1111,-488]
diff --git a/test/shaping/data/text-rendering-tests/tests/SHBALI-3.tests b/test/shaping/data/text-rendering-tests/tests/SHBALI-3.tests
new file mode 100644 (file)
index 0000000..661a282
--- /dev/null
@@ -0,0 +1,9 @@
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B66,U+1B6B:[gid102|gid107@560,-10]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B66,U+1B6C:[gid102|gid108@573,49]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B66,U+1B6D:[gid102|gid109@652,-10]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B66,U+1B6E:[gid102|gid110@652,-98]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B66,U+1B6F:[gid102|gid111@667,-10]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B66,U+1B70:[gid102|gid112@667,-10]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B66,U+1B71:[gid102|gid113@667,-10]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B66,U+1B72:[gid102|gid114@667,-10]
+../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+1B66,U+1B73:[gid102|gid115@599,-10]
diff --git a/test/shaping/data/text-rendering-tests/tests/SHKNDA-1.tests b/test/shaping/data/text-rendering-tests/tests/SHKNDA-1.tests
new file mode 100644 (file)
index 0000000..528a097
--- /dev/null
@@ -0,0 +1,34 @@
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CB2,U+0CCD,U+0CB2,U+0CBF:[knLI|knLAc2@757,0]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C9F,U+0CCD,U+0CB8,U+0CCD:[knTT|knSAc2@1021,0]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CB3,U+0CBF:[knLLI]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CA1,U+0CBF:[knDDI]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CAE,U+0CC6:[knME]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CB0,U+0CBF:[knRI]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C96,U+0CCD,U+0CAF,U+0CC6:[knKHE|knYAc2@846,0]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CAB,U+0CCD,U+0CB0,U+0CBF:[knPHI|knRAc2@735,0]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CA8,U+0CC6:[knNE]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C97,U+0CBF:[knGI]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CB7,U+0CCD,U+0C9F,U+0CBF:[knSSI|knTTAc2@746,0]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CAF,U+0CBF,U+0C82:[knYI|knAnusvara@1252,0]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C9A,U+0CC0:[knCI|knLengthmark@766,0]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CA8,U+0CBF:[knNI]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C97,U+0CCD,U+0CB2,U+0CBF:[knGI|knLAc2@621,0]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CB7,U+0CBF:[knSSI]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C97,U+0CC6:[knGE]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CA6,U+0CCD,U+0CB5,U+0CBF:[knDI|knVAc2@740,0]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CA4,U+0CC0:[knTI|knLengthmark@613,0]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CAE,U+0CBF:[knMI]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CB2,U+0CBF:[knLI]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C97,U+0CBF:[knGI]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CA8,U+0CCD:[knN]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CAC,U+0CBF:[knBI]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CB2,U+0CBF:[knLI]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CA8,U+0CCD,U+0CA8,U+0CBF,U+0C82:[knNI|knNAc2@678,0|knAnusvara@755,0]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CB2,U+0CCD,U+0CB2,U+0CBF:[knLI|knLAc2@757,0]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CA7,U+0CBF:[knDHI]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CAA,U+0CCC:[knPA.base|knmAU@739,0]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CB5,U+0CBF,U+0C82:[knVI|knAnusvara@749,0]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CA1,U+0CBF:[knDDI]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C9F,U+0CBF:[knTTI]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CA8,U+0CBF:[knNI]
+../fonts/NotoSerifKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CA7,U+0CBF:[knDHI]
diff --git a/test/shaping/data/text-rendering-tests/tests/SHKNDA-2.tests b/test/shaping/data/text-rendering-tests/tests/SHKNDA-2.tests
new file mode 100644 (file)
index 0000000..81d7563
--- /dev/null
@@ -0,0 +1,16 @@
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CA8,U+0CCD,U+0CA8,U+0CBE:[gid150|gid57@711,0|gid116@1160,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CA8,U+0CCD,U+0CA8,U+0CBE:[gid150|gid57@711,0|gid116@1160,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CA4,U+0CCD,U+0CA4,U+0CBE:[gid146|gid57@623,0|gid112@1071,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C9F,U+0CCD,U+0C9F,U+0CBE:[gid141|gid57@815,0|gid107@1264,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CA1,U+0CCB,U+0C82,U+0C97,U+0CBF:[gid249|gid61@768,0|gid71@1513,0|gid4@1925,0|gid207@2475,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C9C,U+0CBF,U+0CBC,U+0CD5,U+0CAC,U+0CC6,U+0CA8,U+0CCD:[gid211|gid55@652,0|gid71@776,0|gid259@1188,0|gid186@1994,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C9C,U+0CBE,U+0CBC,U+0C95,U+0CBF,U+0CB0,U+0CCD:[gid139|gid57@776,0|gid55@652,0|gid205@1225,0|gid193@1799,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C87,U+0CA8,U+0CCD,U+0CAB,U+0CCD,U+0CB2,U+0CC6,U+0C95,U+0CCD,U+0CB7,U+0CA8,U+0CB2,U+0CCD:[gid8|gid256@711,0|gid118@1422,0|gid335@1591,0|gid282@1978,0|gid39@2552,0|gid195@3263,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C87,U+0CA8,U+0CCD,U+0CAB,U+0CCD,U+0CB2,U+0CC6,U+0C95,U+0CCD,U+0CB7,U+0CA8,U+0CCD:[gid8|gid256@711,0|gid118@1422,0|gid335@1591,0|gid282@1978,0|gid186@2552,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CA6,U+0C9F,U+0CCD,U+0CB8,U+0CCD:[gid37|gid177@765,0|gid130@1814,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C8E,U+0C95,U+0CCD,U+0CB8,U+0CCD:[gid14|gid167@787,0|gid130@1596,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CAE,U+0CBE,U+0CB0,U+0CCD,U+0C9A,U+0CCD:[gid155|gid57@1156,0|gid172@1605,0|gid94@2718,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C9F,U+0CC6,U+0C95,U+0CCD,U+0CB8,U+0CCD,U+0C9F,U+0CCD:[gid247|gid167@815,0|gid130@1624,0|gid317@1792,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CAC,U+0CC1,U+0C95,U+0CCD,U+0CB8,U+0CCD:[gid42|gid60@801,0|gid167@1165,0|gid130@1974,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CB8,U+0CBE,U+0CAB,U+0CCD,U+0C9F,U+0CCD:[gid163|gid57@709,0|gid188@1158,0|gid107@2184,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C9C,U+0CB8,U+0CCD,U+0C9F,U+0CCD:[gid27|gid200@776,0|gid107@1720,0]
diff --git a/test/shaping/data/text-rendering-tests/tests/SHKNDA-3.tests b/test/shaping/data/text-rendering-tests/tests/SHKNDA-3.tests
new file mode 100644 (file)
index 0000000..edf0759
--- /dev/null
@@ -0,0 +1,31 @@
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C95,U+0CCB,U+0C82:[gid239|gid61@574,0|gid71@1319,0|gid4@1731,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C96,U+0CCB,U+0C82:[gid240|gid61@865,0|gid71@1610,0|gid4@2022,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C97,U+0CCB,U+0C82:[gid241|gid61@648,0|gid71@1393,0|gid4@1805,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C98,U+0CCB,U+0C82:[gid242|gid279@997,0|gid71@1742,0|gid4@2153,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C99,U+0CCB,U+0C82:[gid24|gid67@737,0|gid71@1718,0|gid4@2130,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C9A,U+0CCB,U+0C82:[gid243|gid61@795,0|gid71@1540,0|gid4@1952,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C9B,U+0CCB,U+0C82:[gid244|gid61@843,0|gid71@1588,0|gid4@2000,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C9C,U+0CCB,U+0C82:[gid245|gid61@776,0|gid71@1522,0|gid4@1933,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C9D,U+0CCB,U+0C82:[gid246|gid61@1379,0|gid71@2124,0|gid4@2536,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C9E,U+0CCB,U+0C82:[gid29|gid67@968,0|gid71@1949,0|gid4@2360,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C9F,U+0CCB,U+0C82:[gid247|gid61@815,0|gid71@1560,0|gid4@1972,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CA0,U+0CCB,U+0C82:[gid248|gid61@651,0|gid71@1397,0|gid4@1808,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CA1,U+0CCB,U+0C82:[gid249|gid61@768,0|gid71@1513,0|gid4@1925,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CA2,U+0CCB,U+0C82:[gid250|gid61@768,0|gid71@1513,0|gid4@1925,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CA3,U+0CCB,U+0C82:[gid251|gid61@867,0|gid71@1612,0|gid4@2023,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CA4,U+0CCB,U+0C82:[gid252|gid61@623,0|gid71@1368,0|gid4@1779,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CA5,U+0CCB,U+0C82:[gid253|gid61@765,0|gid71@1510,0|gid4@1921,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CA6,U+0CCB,U+0C82:[gid254|gid61@765,0|gid71@1510,0|gid4@1921,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CA7,U+0CCB,U+0C82,U+0020:[gid255|gid61@765,0|gid71@1510,0|gid4@1921,0|gid3@2472,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CA8,U+0CCB,U+0C82:[gid256|gid61@711,0|gid71@1456,0|gid4@1868,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CAA,U+0CCB,U+0C82:[gid257|gid275@792,0|gid71@1434,0|gid4@1846,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CAB,U+0CCB,U+0C82:[gid258|gid277@792,0|gid71@1434,0|gid4@1846,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CAC,U+0CCB,U+0C82:[gid259|gid61@806,0|gid71@1551,0|gid4@1963,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CAD,U+0CCB,U+0C82:[gid260|gid61@806,0|gid71@1551,0|gid4@1963,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CAE,U+0CCB,U+0C82:[gid280|gid71@1539,0|gid4@1951,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CAF,U+0CCB,U+0C82:[gid281|gid71@1712,0|gid4@2124,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CB0,U+0CCB,U+0C82:[gid263|gid61@651,0|gid71@1397,0|gid4@1808,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CB1,U+0CCB,U+0C82:[gid47|gid67@831,0|gid71@1812,0|gid4@2223,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CB2,U+0CCB,U+0C82:[gid264|gid61@769,0|gid71@1514,0|gid4@1925,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0CB5,U+0CCB,U+0C82:[gid266|gid275@794,0|gid71@1437,0|gid4@1848,0]
+../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --font-funcs=ft:U+0C86,U+0CCD,U+0CAF,U+0C95,U+0CCD,U+0CB7,U+0CBF,U+0CB8,U+0CCD,U+200C:[gid7|gid122@838,0|gid285@1098,0|gid200@1672,0|gid3@2694,0]