diff --git a/Tests/varLib/data/master_ttx_interpolatable_otf/TestFamily2-Master0.ttx b/Tests/varLib/data/master_ttx_interpolatable_otf/TestFamily2-Master0.ttx new file mode 100644 index 000000000..a6a8e003a --- /dev/null +++ b/Tests/varLib/data/master_ttx_interpolatable_otf/TestFamily2-Master0.ttx @@ -0,0 +1,855 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Paul D. Hunt + + + Alternate a + + + Test Family 2 + + + Regular + + + Version 2.020;ADBO;Test Family 2 Regular + + + Test Family 2 + + + Version 2.020 + + + TestFamily2-Master0 + + + Paul D. Hunt + + + Master 0 + + + Alternate a + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + rmoveto + 18 0 14 14 0 18 rrcurveto + 0 18 -14 14 -18 0 rrcurveto + -18 0 -14 -14 0 -18 rrcurveto + 0 -18 14 -14 18 0 rrcurveto + return + + + rmoveto + 64 0 60 36 50 40 rrcurveto + 2 0 rlineto + 4 -64 rlineto + 26 0 rlineto + 0 310 rlineto + 0 96 -34 84 -112 0 rrcurveto + -78 0 -66 -40 -30 -22 rrcurveto + 16 -24 rlineto + 30 24 58 34 68 0 rrcurveto + 100 0 20 -86 -2 -78 rrcurveto + -216 -24 -98 -50 0 -107 rrcurveto + 0 -91 64 -38 74 0 rrcurveto + 2 28 rmoveto + -58 0 -50 28 0 74 rrcurveto + 0 82 72 48 210 24 rrcurveto + 0 -174 rlineto + -64 -54 -52 -28 -58 0 rrcurveto + endchar + + + -40 22 -58 0 rrcurveto + -116 0 -98 -98 0 -154 rrcurveto + 0 -162 78 -88 120 0 rrcurveto + 2 28 rmoveto + -108 0 -60 90 0 132 rrcurveto + 0 124 78 100 102 0 rrcurveto + 50 0 44 -18 54 -48 rrcurveto + 0 -296 rlineto + -54 -54 -50 -30 -56 0 rrcurveto + endchar + + + 0 rlineto + 0 114 rlineto + 0 72 24 42 54 0 rrcurveto + 18 0 20 -4 20 -10 rrcurveto + 10 26 rlineto + -22 10 -24 6 -20 0 rrcurveto + -68 0 -42 -44 0 -94 rrcurveto + 0 -118 rlineto + -66 -4 rlineto + 0 -24 rlineto + 66 0 rlineto + 0 -450 rlineto + 30 0 rlineto + 0 450 rlineto + return + + + 580 rmoveto + 63 0 16 66 4 56 rrcurveto + -26 2 rlineto + -2 -52 -16 -46 -37 0 rrcurveto + -59 0 -20 100 -76 0 rrcurveto + -64 0 -16 -65 -4 -57 rrcurveto + 26 -2 rlineto + 2 54 16 44 38 0 rrcurveto + 58 0 20 -100 77 0 rrcurveto + return + + + -10 26 rlineto + -18 -8 -26 -8 -18 0 rrcurveto + -70 0 -14 44 0 62 rrcurveto + 0 328 rlineto + 142 0 rlineto + 0 28 rlineto + -142 0 rlineto + 0 140 rlineto + -26 0 rlineto + -4 -140 rlineto + return + + + 540 252 -12 rmoveto + 66 0 54 36 40 40 rrcurveto + 2 0 rlineto + 4 -64 rlineto + 26 0 rlineto + 0 return + + + 0 21 rrcurveto + 0 20 -13 11 -18 0 rrcurveto + -16 0 -13 -11 0 -20 rrcurveto + 0 -21 13 return + + + + + + 624 96 0 rmoveto + 432 0 rlineto + 0 660 rlineto + -432 0 rlineto + 214 -294 rmoveto + -56 92 rlineto + -94 168 rlineto + 302 0 rlineto + -94 -168 rlineto + -54 -92 rlineto + -180 -292 rmoveto + 0 536 rlineto + 154 -270 rlineto + 200 -266 rmoveto + -152 266 rlineto + 152 270 rlineto + -344 -578 rmoveto + 102 176 rlineto + 64 106 rlineto + 4 0 rlineto + 62 -106 rlineto + 100 -176 rlineto + endchar + + + 520 476 0 rmoveto + 34 0 rlineto + -236 660 rlineto + -28 0 rlineto + -236 -660 rlineto + 32 0 rlineto + 83 236 rlineto + 269 0 rlineto + -212 160 rmoveto + 28 80 24 68 24 82 rrcurveto + 4 0 rlineto + 24 -82 24 -68 28 -80 rrcurveto + 46 -132 rlineto + -249 0 rlineto + endchar + + + 444 400 0 rmoveto + 34 0 rlineto + -198 510 rlineto + -29 0 rlineto + -197 -510 rlineto + 32 0 rlineto + 67 176 rlineto + 225 0 rlineto + -176 128 rmoveto + 23 62 18 48 21 61 rrcurveto + 4 0 rlineto + 21 -60 18 -48 23 -63 rrcurveto + 38 -100 rlineto + -204 0 rlineto + endchar + + + 486 198 -12 -106 callsubr + + + -101 callsubr + 478 rlineto + -28 0 rlineto + -2 -46 rlineto + -2 0 rlineto + -46 36 -105 callsubr + + + 562 550 16 rmoveto + -39 15 -44 27 -47 39 rrcurveto + 53 67 39 86 26 92 rrcurveto + -30 0 rlineto + -24 -88 -35 -77 -50 -62 rrcurveto + -70 64 -72 88 -47 90 rrcurveto + 76 58 78 57 0 84 rrcurveto + 0 66 -36 50 -68 0 rrcurveto + -76 0 -54 -60 0 -84 rrcurveto + 0 -52 17 -57 28 -57 rrcurveto + -70 -53 -67 -58 0 -85 rrcurveto + 0 -110 86 -68 100 0 rrcurveto + 73 0 56 35 48 51 rrcurveto + 51 -43 46 -28 40 -15 rrcurveto + -378 542 rmoveto + 0 62 36 52 62 0 rrcurveto + 56 0 20 -46 0 -44 rrcurveto + 0 -72 -66 -50 -69 -52 rrcurveto + -24 52 -15 51 0 47 rrcurveto + -90 -362 rmoveto + 0 71 54 51 63 49 rrcurveto + 48 -91 73 -88 72 -67 rrcurveto + -43 -45 -53 -32 -58 0 rrcurveto + -84 0 -72 60 0 92 rrcurveto + endchar + + + 486 319 -103 callsubr + -121 -592 -106 callsubr + + + -101 callsubr + 722 rlineto + -30 0 rlineto + 0 -202 rlineto + 2 -90 rlineto + -50 38 -105 callsubr + + + 252 244 450 rmoveto + 0 28 rlineto + -114 -104 callsubr + endchar + + + 518 508 6 rmoveto + -102 callsubr + -192 -104 callsubr + 192 0 rlineto + 0 -324 rlineto + 0 -82 24 -56 88 0 rrcurveto + 16 0 30 8 28 10 rrcurveto + endchar + + + 526 96 0 rmoveto + 30 0 rlineto + 0 366 rlineto + 62 64 44 32 60 0 rrcurveto + 82 0 34 -52 0 -106 rrcurveto + 0 -304 rlineto + 30 0 rlineto + 0 308 rlineto + 0 124 -46 58 -98 0 rrcurveto + -66 0 -50 -38 -50 -50 rrcurveto + -2 0 rlineto + -4 76 rlineto + -26 0 rlineto + endchar + + + 200 endchar + + + 302 218 -12 rmoveto + 16 0 30 8 28 10 rrcurveto + -102 callsubr + -76 -4 rlineto + 0 -24 rlineto + 76 0 rlineto + 0 -324 rlineto + 0 -82 24 -56 88 0 rrcurveto + endchar + + + 0 77 -103 callsubr + endchar + + + 0 -86 602 -107 callsubr + 172 0 -107 callsubr + endchar + + + 0 -86 -188 -107 callsubr + 172 0 -107 callsubr + endchar + + + 0 77 -220 rmoveto + 63 0 16 66 4 56 rrcurveto + -26 2 rlineto + -2 -52 -16 -46 -37 0 rrcurveto + -59 0 -20 100 -76 0 rrcurveto + -64 0 -16 -65 -4 -57 rrcurveto + 26 -2 rlineto + 2 54 16 44 38 0 rrcurveto + 58 0 20 -100 77 0 rrcurveto + endchar + + + 592 295 426 rmoveto + 18 0 13 12 0 20 rrcurveto + 0 20 -13 12 -18 0 rrcurveto + -16 0 -13 -12 0 -20 rrcurveto + 0 -20 13 -12 16 0 rrcurveto + -106 -26 rmoveto + 18 0 12 12 0 19 rrcurveto + 0 22 -13 10 -17 0 rrcurveto + -16 0 -13 -10 0 -22 rrcurveto + 0 -19 13 -12 16 0 rrcurveto + 212 -1 rmoveto + 19 0 11 13 0 19 rrcurveto + 0 21 -13 10 -17 0 rrcurveto + -15 0 -13 -10 0 -21 rrcurveto + 0 -19 13 -13 15 0 rrcurveto + -291 -81 rmoveto + 19 0 12 12 -100 callsubr + -12 16 0 rrcurveto + 370 -1 rmoveto + 19 0 11 12 0 20 rrcurveto + 0 20 -13 11 -17 0 rrcurveto + -15 0 -14 -11 0 -20 rrcurveto + 0 -20 14 -12 15 0 rrcurveto + -398 -110 rmoveto + 19 0 13 12 0 20 rrcurveto + 0 21 -13 10 -19 0 rrcurveto + -15 0 -13 -10 0 -21 rrcurveto + 0 -20 13 -12 15 0 rrcurveto + 426 0 rmoveto + 18 0 12 12 0 20 rrcurveto + 0 21 -15 10 -15 0 rrcurveto + -17 0 -13 -10 0 -21 rrcurveto + 0 -20 13 -12 17 0 rrcurveto + -398 -110 rmoveto + 19 0 12 13 0 19 rrcurveto + 0 21 -13 11 -18 0 rrcurveto + -16 0 -13 -11 0 -21 rrcurveto + 0 -19 13 -13 16 0 rrcurveto + 370 0 rmoveto + 19 0 11 13 0 19 rrcurveto + 0 21 -13 11 -17 0 rrcurveto + -15 0 -14 -11 0 -21 rrcurveto + 0 -19 14 -13 15 0 rrcurveto + -291 -82 rmoveto + 18 0 12 12 0 22 rrcurveto + 0 19 -13 10 -17 0 rrcurveto + -16 0 -13 -10 0 -19 rrcurveto + 0 -22 13 -12 16 0 rrcurveto + 212 0 rmoveto + 19 0 11 12 0 22 rrcurveto + 0 19 -13 10 -17 0 rrcurveto + -15 0 -13 -10 0 -19 rrcurveto + 0 -22 13 -12 15 0 rrcurveto + -106 -27 rmoveto + 18 0 13 11 -100 callsubr + -11 16 0 rrcurveto + endchar + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/varLib/data/master_ttx_interpolatable_otf/TestFamily2-Master1.ttx b/Tests/varLib/data/master_ttx_interpolatable_otf/TestFamily2-Master1.ttx new file mode 100644 index 000000000..b7ca3a9da --- /dev/null +++ b/Tests/varLib/data/master_ttx_interpolatable_otf/TestFamily2-Master1.ttx @@ -0,0 +1,693 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Paul D. Hunt + + + Test Family 2 + + + Regular + + + Version 2.020;ADBO;Test Family 2 Regular + + + Test Family 2 + + + Version 2.020 + + + TestFamily2-Master1 + + + Paul D. Hunt + + + Master 1 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + rmoveto + 47 0 33 35 0 45 rrcurveto + 0 45 -33 35 -47 0 rrcurveto + -47 0 -33 -35 0 -45 rrcurveto + 0 -45 33 -35 47 0 rrcurveto + return + + + rmoveto + 54 0 44 24 40 36 rrcurveto + 4 0 rlineto + 12 -48 rlineto + 140 0 rlineto + 0 278 rlineto + 0 164 -78 70 -130 0 rrcurveto + -78 0 -72 -24 -70 -42 rrcurveto + 60 -112 rlineto + 52 28 38 14 36 0 rrcurveto + 44 0 22 -16 4 -36 rrcurveto + -192 -20 -80 -58 0 -104 rrcurveto + 0 -82 56 -72 94 0 rrcurveto + 60 132 rmoveto + -30 0 -16 13 0 23 rrcurveto + 0 28 26 26 82 12 rrcurveto + 0 -68 rlineto + -18 -20 -16 -14 -28 0 rrcurveto + endchar + + + 0 rlineto + 0 12 rlineto + 0 47 20 15 32 0 rrcurveto + 16 0 18 -4 16 -6 rrcurveto + 30 126 rlineto + -22 8 -38 10 -46 0 rrcurveto + -148 0 -50 -95 0 -107 rrcurveto + 0 -7 rlineto + -66 -5 rlineto + 0 -128 rlineto + 66 0 rlineto + 0 -366 rlineto + 172 0 rlineto + 0 366 rlineto + return + + + -98 0 -164 rrcurveto + 0 -162 80 -100 124 0 rrcurveto + 46 140 rmoveto + -46 0 -28 34 0 90 rrcurveto + 0 88 34 32 36 0 rrcurveto + 22 0 26 -6 20 -18 rrcurveto + 0 -184 rlineto + -18 -28 -20 -8 -26 0 rrcurveto + endchar + + + -26 124 rlineto + -12 -4 -16 -4 -16 0 rrcurveto + -32 0 -28 18 0 55 rrcurveto + 0 171 rlineto + 114 0 rlineto + 0 134 rlineto + -114 0 rlineto + 0 130 rlineto + -142 0 rlineto + -20 -130 rlineto + return + + + 113 rrcurveto + -106 6 rlineto + -4 -36 -10 -10 -16 0 rrcurveto + -26 0 -38 56 -60 0 rrcurveto + -80 0 -50 -45 -2 -113 rrcurveto + 106 -6 rlineto + 4 36 10 10 16 0 rrcurveto + 26 0 38 -56 60 0 rrcurveto + return + + + 580 240 -12 rmoveto + 44 0 48 24 34 34 rrcurveto + 4 0 rlineto + 12 -46 rlineto + 140 0 rlineto + 0 return + + + 0 rrcurveto + -23 0 -21 -16 0 -28 rrcurveto + 0 -30 21 -17 23 0 rrcurveto + return + + + rrcurveto + 0 28 -19 16 -26 0 rrcurveto + -23 0 -20 -16 0 -28 rrcurveto + 0 return + + + 0 rlineto + 0 -174 rlineto + 0 -122 54 -82 130 0 rrcurveto + return + + + rmoveto + 26 0 19 17 0 30 rrcurveto + 0 28 -21 16 -24 0 rrcurveto + return + + + + + + 704 76 0 rmoveto + 552 0 rlineto + 0 660 rlineto + -552 0 rlineto + 274 -236 rmoveto + -40 96 rlineto + -18 36 rlineto + 120 0 rlineto + -18 -36 rlineto + -40 -96 rlineto + -166 -252 rmoveto + 0 336 rlineto + 82 -168 rlineto + 246 -168 rmoveto + -82 168 rlineto + 82 168 rlineto + -228 -404 rmoveto + 26 56 rlineto + 36 96 rlineto + 4 0 rlineto + 36 -96 rlineto + 26 -56 rlineto + endchar + + + 584 412 0 rmoveto + 182 0 rlineto + -198 650 rlineto + -208 0 rlineto + -198 -650 rlineto + 176 0 rlineto + 32 138 rlineto + 182 0 rlineto + -140 178 rmoveto + 16 62 16 78 14 66 rrcurveto + 4 0 rlineto + 16 -65 16 -79 16 -62 rrcurveto + 11 -45 rlineto + -120 0 rlineto + endchar + + + 516 346 0 rmoveto + 180 0 rlineto + -165 532 rlineto + -206 0 rlineto + -165 -532 rlineto + 174 0 rlineto + 21 94 rlineto + 140 0 rlineto + -106 150 rmoveto + 11 48 11 66 11 51 rrcurveto + 4 0 rlineto + 13 -50 11 -67 11 -48 rrcurveto + 6 -28 rlineto + -84 0 rlineto + endchar + + + 536 188 -12 -106 callsubr + + + -101 callsubr + 500 rlineto + -134 0 rlineto + -14 -50 rlineto + -4 0 rlineto + -38 44 -40 18 -48 0 rrcurveto + -102 0 -106 -104 callsubr + + + 690 670 126 rmoveto + -31 4 -38 12 -39 19 rrcurveto + 49 66 34 71 23 76 rrcurveto + -156 0 rlineto + -15 -56 -25 -48 -30 -40 rrcurveto + -41 29 -40 33 -33 35 rrcurveto + 66 43 64 53 0 85 rrcurveto + 0 94 -68 60 -104 0 rrcurveto + -116 0 -72 -82 0 -94 rrcurveto + 0 -39 14 -45 25 -45 rrcurveto + -62 -38 -53 -52 0 -91 rrcurveto + 0 -98 73 -90 151 0 rrcurveto + 83 0 70 24 57 39 rrcurveto + 58 -31 59 -22 57 -10 rrcurveto + -391 498 rmoveto + 0 42 24 22 27 0 rrcurveto + 25 0 13 -14 0 -28 rrcurveto + 0 -38 -30 -25 -41 -24 rrcurveto + -12 23 -6 22 0 20 rrcurveto + -55 -300 rmoveto + 0 23 12 19 18 19 rrcurveto + 34 -40 40 -38 44 -35 rrcurveto + -22 -10 -21 -6 -21 0 rrcurveto + -52 0 -32 28 0 40 rrcurveto + endchar + + + 536 330 572 rmoveto + 80 0 50 45 2 -102 callsubr + -142 -584 -106 callsubr + + + -101 callsubr + 696 rlineto + -172 0 rlineto + 0 -162 rlineto + 6 -72 rlineto + -30 30 -32 20 -54 0 rrcurveto + -102 0 -102 -104 callsubr + + + 360 344 366 rmoveto + 0 134 rlineto + -84 -105 callsubr + endchar + + + 724 706 6 rmoveto + -103 callsubr + -154 -105 callsubr + 144 -98 callsubr + 55 0 37 10 26 8 rrcurveto + endchar + + + 582 58 0 rmoveto + 172 0 rlineto + 0 328 rlineto + 26 24 18 14 32 0 rrcurveto + 34 0 16 -16 0 -64 rrcurveto + 0 -286 rlineto + 172 0 rlineto + 0 308 rlineto + 0 124 -46 80 -110 0 rrcurveto + -68 0 -50 -34 -40 -38 rrcurveto + -4 0 rlineto + -12 60 rlineto + -140 0 rlineto + endchar + + + 200 endchar + + + 400 264 -12 rmoveto + 55 0 37 10 26 8 rrcurveto + -103 callsubr + -76 -6 rlineto + 0 -128 rlineto + 66 -98 callsubr + endchar + + + 0 64 572 rmoveto + 80 0 50 45 2 -102 callsubr + endchar + + + 0 -114 562 -107 callsubr + 228 0 -107 callsubr + endchar + + + 0 -114 -224 -107 callsubr + 228 0 -107 callsubr + endchar + + + 0 64 -228 rmoveto + 80 0 50 45 2 -102 callsubr + endchar + + + 574 287 421 rmoveto + 27 0 18 18 0 29 -99 callsubr + -29 20 -18 23 0 rrcurveto + -105 -26 rmoveto + 26 0 19 17 0 28 rrcurveto + 0 30 -21 16 -24 0 rrcurveto + -24 0 -21 -16 0 -30 rrcurveto + 0 -28 21 -17 24 0 rrcurveto + 210 -1 rmoveto + 28 0 18 17 0 29 rrcurveto + 0 29 -21 17 -25 0 rrcurveto + -23 0 -21 -17 0 -29 rrcurveto + 0 -29 21 -17 23 0 rrcurveto + -288 -81 rmoveto + 27 0 18 18 0 29 rrcurveto + 0 30 -19 15 -26 0 rrcurveto + -22 0 -21 -15 0 -30 rrcurveto + 0 -29 21 -18 22 0 rrcurveto + 368 0 rmoveto + 26 0 18 17 0 29 rrcurveto + 0 29 -20 16 -24 0 rrcurveto + -25 0 -21 -16 0 -29 rrcurveto + 0 -29 21 -17 25 0 rrcurveto + -396 -109 rmoveto + 28 0 18 17 0 30 rrcurveto + 0 28 -20 16 -26 -100 callsubr + 422 0 -97 callsubr + -25 0 -20 -16 0 -28 rrcurveto + 0 -30 20 -17 25 0 rrcurveto + -394 -108 rmoveto + 27 0 18 16 0 29 rrcurveto + 0 29 -19 17 -26 0 rrcurveto + -22 0 -21 -17 0 -29 rrcurveto + 0 -29 21 -16 22 0 rrcurveto + 368 0 rmoveto + 26 0 18 16 0 29 rrcurveto + 0 29 -20 17 -24 0 rrcurveto + -25 0 -21 -17 0 -29 rrcurveto + 0 -29 21 -16 25 0 rrcurveto + -290 -82 -97 callsubr + -24 0 -21 -16 0 -28 rrcurveto + 0 -30 21 -17 24 0 rrcurveto + 210 0 rmoveto + 28 0 18 17 0 30 rrcurveto + 0 28 -21 16 -25 -100 callsubr + -105 -27 rmoveto + 27 0 18 17 0 30 -99 callsubr + -30 20 -17 23 0 rrcurveto + endchar + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/varLib/interpolatable_test.py b/Tests/varLib/interpolatable_test.py index 422001b55..4900d5229 100644 --- a/Tests/varLib/interpolatable_test.py +++ b/Tests/varLib/interpolatable_test.py @@ -85,5 +85,18 @@ class InterpolatableTest(unittest.TestCase): self.assertIsNone(interpolatable_main(ttf_paths)) + def test_interpolatable_otf(self): + suffix = '.otf' + ttx_dir = self.get_test_input('master_ttx_interpolatable_otf') + + self.temp_dir() + ttx_paths = self.get_file_list(ttx_dir, '.ttx', 'TestFamily2-') + for path in ttx_paths: + self.compile_font(path, suffix, self.tempdir) + + otf_paths = self.get_file_list(self.tempdir, suffix) + self.assertIsNone(interpolatable_main(otf_paths)) + + if __name__ == "__main__": sys.exit(unittest.main())