diff --git a/Lib/fontTools/varLib/__init__.py b/Lib/fontTools/varLib/__init__.py index bccc7e17a..db5670628 100644 --- a/Lib/fontTools/varLib/__init__.py +++ b/Lib/fontTools/varLib/__init__.py @@ -922,6 +922,13 @@ def build(designspace, master_finder=lambda s:s, exclude=[], optimize=True): _add_GSUB_feature_variations(vf, ds.axes, ds.internal_axis_supports, ds.rules) if 'CFF2' not in exclude and 'CFF ' in vf: _add_CFF2(vf, model, master_fonts) + if "post" in vf: + # set 'post' to format 2 to keep the glyph names dropped from CFF2 + post = vf["post"] + if post.formatType != 2.0: + post.formatType = 2.0 + post.extraNames = [] + post.mapping = {} for tag in exclude: if tag in vf: diff --git a/NEWS.rst b/NEWS.rst index 74aa2fdf6..68873ac73 100644 --- a/NEWS.rst +++ b/NEWS.rst @@ -1,3 +1,6 @@ +- [varLib] Don't drop ``post`` glyph names when building CFF2 variable font. + + 3.41.1 (released 2019-05-13) ---------------------------- diff --git a/Tests/varLib/data/test_results/BuildTestCFF2.ttx b/Tests/varLib/data/test_results/BuildTestCFF2.ttx index 0fd46aa76..37ed3aaf4 100644 --- a/Tests/varLib/data/test_results/BuildTestCFF2.ttx +++ b/Tests/varLib/data/test_results/BuildTestCFF2.ttx @@ -197,7 +197,7 @@ 40 437 -40 -437 -18 31 12 -8 18 -31 -12 8 4 blend hlineto - + 304 7 -12 1 blend 34 rmoveto 125 86 65 96 -22 38 2 -3 -9 15 -2 4 4 blend diff --git a/Tests/varLib/data/test_results/TestSparseCFF2VF.ttx b/Tests/varLib/data/test_results/TestSparseCFF2VF.ttx index 4be193025..442ae91e6 100644 --- a/Tests/varLib/data/test_results/TestSparseCFF2VF.ttx +++ b/Tests/varLib/data/test_results/TestSparseCFF2VF.ttx @@ -1,5 +1,5 @@ - + @@ -177,7 +177,9 @@ -668 859 rmoveto 318 -409 -318 -409 rlineto - + + + -12 83 1 126 2 blend hstemhm 74 73 -57 40 -26 129 -125 122 4 blend @@ -197,108 +199,7 @@ 24 14 18 22 25 -14 18 -22 -23 -14 -21 -24 -18 13 -20 22 38 25 26 38 37 -28 25 -37 -34 -30 -22 -38 -40 27 -26 39 16 blend hvcurveto - - - - 5 vsindex - 121 30 -22 22 148 30 -30 136 23 30 129 30 116 30 -21 4 -29 52 3 92 -32 23 -21 32 -23 21 -54 9 -83 50 4 90 -50 -4 -90 22 27 62 -2 -43 -47 41 0 69 -44 0 -74 37 0 62 -50 0 -84 36 0 61 14 blend - hstemhm - 167 30 129 30 -16 16 123 30 48 30 -6 29 -29 111 -30 30 -16 16 201 30 1 29 -29 0 -49 64 0 108 -34 0 -57 51 0 85 -29 0 -48 29 0 48 -72 -2 -123 60 2 103 -69 0 -115 46 0 77 -42 0 -70 42 0 70 -42 0 -70 67 0 111 -51 0 -85 51 0 85 -29 0 -48 29 0 48 -79 0 -132 47 0 79 -45 0 -75 42 0 70 22 blend - vstemhm - hintmask 011011111011001010000000 - 326 793 1 0 2 17 0 29 2 blend - rmoveto - -280 24 0 40 1 blend - vlineto - -47 16 -8 59 -31 0 -53 6 0 10 -13 0 -21 20 0 33 4 blend - vhcurveto - hintmask 000010000000100000000000 - 13 120 4 0 6 -46 0 -76 2 blend - 0 13 4 0 7 1 blend - hhcurveto - 49 10 20 82 4 12 0 19 12 0 20 3 0 5 2 0 3 4 0 8 5 blend - hvcurveto - hintmask 101010101000010000000000 - -10 2 -11 5 -8 6 -12 0 -21 3 0 5 -21 0 -35 6 0 11 -9 0 -14 7 0 11 6 blend - rrcurveto - -75 19 0 32 1 blend - -3 -5 -10 -29 -24 -102 1 0 1 1 0 2 7 0 12 9 0 14 42 0 70 5 blend - 0 -18 6 0 10 1 blend - hhcurveto - -38 -6 4 21 10 0 18 2 0 3 0 0 -1 4 0 7 4 blend - hvcurveto - 280 -25 0 -41 1 blend - vlineto - -41 -464 -40 -8 -74 10 20 41 2 blend - rmoveto - -30 617 30 -50 -4 -90 -5 12 5 50 4 90 3 blend - vlineto - -661 -178 11 -4 12 4 -13 -7 2 blend - rmoveto - -30 689 30 -52 -3 -92 -11 0 -18 52 3 92 3 blend - vlineto - hintmask 010101100111001000000000 - -481 284 -27 -2 -48 -32 36 -21 2 blend - rmoveto - -306 30 306 0 -13 0 60 2 103 0 13 0 3 blend - vlineto - 218 0 -61 0 -102 -1 0 -1 2 blend - rmoveto - -306 30 306 0 -13 0 61 1 104 0 13 0 3 blend - vlineto - -417 358 -17 -1 -30 19 -43 -12 2 blend - rmoveto - -30 217 -116 -217 -30 247 176 -36 0 -61 -52 0 -87 50 0 84 52 0 87 -37 0 -62 -6 0 -10 23 0 39 7 blend - vlineto - 75 -26 0 -44 1 blend - hmoveto - hintmask 000010100000001001000000 - -280 24 0 40 1 blend - vlineto - -47 17 -8 60 -31 0 -53 5 0 9 -13 0 -21 20 0 33 4 blend - vhcurveto - 12 125 5 0 8 -47 0 -78 2 blend - 0 14 4 0 7 1 blend - hhcurveto - 49 11 20 82 3 12 0 20 12 0 19 3 1 6 2 1 6 5 0 9 5 blend - hvcurveto - -9 2 -12 4 -8 7 -14 1 -22 3 0 5 -19 -1 -34 7 0 12 -9 0 -14 6 0 10 6 blend - rrcurveto - -75 19 -1 29 1 blend - -3 -5 -10 -30 -25 -105 1 -1 1 8 0 13 8 0 14 42 0 70 4 blend - 0 -18 6 0 9 1 blend - hhcurveto - -40 -6 4 21 11 0 19 2 0 3 0 0 -1 4 1 8 4 blend - hvcurveto - 280 -25 -1 -42 1 blend - vlineto - hintmask 000001110000000110000000 - -16 -29 0 -48 1 blend - hmoveto - -30 217 -116 -217 -30 247 176 -36 0 -61 -50 0 -84 50 0 84 50 0 84 -37 0 -62 -3 0 -5 23 0 39 7 blend - vlineto - -424 -714 -19 0 -32 -12 0 -21 2 blend - rmoveto - -52 -54 -91 -49 -81 -33 8 -5 11 -13 4 -6 80 36 94 56 56 58 7 0 11 9 0 15 5 0 9 11 0 18 -2 0 -3 9 0 15 13 0 22 -11 0 -18 24 0 39 -22 0 -36 11 0 19 -12 0 -21 4 0 7 -4 0 -6 2 0 2 -2 0 -4 -1 0 -1 3 0 5 18 blend - rrcurveto - 200 -7 -92 0 -154 -5 0 -8 2 blend - rmoveto - 76 -41 90 -62 46 -42 -6 0 -10 5 0 8 -5 0 -7 6 0 10 -4 0 -7 4 0 7 6 blend - rrcurveto - 22 23 -46 42 -91 60 -75 39 60 0 100 29 0 48 0 0 -1 -3 0 -5 3 0 5 -7 0 -11 6 0 11 -7 0 -11 8 blend - rlinecurve - -499 750 -48 0 -81 6 0 10 2 blend - rmoveto - -54 -167 -87 -164 -96 -108 7 -6 11 -12 4 -6 98 116 88 165 58 175 7 0 13 15 0 25 10 0 16 14 0 22 11 0 19 10 0 17 9 0 15 -20 0 -33 15 0 24 -44 0 -73 4 0 7 -18 0 -30 4 0 6 4 0 6 3 0 6 19 0 32 0 0 -1 1 0 1 18 blend - rrcurveto - -113 -214 -60 0 -100 -23 0 -37 2 blend - rmoveto - -691 30 718 20 0 33 64 0 108 43 0 72 3 blend - vlineto - -1 -1 0 -3 1 blend - 2 rlineto - - + 1 vsindex -72 30 253 30 94 30 92 30 65 30 131 45 -30 112 -99 17 -8 0 -12 59 -2 85 -64 2 -92 39 -1 56 -44 2 -63 35 -1 51 -43 1 -62 39 -1 56 -21 0 -31 56 -2 81 -56 2 -81 44 -2 63 -57 3 -81 31 -1 45 -18 0 -27 44 -2 63 16 blend hstemhm @@ -386,265 +287,7 @@ -276 619 276 -26 0 -38 45 -2 64 26 0 38 3 blend vlineto - - 5 vsindex - -67 29 219 30 154 30 -16 16 150 30 -30 122 -85 30 -18 18 87 30 -30 140 -122 12 -14 0 -22 46 0 78 -59 -3 -106 46 0 77 -53 -9 -92 46 2 81 -18 20 -1 18 -20 1 -54 13 -80 46 2 81 -46 -2 -81 25 31 61 -14 -34 -48 60 0 100 -64 0 -107 64 0 107 -55 0 -92 54 0 90 -54 0 -90 36 0 59 -19 0 -31 37 0 62 22 blend - hstemhm - 51 188 -30 30 -30 149 21 30 -18 18 -13 13 66 30 -12 12 135 30 41 30 172 30 -6 28 -8 0 -14 30 0 50 -62 0 -103 62 0 103 -62 0 -103 32 0 53 -5 0 -7 59 0 98 -24 0 -41 24 0 41 -16 0 -27 16 0 27 -32 0 -53 53 0 88 -33 0 -56 33 0 56 -87 0 -146 63 0 106 -42 0 -70 54 0 90 -99 0 -165 55 0 91 -42 0 -70 45 0 75 24 blend - vstemhm - hintmask 000000100001000000000000 - 51 612 -8 0 -14 29 0 49 2 blend - rmoveto - -30 -60 0 -100 1 blend - vlineto - hintmask 000000100000010000000000 - 307 30 60 0 100 1 blend - hlineto - hintmask 000000010010100100000000 - -149 228 -32 0 -53 -20 0 -34 2 blend - rmoveto - -918 30 918 -19 0 -32 62 0 103 19 0 32 3 blend - vlineto - -36 -238 -55 0 -91 -32 0 -53 2 blend - rmoveto - -31 -160 -74 -193 -68 -95 7 -5 10 -11 6 -8 70 101 74 203 33 160 6 0 10 25 0 42 13 0 21 23 0 37 4 0 7 1 0 2 8 0 14 -18 0 -30 13 0 21 -27 0 -44 4 0 7 -19 0 -32 1 0 2 6 0 10 -12 0 -20 -2 0 -3 -2 0 -4 -1 0 -2 18 blend - rrcurveto - 4 -143 19 0 32 77 0 128 2 blend - rmoveto - -21 -16 25 -26 72 -92 21 -33 -23 0 -38 -34 0 -57 1 0 2 -15 0 -24 -12 0 -21 -6 0 -11 2 0 3 -18 0 -29 8 blend - rlinecurve - 24 24 -18 25 -81 96 -22 22 28 0 48 63 0 105 2 0 2 -1 0 -2 1 0 3 10 0 16 1 0 1 1 0 2 8 blend - rlinecurve - 157 278 1 0 1 -14 0 -23 2 blend - rmoveto - hintmask 000000001000000100000000 - -30 559 -54 0 -90 -17 3 -23 2 blend - vlineto - hintmask 010000000010000000100000 - 30 54 0 90 1 blend - vlineto - -457 -518 29 -3 43 -9 -3 -20 2 blend - rmoveto - -30 176 30 -46 0 -77 -17 0 -27 46 0 77 3 blend - vlineto - hintmask 000000000100000001010000 - -194 120 -3 0 -5 -42 37 -35 2 blend - rmoveto - -365 30 365 38 -29 45 53 0 88 -38 29 -45 3 blend - vlineto - 135 508 -87 0 -146 33 -34 24 2 blend - rmoveto - hintmask 000000000010000000010000 - -122 30 -19 0 -31 63 0 106 2 blend - vlineto - hintmask 000101000100000000010000 - 122 19 0 31 1 blend - vlineto - -115 -172 -60 0 -100 -27 34 -19 2 blend - rmoveto - -288 30 288 11 -24 18 50 0 83 -11 24 -18 3 blend - vlineto - 148 -62 -2 -106 1 blend - hmoveto - -288 30 288 11 -24 18 50 0 83 -11 24 -18 3 blend - vlineto - 156 -394 -30 2 -47 19 -34 6 2 blend - rmoveto - -52 -36 -89 -48 -61 -29 7 0 12 2 0 4 14 0 23 3 0 4 11 0 18 4 0 8 6 blend - rrcurveto - 15 -21 62 28 86 41 57 44 25 0 42 -39 0 -66 -10 0 -17 -4 0 -6 -12 0 -19 -3 0 -5 -6 0 -11 -5 0 -9 8 blend - rlinecurve - hintmask 101010000000000010001100 - -541 323 10 0 17 44 5 84 2 blend - rmoveto - -30 517 -150 -517 -30 547 210 -46 -2 -81 -74 0 -123 54 -13 80 74 0 123 -46 -2 -81 -19 0 -32 38 17 82 7 blend - vlineto - -232 -242 -10 0 -16 -28 29 -27 2 blend - rmoveto - -344 58 -32 71 1 blend - vlineto - -47 15 -9 54 -33 -2 -58 3 0 4 -15 0 -25 22 0 37 4 blend - vhcurveto - hintmask 100000000010001000001010 - 12 100 3 0 5 -47 0 -78 2 blend - 0 12 4 0 6 1 blend - hhcurveto - 48 10 25 102 3 12 0 20 11 0 19 4 1 9 11 -1 16 5 0 8 5 blend - hvcurveto - -9 3 -11 4 -8 6 -14 0 -23 3 -1 5 -23 1 -37 8 1 15 -8 -1 -15 8 0 12 6 blend - rrcurveto - -97 11 1 20 1 blend - -3 -4 -14 -29 -21 -84 0 0 1 1 -1 1 10 0 16 10 1 17 43 -1 71 5 blend - 0 -16 7 0 12 1 blend - hhcurveto - -33 -6 5 22 13 0 22 3 0 5 -1 0 -2 4 0 7 4 blend - hvcurveto - 344 -59 34 -71 1 blend - vlineto - -346 -371 -24 0 -41 65 -34 78 2 blend - rmoveto - 10 -31 77 16 100 22 99 21 3 0 5 -54 0 -90 -2 0 -3 -3 0 -5 -9 0 -15 -6 0 -10 -10 0 -17 -5 0 -8 8 blend - rlinecurve - -2 29 -108 -22 -104 -22 -72 -13 -3 0 -5 52 0 86 9 0 16 6 0 10 8 0 13 6 0 11 4 0 6 4 0 6 8 blend - rlinecurve - -16 767 -44 0 -72 -13 0 -21 2 blend - rmoveto - -316 -6 0 -11 1 blend - vlineto - -142 -7 -194 -74 -141 2 0 2 -2 0 -2 2 0 4 6 0 9 4 blend - vhcurveto - 8 -3 13 -7 5 -6 13 0 21 -7 0 -11 25 0 43 -20 0 -34 11 0 17 -10 0 -17 6 blend - rrcurveto - 75 143 10 205 145 4 0 7 3 0 5 2 0 4 21 0 35 9 0 15 5 blend - vvcurveto - 316 6 0 11 1 blend - vlineto - - - 3 vsindex - -71 30 427 30 153 30 33 111 -30 30 -30 126 -6 0 -13 45 0 102 -58 0 -132 38 0 87 -48 0 -111 38 0 87 -4 -2 -13 21 2 53 -43 0 -99 43 0 99 -43 0 -99 24 0 55 12 blend - hstemhm - 159 30 -19 19 126 30 -6 30 281 30 160 30 18 31 -7 0 -16 50 0 114 -18 0 -42 18 0 42 -71 0 -161 50 0 114 -26 0 -61 48 0 111 -66 0 -150 51 0 115 -68 0 -154 50 0 114 -36 -1 -84 44 1 101 14 blend - vstemhm - hintmask 1110100101110000 - 58 743 -1 0 -2 26 0 60 2 blend - rmoveto - -30 887 30 -43 0 -99 2 0 5 43 0 99 3 blend - vlineto - hintmask 0000010010000000 - -630 96 -29 0 -66 -19 0 -44 2 blend - rmoveto - hintmask 0001000010000000 - -207 30 -2 -2 -9 50 0 114 2 blend - vlineto - hintmask 0000010010100000 - 207 2 2 9 1 blend - vlineto - 305 -44 0 -100 1 blend - hmoveto - hintmask 0001000000100000 - -207 30 -2 -2 -9 51 0 115 2 blend - vlineto - hintmask 0010011000100000 - 207 2 2 9 1 blend - vlineto - -521 -240 -36 0 -82 2 0 4 2 blend - rmoveto - -206 -5 0 -10 1 blend - vlineto - -137 -15 -184 -109 -136 5 0 11 3 0 6 5 0 10 -1 0 -1 8 0 19 5 blend - vhcurveto - 7 -3 12 -9 5 -6 12 0 27 -6 0 -13 22 0 51 -15 0 -35 10 0 21 -8 0 -19 6 blend - rrcurveto - hintmask 1110000101010000 - 112 139 18 194 141 3 0 7 -4 0 -8 1 0 3 11 0 24 4 0 10 5 blend - vvcurveto - 207 5 0 11 1 blend - vlineto - -19 -18 0 -42 1 blend - hmoveto - -30 670 -153 -670 -30 700 213 -38 0 -87 -64 0 -144 48 0 111 64 0 144 -38 0 -87 -14 0 -30 28 0 63 7 blend - vlineto - -531 -249 -15 0 -36 -23 0 -51 2 blend - rmoveto - -343 50 0 112 1 blend - vlineto - -66 31 -12 105 -29 0 -66 6 0 14 -13 0 -28 29 0 66 4 blend - vhcurveto - 23 278 5 0 12 -59 0 -134 2 blend - 0 24 6 0 14 1 blend - hhcurveto - hintmask 1000000001001000 - 96 15 31 123 8 20 0 44 11 0 26 4 0 8 14 0 32 5 0 11 5 blend - hvcurveto - -9 3 -13 4 -9 7 -13 0 -30 2 0 5 -21 0 -48 8 0 17 -10 -1 -23 6 0 15 6 blend - rrcurveto - -117 -6 -11 -21 -69 -56 -236 8 0 18 -1 1 -1 1 -1 1 3 0 7 3 1 9 7 0 15 49 0 112 7 blend - 0 -41 4 0 8 1 blend - hhcurveto - -84 -16 11 37 4 0 10 2 0 5 -3 0 -7 1 0 2 4 blend - hvcurveto - 343 -51 0 -115 1 blend - vlineto - 444 -47 -59 0 -135 26 0 59 2 blend - rmoveto - -101 -52 -195 -56 -169 -40 4 -7 5 -10 3 -7 172 40 193 54 120 56 4 0 8 3 0 7 18 0 43 9 0 19 12 0 26 8 0 19 5 0 12 -10 0 -22 7 0 15 -18 0 -41 1 0 3 -11 0 -25 -8 0 -19 -9 0 -21 -8 0 -18 -8 0 -19 5 0 11 0 0 1 18 blend - rrcurveto - - - 2 vsindex - 64 30 77 30 76 30 74 30 72 30 109 30 25 84 -30 30 -30 108 -2 0 -2 42 0 47 -48 0 -54 38 0 43 -48 0 -54 38 0 43 -46 0 -52 42 0 47 -43 0 -48 56 1 63 -72 -1 -81 57 1 64 -8 -32 -41 30 32 65 -65 -1 -73 65 1 73 -65 -1 -73 43 0 49 18 blend - hstemhm - 135 30 21 30 102 30 14 30 205 30 17 30 113 30 19 30 -19 0 -21 87 2 98 -86 -2 -97 99 1 111 -125 -1 -141 98 1 111 -79 -1 -89 75 1 84 -99 -1 -111 75 1 84 -77 -1 -86 100 1 112 -127 -1 -143 105 1 118 -102 -1 -114 94 1 105 16 blend - vstemhm - hintmask 111111010011001100000000 - 53 761 -3 0 -3 36 0 40 2 blend - rmoveto - -30 896 30 -65 -1 -73 5 0 5 65 1 73 3 blend - vlineto - hintmask 000000001001000000000000 - -631 78 -46 0 -52 -22 0 -24 2 blend - rmoveto - hintmask 000000100001000000000000 - -162 30 -8 -32 -41 98 1 111 2 blend - vlineto - hintmask 000000001001001000000000 - 162 8 32 41 1 blend - vlineto - 296 -105 -1 -118 1 blend - hmoveto - hintmask 000000100000001000000000 - -162 30 -8 -32 -41 100 1 112 2 blend - vlineto - hintmask 000000001000001000000000 - 162 8 32 41 1 blend - vlineto - hintmask 000011000100110010000000 - -47 -217 -23 0 -26 -57 -1 -64 2 blend - rmoveto - 209 -109 -209 -101 -1 -113 72 1 81 101 1 113 3 blend - hlineto - -235 109 24 0 27 -72 -1 -81 2 blend - rmoveto - 205 -109 -205 -99 -1 -111 72 1 81 99 1 111 3 blend - hlineto - -227 109 18 1 21 -72 -1 -81 2 blend - rmoveto - 197 -109 -197 -93 -2 -105 72 1 81 93 2 105 3 blend - hlineto - -30 139 -87 -2 -98 -15 0 -17 2 blend - rmoveto - -169 731 169 -41 0 -46 38 0 42 41 0 46 3 blend - vlineto - hintmask 111100000010000100000000 - -650 -375 62 1 70 -32 0 -36 2 blend - rmoveto - 571 -76 -571 -159 -1 -179 48 0 54 159 1 179 3 blend - hlineto - -30 -38 0 -43 1 blend - vmoveto - 571 -77 -571 -159 -1 -179 48 0 54 159 1 179 3 blend - hlineto - 287 -66 -1 -74 1 blend - vmoveto - 571 -74 -571 -159 -1 -179 46 0 52 159 1 179 3 blend - hlineto - -30 104 -99 -1 -111 -4 0 -5 2 blend - rmoveto - -347 631 347 -18 0 -20 45 0 50 18 0 20 3 blend - vlineto - -216 -389 -86 -1 -96 -31 0 -35 2 blend - rmoveto - 127 -34 121 -39 72 -31 -17 0 -19 2 0 2 -13 0 -15 -2 0 -2 -13 0 -15 3 0 3 6 blend - rrcurveto - 31 22 -78 32 -126 39 -121 136 1 153 39 0 44 1 0 1 -3 0 -3 -8 0 -9 4 0 5 9 0 10 7 blend - 31 rlinecurve - -258 -1 -67 -1 -75 0 0 -1 2 blend - rmoveto - -81 -39 -128 -36 -107 -23 8 -6 12 -12 5 -6 103 25 130 41 86 43 9 0 10 6 0 7 3 0 4 7 0 8 -4 0 -5 7 0 8 19 0 22 -14 0 -16 32 0 36 -32 0 -36 17 0 19 -19 0 -21 3 0 3 -1 0 -1 5 0 6 2 0 2 1 0 1 4 0 5 18 blend - rrcurveto - - + 2 vsindex -60 30 203 30 -9 9 67 7 -7 14 -14 30 -20 20 80 30 59 30 121 30 18 93 -30 30 -30 108 -23 0 -26 67 2 76 -98 -2 -111 42 0 47 -13 0 -14 13 0 14 -33 0 -37 11 0 13 -11 0 -13 8 0 9 -7 0 -8 53 0 60 -32 0 -36 32 0 36 -52 0 -59 57 1 65 -33 0 -38 53 0 60 -83 -1 -93 54 0 60 -6 -19 -24 33 19 55 -76 -1 -86 76 1 86 -76 -1 -86 59 1 67 26 blend hstemhm @@ -758,7 +401,7 @@ -66 -32 -126 -33 -107 -23 5 -7 5 -10 2 -7 110 22 126 32 81 36 10 0 11 7 0 8 30 0 34 11 0 12 21 0 23 9 0 10 7 0 8 -14 0 -16 9 0 10 -27 0 -30 3 0 4 -15 0 -17 -15 0 -17 -10 0 -11 -12 0 -14 -11 0 -12 3 0 4 -3 0 -4 18 blend rrcurveto - + 3 vsindex -58 30 100 30 70 22 -22 30 94 30 19 31 -17 28 152 20 -20 30 -12 12 66 30 -30 89 -5 30 -30 121 -11 0 -24 36 0 81 -32 0 -74 22 0 52 -17 0 -39 16 1 37 -16 -1 -37 21 0 48 -27 0 -63 21 0 49 -11 0 -26 41 0 93 -47 0 -107 24 0 56 -34 0 -78 11 0 26 -11 0 -26 17 0 39 -15 0 -35 15 0 35 -19 0 -43 12 0 26 -12 0 -26 4 0 8 -5 0 -11 28 0 65 -28 0 -65 23 0 52 28 blend hstemhm @@ -885,7 +528,7 @@ -30 -97 -92 -60 -107 -36 8 -6 12 -11 4 -6 105 41 99 65 32 106 5 0 12 7 0 15 15 0 34 1 0 3 7 0 16 1 0 2 10 0 22 -6 0 -15 18 0 41 -17 0 -37 8 0 18 -8 0 -19 -2 0 -5 4 0 9 -12 0 -27 7 0 16 -1 0 -2 6 0 14 18 blend rrcurveto - + 1 vsindex -80 27 95 49 -48 48 -45 45 -30 30 -16 16 -13 13 49 30 48 30 47 19 -19 30 53 30 -18 18 51 11 -11 30 -22 22 62 30 60 30 15 81 -30 30 -30 102 -10 1 -14 41 -2 59 -53 2 -76 27 -1 38 -26 1 -37 26 -1 37 -27 1 -39 27 -1 39 -27 1 -39 27 -1 39 -13 0 -19 13 0 19 -14 0 -20 14 0 20 -19 1 -27 13 -1 19 -18 1 -26 13 0 19 -18 0 -26 18 0 26 -18 0 -26 23 -1 33 -21 1 -30 42 -2 60 -29 1 -42 29 -1 42 -19 1 -27 7 0 10 -7 0 -10 26 -1 37 -24 1 -34 24 -1 34 -27 1 -39 24 -1 34 -26 1 -37 26 -1 37 -40 1 -45 53 -2 66 -44 2 -62 44 -2 62 -44 2 -62 18 0 23 42 blend hstemhm @@ -1032,7 +675,7 @@ 30 247 75 -4 106 10 0 14 2 blend hlineto - + 4 vsindex -50 30 -19 19 114 30 44 30 23 30 -30 114 35 30 316 30 -10 10 37 12 -21 0 -26 66 0 82 -29 21 -10 29 -21 10 -64 0 -80 55 0 69 -79 0 -99 75 0 94 -46 0 -58 56 0 71 -56 0 -71 26 21 59 -18 -25 -54 54 0 68 -76 8 -85 58 0 73 -24 0 -31 24 0 31 -46 -4 -63 30 0 37 20 blend hstemhm @@ -1124,6 +767,363 @@ -20 14 -6 -2 -60 0 -75 32 0 40 -12 0 -14 -2 0 -3 4 blend rlineto + + 5 vsindex + 121 30 -22 22 148 30 -30 136 23 30 129 30 116 30 -21 4 -29 52 3 92 -32 23 -21 32 -23 21 -54 9 -83 50 4 90 -50 -4 -90 22 27 62 -2 -43 -47 41 0 69 -44 0 -74 37 0 62 -50 0 -84 36 0 61 14 blend + hstemhm + 167 30 129 30 -16 16 123 30 48 30 -6 29 -29 111 -30 30 -16 16 201 30 1 29 -29 0 -49 64 0 108 -34 0 -57 51 0 85 -29 0 -48 29 0 48 -72 -2 -123 60 2 103 -69 0 -115 46 0 77 -42 0 -70 42 0 70 -42 0 -70 67 0 111 -51 0 -85 51 0 85 -29 0 -48 29 0 48 -79 0 -132 47 0 79 -45 0 -75 42 0 70 22 blend + vstemhm + hintmask 011011111011001010000000 + 326 793 1 0 2 17 0 29 2 blend + rmoveto + -280 24 0 40 1 blend + vlineto + -47 16 -8 59 -31 0 -53 6 0 10 -13 0 -21 20 0 33 4 blend + vhcurveto + hintmask 000010000000100000000000 + 13 120 4 0 6 -46 0 -76 2 blend + 0 13 4 0 7 1 blend + hhcurveto + 49 10 20 82 4 12 0 19 12 0 20 3 0 5 2 0 3 4 0 8 5 blend + hvcurveto + hintmask 101010101000010000000000 + -10 2 -11 5 -8 6 -12 0 -21 3 0 5 -21 0 -35 6 0 11 -9 0 -14 7 0 11 6 blend + rrcurveto + -75 19 0 32 1 blend + -3 -5 -10 -29 -24 -102 1 0 1 1 0 2 7 0 12 9 0 14 42 0 70 5 blend + 0 -18 6 0 10 1 blend + hhcurveto + -38 -6 4 21 10 0 18 2 0 3 0 0 -1 4 0 7 4 blend + hvcurveto + 280 -25 0 -41 1 blend + vlineto + -41 -464 -40 -8 -74 10 20 41 2 blend + rmoveto + -30 617 30 -50 -4 -90 -5 12 5 50 4 90 3 blend + vlineto + -661 -178 11 -4 12 4 -13 -7 2 blend + rmoveto + -30 689 30 -52 -3 -92 -11 0 -18 52 3 92 3 blend + vlineto + hintmask 010101100111001000000000 + -481 284 -27 -2 -48 -32 36 -21 2 blend + rmoveto + -306 30 306 0 -13 0 60 2 103 0 13 0 3 blend + vlineto + 218 0 -61 0 -102 -1 0 -1 2 blend + rmoveto + -306 30 306 0 -13 0 61 1 104 0 13 0 3 blend + vlineto + -417 358 -17 -1 -30 19 -43 -12 2 blend + rmoveto + -30 217 -116 -217 -30 247 176 -36 0 -61 -52 0 -87 50 0 84 52 0 87 -37 0 -62 -6 0 -10 23 0 39 7 blend + vlineto + 75 -26 0 -44 1 blend + hmoveto + hintmask 000010100000001001000000 + -280 24 0 40 1 blend + vlineto + -47 17 -8 60 -31 0 -53 5 0 9 -13 0 -21 20 0 33 4 blend + vhcurveto + 12 125 5 0 8 -47 0 -78 2 blend + 0 14 4 0 7 1 blend + hhcurveto + 49 11 20 82 3 12 0 20 12 0 19 3 1 6 2 1 6 5 0 9 5 blend + hvcurveto + -9 2 -12 4 -8 7 -14 1 -22 3 0 5 -19 -1 -34 7 0 12 -9 0 -14 6 0 10 6 blend + rrcurveto + -75 19 -1 29 1 blend + -3 -5 -10 -30 -25 -105 1 -1 1 8 0 13 8 0 14 42 0 70 4 blend + 0 -18 6 0 9 1 blend + hhcurveto + -40 -6 4 21 11 0 19 2 0 3 0 0 -1 4 1 8 4 blend + hvcurveto + 280 -25 -1 -42 1 blend + vlineto + hintmask 000001110000000110000000 + -16 -29 0 -48 1 blend + hmoveto + -30 217 -116 -217 -30 247 176 -36 0 -61 -50 0 -84 50 0 84 50 0 84 -37 0 -62 -3 0 -5 23 0 39 7 blend + vlineto + -424 -714 -19 0 -32 -12 0 -21 2 blend + rmoveto + -52 -54 -91 -49 -81 -33 8 -5 11 -13 4 -6 80 36 94 56 56 58 7 0 11 9 0 15 5 0 9 11 0 18 -2 0 -3 9 0 15 13 0 22 -11 0 -18 24 0 39 -22 0 -36 11 0 19 -12 0 -21 4 0 7 -4 0 -6 2 0 2 -2 0 -4 -1 0 -1 3 0 5 18 blend + rrcurveto + 200 -7 -92 0 -154 -5 0 -8 2 blend + rmoveto + 76 -41 90 -62 46 -42 -6 0 -10 5 0 8 -5 0 -7 6 0 10 -4 0 -7 4 0 7 6 blend + rrcurveto + 22 23 -46 42 -91 60 -75 39 60 0 100 29 0 48 0 0 -1 -3 0 -5 3 0 5 -7 0 -11 6 0 11 -7 0 -11 8 blend + rlinecurve + -499 750 -48 0 -81 6 0 10 2 blend + rmoveto + -54 -167 -87 -164 -96 -108 7 -6 11 -12 4 -6 98 116 88 165 58 175 7 0 13 15 0 25 10 0 16 14 0 22 11 0 19 10 0 17 9 0 15 -20 0 -33 15 0 24 -44 0 -73 4 0 7 -18 0 -30 4 0 6 4 0 6 3 0 6 19 0 32 0 0 -1 1 0 1 18 blend + rrcurveto + -113 -214 -60 0 -100 -23 0 -37 2 blend + rmoveto + -691 30 718 20 0 33 64 0 108 43 0 72 3 blend + vlineto + -1 -1 0 -3 1 blend + 2 rlineto + + + 5 vsindex + -67 29 219 30 154 30 -16 16 150 30 -30 122 -85 30 -18 18 87 30 -30 140 -122 12 -14 0 -22 46 0 78 -59 -3 -106 46 0 77 -53 -9 -92 46 2 81 -18 20 -1 18 -20 1 -54 13 -80 46 2 81 -46 -2 -81 25 31 61 -14 -34 -48 60 0 100 -64 0 -107 64 0 107 -55 0 -92 54 0 90 -54 0 -90 36 0 59 -19 0 -31 37 0 62 22 blend + hstemhm + 51 188 -30 30 -30 149 21 30 -18 18 -13 13 66 30 -12 12 135 30 41 30 172 30 -6 28 -8 0 -14 30 0 50 -62 0 -103 62 0 103 -62 0 -103 32 0 53 -5 0 -7 59 0 98 -24 0 -41 24 0 41 -16 0 -27 16 0 27 -32 0 -53 53 0 88 -33 0 -56 33 0 56 -87 0 -146 63 0 106 -42 0 -70 54 0 90 -99 0 -165 55 0 91 -42 0 -70 45 0 75 24 blend + vstemhm + hintmask 000000100001000000000000 + 51 612 -8 0 -14 29 0 49 2 blend + rmoveto + -30 -60 0 -100 1 blend + vlineto + hintmask 000000100000010000000000 + 307 30 60 0 100 1 blend + hlineto + hintmask 000000010010100100000000 + -149 228 -32 0 -53 -20 0 -34 2 blend + rmoveto + -918 30 918 -19 0 -32 62 0 103 19 0 32 3 blend + vlineto + -36 -238 -55 0 -91 -32 0 -53 2 blend + rmoveto + -31 -160 -74 -193 -68 -95 7 -5 10 -11 6 -8 70 101 74 203 33 160 6 0 10 25 0 42 13 0 21 23 0 37 4 0 7 1 0 2 8 0 14 -18 0 -30 13 0 21 -27 0 -44 4 0 7 -19 0 -32 1 0 2 6 0 10 -12 0 -20 -2 0 -3 -2 0 -4 -1 0 -2 18 blend + rrcurveto + 4 -143 19 0 32 77 0 128 2 blend + rmoveto + -21 -16 25 -26 72 -92 21 -33 -23 0 -38 -34 0 -57 1 0 2 -15 0 -24 -12 0 -21 -6 0 -11 2 0 3 -18 0 -29 8 blend + rlinecurve + 24 24 -18 25 -81 96 -22 22 28 0 48 63 0 105 2 0 2 -1 0 -2 1 0 3 10 0 16 1 0 1 1 0 2 8 blend + rlinecurve + 157 278 1 0 1 -14 0 -23 2 blend + rmoveto + hintmask 000000001000000100000000 + -30 559 -54 0 -90 -17 3 -23 2 blend + vlineto + hintmask 010000000010000000100000 + 30 54 0 90 1 blend + vlineto + -457 -518 29 -3 43 -9 -3 -20 2 blend + rmoveto + -30 176 30 -46 0 -77 -17 0 -27 46 0 77 3 blend + vlineto + hintmask 000000000100000001010000 + -194 120 -3 0 -5 -42 37 -35 2 blend + rmoveto + -365 30 365 38 -29 45 53 0 88 -38 29 -45 3 blend + vlineto + 135 508 -87 0 -146 33 -34 24 2 blend + rmoveto + hintmask 000000000010000000010000 + -122 30 -19 0 -31 63 0 106 2 blend + vlineto + hintmask 000101000100000000010000 + 122 19 0 31 1 blend + vlineto + -115 -172 -60 0 -100 -27 34 -19 2 blend + rmoveto + -288 30 288 11 -24 18 50 0 83 -11 24 -18 3 blend + vlineto + 148 -62 -2 -106 1 blend + hmoveto + -288 30 288 11 -24 18 50 0 83 -11 24 -18 3 blend + vlineto + 156 -394 -30 2 -47 19 -34 6 2 blend + rmoveto + -52 -36 -89 -48 -61 -29 7 0 12 2 0 4 14 0 23 3 0 4 11 0 18 4 0 8 6 blend + rrcurveto + 15 -21 62 28 86 41 57 44 25 0 42 -39 0 -66 -10 0 -17 -4 0 -6 -12 0 -19 -3 0 -5 -6 0 -11 -5 0 -9 8 blend + rlinecurve + hintmask 101010000000000010001100 + -541 323 10 0 17 44 5 84 2 blend + rmoveto + -30 517 -150 -517 -30 547 210 -46 -2 -81 -74 0 -123 54 -13 80 74 0 123 -46 -2 -81 -19 0 -32 38 17 82 7 blend + vlineto + -232 -242 -10 0 -16 -28 29 -27 2 blend + rmoveto + -344 58 -32 71 1 blend + vlineto + -47 15 -9 54 -33 -2 -58 3 0 4 -15 0 -25 22 0 37 4 blend + vhcurveto + hintmask 100000000010001000001010 + 12 100 3 0 5 -47 0 -78 2 blend + 0 12 4 0 6 1 blend + hhcurveto + 48 10 25 102 3 12 0 20 11 0 19 4 1 9 11 -1 16 5 0 8 5 blend + hvcurveto + -9 3 -11 4 -8 6 -14 0 -23 3 -1 5 -23 1 -37 8 1 15 -8 -1 -15 8 0 12 6 blend + rrcurveto + -97 11 1 20 1 blend + -3 -4 -14 -29 -21 -84 0 0 1 1 -1 1 10 0 16 10 1 17 43 -1 71 5 blend + 0 -16 7 0 12 1 blend + hhcurveto + -33 -6 5 22 13 0 22 3 0 5 -1 0 -2 4 0 7 4 blend + hvcurveto + 344 -59 34 -71 1 blend + vlineto + -346 -371 -24 0 -41 65 -34 78 2 blend + rmoveto + 10 -31 77 16 100 22 99 21 3 0 5 -54 0 -90 -2 0 -3 -3 0 -5 -9 0 -15 -6 0 -10 -10 0 -17 -5 0 -8 8 blend + rlinecurve + -2 29 -108 -22 -104 -22 -72 -13 -3 0 -5 52 0 86 9 0 16 6 0 10 8 0 13 6 0 11 4 0 6 4 0 6 8 blend + rlinecurve + -16 767 -44 0 -72 -13 0 -21 2 blend + rmoveto + -316 -6 0 -11 1 blend + vlineto + -142 -7 -194 -74 -141 2 0 2 -2 0 -2 2 0 4 6 0 9 4 blend + vhcurveto + 8 -3 13 -7 5 -6 13 0 21 -7 0 -11 25 0 43 -20 0 -34 11 0 17 -10 0 -17 6 blend + rrcurveto + 75 143 10 205 145 4 0 7 3 0 5 2 0 4 21 0 35 9 0 15 5 blend + vvcurveto + 316 6 0 11 1 blend + vlineto + + + 3 vsindex + -71 30 427 30 153 30 33 111 -30 30 -30 126 -6 0 -13 45 0 102 -58 0 -132 38 0 87 -48 0 -111 38 0 87 -4 -2 -13 21 2 53 -43 0 -99 43 0 99 -43 0 -99 24 0 55 12 blend + hstemhm + 159 30 -19 19 126 30 -6 30 281 30 160 30 18 31 -7 0 -16 50 0 114 -18 0 -42 18 0 42 -71 0 -161 50 0 114 -26 0 -61 48 0 111 -66 0 -150 51 0 115 -68 0 -154 50 0 114 -36 -1 -84 44 1 101 14 blend + vstemhm + hintmask 1110100101110000 + 58 743 -1 0 -2 26 0 60 2 blend + rmoveto + -30 887 30 -43 0 -99 2 0 5 43 0 99 3 blend + vlineto + hintmask 0000010010000000 + -630 96 -29 0 -66 -19 0 -44 2 blend + rmoveto + hintmask 0001000010000000 + -207 30 -2 -2 -9 50 0 114 2 blend + vlineto + hintmask 0000010010100000 + 207 2 2 9 1 blend + vlineto + 305 -44 0 -100 1 blend + hmoveto + hintmask 0001000000100000 + -207 30 -2 -2 -9 51 0 115 2 blend + vlineto + hintmask 0010011000100000 + 207 2 2 9 1 blend + vlineto + -521 -240 -36 0 -82 2 0 4 2 blend + rmoveto + -206 -5 0 -10 1 blend + vlineto + -137 -15 -184 -109 -136 5 0 11 3 0 6 5 0 10 -1 0 -1 8 0 19 5 blend + vhcurveto + 7 -3 12 -9 5 -6 12 0 27 -6 0 -13 22 0 51 -15 0 -35 10 0 21 -8 0 -19 6 blend + rrcurveto + hintmask 1110000101010000 + 112 139 18 194 141 3 0 7 -4 0 -8 1 0 3 11 0 24 4 0 10 5 blend + vvcurveto + 207 5 0 11 1 blend + vlineto + -19 -18 0 -42 1 blend + hmoveto + -30 670 -153 -670 -30 700 213 -38 0 -87 -64 0 -144 48 0 111 64 0 144 -38 0 -87 -14 0 -30 28 0 63 7 blend + vlineto + -531 -249 -15 0 -36 -23 0 -51 2 blend + rmoveto + -343 50 0 112 1 blend + vlineto + -66 31 -12 105 -29 0 -66 6 0 14 -13 0 -28 29 0 66 4 blend + vhcurveto + 23 278 5 0 12 -59 0 -134 2 blend + 0 24 6 0 14 1 blend + hhcurveto + hintmask 1000000001001000 + 96 15 31 123 8 20 0 44 11 0 26 4 0 8 14 0 32 5 0 11 5 blend + hvcurveto + -9 3 -13 4 -9 7 -13 0 -30 2 0 5 -21 0 -48 8 0 17 -10 -1 -23 6 0 15 6 blend + rrcurveto + -117 -6 -11 -21 -69 -56 -236 8 0 18 -1 1 -1 1 -1 1 3 0 7 3 1 9 7 0 15 49 0 112 7 blend + 0 -41 4 0 8 1 blend + hhcurveto + -84 -16 11 37 4 0 10 2 0 5 -3 0 -7 1 0 2 4 blend + hvcurveto + 343 -51 0 -115 1 blend + vlineto + 444 -47 -59 0 -135 26 0 59 2 blend + rmoveto + -101 -52 -195 -56 -169 -40 4 -7 5 -10 3 -7 172 40 193 54 120 56 4 0 8 3 0 7 18 0 43 9 0 19 12 0 26 8 0 19 5 0 12 -10 0 -22 7 0 15 -18 0 -41 1 0 3 -11 0 -25 -8 0 -19 -9 0 -21 -8 0 -18 -8 0 -19 5 0 11 0 0 1 18 blend + rrcurveto + + + 2 vsindex + 64 30 77 30 76 30 74 30 72 30 109 30 25 84 -30 30 -30 108 -2 0 -2 42 0 47 -48 0 -54 38 0 43 -48 0 -54 38 0 43 -46 0 -52 42 0 47 -43 0 -48 56 1 63 -72 -1 -81 57 1 64 -8 -32 -41 30 32 65 -65 -1 -73 65 1 73 -65 -1 -73 43 0 49 18 blend + hstemhm + 135 30 21 30 102 30 14 30 205 30 17 30 113 30 19 30 -19 0 -21 87 2 98 -86 -2 -97 99 1 111 -125 -1 -141 98 1 111 -79 -1 -89 75 1 84 -99 -1 -111 75 1 84 -77 -1 -86 100 1 112 -127 -1 -143 105 1 118 -102 -1 -114 94 1 105 16 blend + vstemhm + hintmask 111111010011001100000000 + 53 761 -3 0 -3 36 0 40 2 blend + rmoveto + -30 896 30 -65 -1 -73 5 0 5 65 1 73 3 blend + vlineto + hintmask 000000001001000000000000 + -631 78 -46 0 -52 -22 0 -24 2 blend + rmoveto + hintmask 000000100001000000000000 + -162 30 -8 -32 -41 98 1 111 2 blend + vlineto + hintmask 000000001001001000000000 + 162 8 32 41 1 blend + vlineto + 296 -105 -1 -118 1 blend + hmoveto + hintmask 000000100000001000000000 + -162 30 -8 -32 -41 100 1 112 2 blend + vlineto + hintmask 000000001000001000000000 + 162 8 32 41 1 blend + vlineto + hintmask 000011000100110010000000 + -47 -217 -23 0 -26 -57 -1 -64 2 blend + rmoveto + 209 -109 -209 -101 -1 -113 72 1 81 101 1 113 3 blend + hlineto + -235 109 24 0 27 -72 -1 -81 2 blend + rmoveto + 205 -109 -205 -99 -1 -111 72 1 81 99 1 111 3 blend + hlineto + -227 109 18 1 21 -72 -1 -81 2 blend + rmoveto + 197 -109 -197 -93 -2 -105 72 1 81 93 2 105 3 blend + hlineto + -30 139 -87 -2 -98 -15 0 -17 2 blend + rmoveto + -169 731 169 -41 0 -46 38 0 42 41 0 46 3 blend + vlineto + hintmask 111100000010000100000000 + -650 -375 62 1 70 -32 0 -36 2 blend + rmoveto + 571 -76 -571 -159 -1 -179 48 0 54 159 1 179 3 blend + hlineto + -30 -38 0 -43 1 blend + vmoveto + 571 -77 -571 -159 -1 -179 48 0 54 159 1 179 3 blend + hlineto + 287 -66 -1 -74 1 blend + vmoveto + 571 -74 -571 -159 -1 -179 46 0 52 159 1 179 3 blend + hlineto + -30 104 -99 -1 -111 -4 0 -5 2 blend + rmoveto + -347 631 347 -18 0 -20 45 0 50 18 0 20 3 blend + vlineto + -216 -389 -86 -1 -96 -31 0 -35 2 blend + rmoveto + 127 -34 121 -39 72 -31 -17 0 -19 2 0 2 -13 0 -15 -2 0 -2 -13 0 -15 3 0 3 6 blend + rrcurveto + 31 22 -78 32 -126 39 -121 136 1 153 39 0 44 1 0 1 -3 0 -3 -8 0 -9 4 0 5 9 0 10 7 blend + 31 rlinecurve + -258 -1 -67 -1 -75 0 0 -1 2 blend + rmoveto + -81 -39 -128 -36 -107 -23 8 -6 12 -12 5 -6 103 25 130 41 86 43 9 0 10 6 0 7 3 0 4 7 0 8 -4 0 -5 7 0 8 19 0 22 -14 0 -16 32 0 36 -32 0 -36 17 0 19 -19 0 -21 3 0 3 -1 0 -1 5 0 6 2 0 2 1 0 1 4 0 5 18 blend + rrcurveto + diff --git a/Tests/varLib/data/test_results/TestVVAR.ttx b/Tests/varLib/data/test_results/TestVVAR.ttx index 48ca40858..53c038c19 100644 --- a/Tests/varLib/data/test_results/TestVVAR.ttx +++ b/Tests/varLib/data/test_results/TestVVAR.ttx @@ -26,12 +26,12 @@ - - - - - - + + + + + + @@ -41,12 +41,12 @@ - - - - - - + + + + + +