Update Build

This commit is contained in:
weiweihuanghuang 2018-11-15 12:54:13 +08:00
parent a20571832a
commit 83c2a6874c
48 changed files with 581 additions and 420 deletions

View File

@ -5,7 +5,8 @@ DisplayStrings = (
"/ldot/lslash //space\012\012\012L\012HUB/Germandbls EL/Lslash ZFPÞT/Tbar YVWARKXOØQGCS\012naqgudlijfrtoecðsßkxvz\0120917426583\012/zero.osf/one.osf/two.osf/four.osf/seven.osf/five.osf/three.osf/nine.osf/six.osf/eight.osf \012/zerosuperior ¹/foursuperior/sevensuperior/ninesuperior ²/sixsuperior/fivesuperior/eightsuperior ³/zeroinferior/oneinferior/fourinferior/seveninferior/nineinferior/twoinferior/sixinferior/fiveinferior/eightinferior/threeinferior/zerosuperior/sevensuperior/zeroinferior/seveninferior \012.,/quotesinglbase/quoteleft/quoteright ':;-/endash *!?¡¿/exclamdown.case/questiondown.case \012///backslash {}[]()/guilsinglleft/guilsinglright \012#/dagger \012\012R\012HUTZAÆYVWXOØSJ\012hlnijpuaoøðßftgsyvwxz\0120617238954\012/zero.osf/one.osf/two.osf/three.osf/nine.osf/five.osf/four.osf/seven.osf/six.osf/eight.osf \012.,/quotesinglbase/quoteleft/quoteright ':-*!?\012///backslash {}[]()/guilsinglleft/guilsinglright \012#/dagger °\012\012.,:;-/endash/guilsinglleft/guilsinglright {}[]()///backslash *!?&@#\012H, /quoteleft H/quoteright /quoteleft H/quoteleft /quoteright H/quoteright /quotesinglbase H/quoteright /quotesinglbase H/quoteleft 'H'\012\012L /leftArrow/rightArrow/northEastArrow/southWestArrow/downArrow/upArrow/southEastArrow/northWestArrow/leftHookArrow/anticlockwiseOpenCircleArrow/clockwiseOpenCircleArrow \012R /leftArrow/rightArrow/northEastArrow/southWestArrow/upArrow/downArrow/southEastArrow/northWestArrow/anticlockwiseOpenCircleArrow/clockwiseOpenCircleArrow \012\012Triple:\012h/hbar blnijpruoødqecðagsßftvywxkz\012HOTYAVWXZ", "/ldot/lslash //space\012\012\012L\012HUB/Germandbls EL/Lslash ZFPÞT/Tbar YVWARKXOØQGCS\012naqgudlijfrtoecðsßkxvz\0120917426583\012/zero.osf/one.osf/two.osf/four.osf/seven.osf/five.osf/three.osf/nine.osf/six.osf/eight.osf \012/zerosuperior ¹/foursuperior/sevensuperior/ninesuperior ²/sixsuperior/fivesuperior/eightsuperior ³/zeroinferior/oneinferior/fourinferior/seveninferior/nineinferior/twoinferior/sixinferior/fiveinferior/eightinferior/threeinferior/zerosuperior/sevensuperior/zeroinferior/seveninferior \012.,/quotesinglbase/quoteleft/quoteright ':;-/endash *!?¡¿/exclamdown.case/questiondown.case \012///backslash {}[]()/guilsinglleft/guilsinglright \012#/dagger \012\012R\012HUTZAÆYVWXOØSJ\012hlnijpuaoøðßftgsyvwxz\0120617238954\012/zero.osf/one.osf/two.osf/three.osf/nine.osf/five.osf/four.osf/seven.osf/six.osf/eight.osf \012.,/quotesinglbase/quoteleft/quoteright ':-*!?\012///backslash {}[]()/guilsinglleft/guilsinglright \012#/dagger °\012\012.,:;-/endash/guilsinglleft/guilsinglright {}[]()///backslash *!?&@#\012H, /quoteleft H/quoteright /quoteleft H/quoteleft /quoteright H/quoteright /quotesinglbase H/quoteright /quotesinglbase H/quoteleft 'H'\012\012L /leftArrow/rightArrow/northEastArrow/southWestArrow/downArrow/upArrow/southEastArrow/northWestArrow/leftHookArrow/anticlockwiseOpenCircleArrow/clockwiseOpenCircleArrow \012R /leftArrow/rightArrow/northEastArrow/southWestArrow/upArrow/downArrow/southEastArrow/northWestArrow/anticlockwiseOpenCircleArrow/clockwiseOpenCircleArrow \012\012Triple:\012h/hbar blnijpruoødqecðagsßftvywxkz\012HOTYAVWXZ",
"Done:\012/apple.001 \012/cedi/cedi.rvrn ¢/cent.rvrn/colonsign/colonsign.rvrn $/dollar.rvrn/guarani/guarani.rvrn/naira/naira.rvrn/peseta/peseta.rvrn/peso/peso.rvrn/won/won.rvrn/dollar.tf/dollar.tf.rvrn/curvedStemParagraphSignOrnament/curvedStemParagraphSignOrnament.rvrn ¶/paragraph.rvrn ©®/cent.tf/cent.tf.rvrn \012\012Brace:\012æes", "Done:\012/apple.001 \012/cedi/cedi.rvrn ¢/cent.rvrn/colonsign/colonsign.rvrn $/dollar.rvrn/guarani/guarani.rvrn/naira/naira.rvrn/peseta/peseta.rvrn/peso/peso.rvrn/won/won.rvrn/dollar.tf/dollar.tf.rvrn/curvedStemParagraphSignOrnament/curvedStemParagraphSignOrnament.rvrn ¶/paragraph.rvrn ©®/cent.tf/cent.tf.rvrn \012\012Brace:\012æes",
";¡¿/semicolon.tf )]/parenrightsuperior/bracketright.case/exclamdown.sc/questiondown.sc/rightanglebracket-math >/rightArrow/downArrow/southWestArrow/downWhiteTriangle/heavySingleCommaQuotationMarkOrnament/heavyDoubleCommaQuotationMarkOrnament/ringhalfright/bracketrightsuperior/colonsign/colonsign.rvrn", ";¡¿/semicolon.tf )]/parenrightsuperior/bracketright.case/exclamdown.sc/questiondown.sc/rightanglebracket-math >/rightArrow/downArrow/southWestArrow/downWhiteTriangle/heavySingleCommaQuotationMarkOrnament/heavyDoubleCommaQuotationMarkOrnament/ringhalfright/bracketrightsuperior/colonsign/colonsign.rvrn",
"/dollar.tf/cent.tf \012/dollar.tf.rvrn/cent.tf.rvrn \012$¢ÄÜÖ\012/dollar.rvrn/cent.rvrn" "/dollar.tf/cent.tf \012/dollar.tf.rvrn/cent.tf.rvrn \012$¢ÄÜÖ\012/dollar.rvrn/cent.rvrn",
"/apple"
); );
classes = ( classes = (
{ {
@ -79,7 +80,7 @@ name = vendorID;
value = WEI; value = WEI;
} }
); );
date = "2018-11-14 10:39:40 +0000"; date = "2018-11-15 04:39:21 +0000";
designer = "Wei Huang"; designer = "Wei Huang";
designerURL = "http://wweeiihhuuaanngg@gmail.com"; designerURL = "http://wweeiihhuuaanngg@gmail.com";
familyName = "Work Sans"; familyName = "Work Sans";
@ -99918,67 +99919,6 @@ nodes = (
{ {
closed = 1; closed = 1;
nodes = ( nodes = (
"754 75 LINE SMOOTH",
"833 75 OFFCURVE",
"903 91 OFFCURVE",
"957 125 CURVE",
"1033 131 LINE",
"990 190 LINE",
"1074 203 LINE",
"1018 253 LINE",
"1095 284 LINE",
"1030 326 LINE",
"1104 360 LINE",
"1032 400 LINE",
"1101 440 LINE",
"1020 461 LINE",
"1075 516 LINE",
"987 514 LINE",
"1023 575 LINE",
"932 562 LINE",
"958 628 LINE",
"873 600 LINE",
"881 666 LINE",
"803 625 LINE",
"807 686 LINE",
"727 634 LINE",
"720 690 LINE",
"641 639 LINE",
"622 686 LINE",
"562 625 LINE",
"535 672 LINE",
"488 610 LINE",
"451 643 LINE",
"413 581 LINE",
"378 611 LINE",
"343 548 LINE",
"306 571 LINE",
"280 512 LINE",
"254 539 LINE",
"224 473 LINE",
"198 498 LINE",
"164 418 LINE",
"164 359 OFFCURVE",
"117 283 OFFCURVE",
"69 246 CURVE",
"66 247 OFFCURVE",
"62 248 OFFCURVE",
"58 248 CURVE SMOOTH",
"36 248 OFFCURVE",
"17 229 OFFCURVE",
"17 207 CURVE SMOOTH",
"17 185 OFFCURVE",
"36 166 OFFCURVE",
"58 166 CURVE SMOOTH",
"63 166 LINE",
"105 129 OFFCURVE",
"219 75 OFFCURVE",
"307 75 CURVE SMOOTH"
);
},
{
closed = 1;
nodes = (
"262 0 LINE SMOOTH", "262 0 LINE SMOOTH",
"289 0 OFFCURVE", "289 0 OFFCURVE",
"294 10 OFFCURVE", "294 10 OFFCURVE",
@ -100059,6 +99999,67 @@ nodes = (
"750 0 OFFCURVE", "750 0 OFFCURVE",
"769 0 CURVE SMOOTH" "769 0 CURVE SMOOTH"
); );
},
{
closed = 1;
nodes = (
"754 75 LINE SMOOTH",
"833 75 OFFCURVE",
"903 91 OFFCURVE",
"957 125 CURVE",
"1033 131 LINE",
"990 190 LINE",
"1074 203 LINE",
"1018 253 LINE",
"1095 284 LINE",
"1030 326 LINE",
"1104 360 LINE",
"1032 400 LINE",
"1101 440 LINE",
"1020 461 LINE",
"1075 516 LINE",
"987 514 LINE",
"1023 575 LINE",
"932 562 LINE",
"958 628 LINE",
"873 600 LINE",
"881 666 LINE",
"803 625 LINE",
"807 686 LINE",
"727 634 LINE",
"720 690 LINE",
"641 639 LINE",
"622 686 LINE",
"562 625 LINE",
"535 672 LINE",
"488 610 LINE",
"451 643 LINE",
"413 581 LINE",
"378 611 LINE",
"343 548 LINE",
"306 571 LINE",
"280 512 LINE",
"254 539 LINE",
"224 473 LINE",
"198 498 LINE",
"164 418 LINE",
"164 359 OFFCURVE",
"117 283 OFFCURVE",
"69 246 CURVE",
"66 247 OFFCURVE",
"62 248 OFFCURVE",
"58 248 CURVE SMOOTH",
"36 248 OFFCURVE",
"17 229 OFFCURVE",
"17 207 CURVE SMOOTH",
"17 185 OFFCURVE",
"36 166 OFFCURVE",
"58 166 CURVE SMOOTH",
"63 166 LINE",
"105 129 OFFCURVE",
"219 75 OFFCURVE",
"307 75 CURVE SMOOTH"
);
} }
); );
width = 1130; width = 1130;
@ -100897,67 +100898,6 @@ nodes = (
{ {
closed = 1; closed = 1;
nodes = ( nodes = (
"754 81 LINE SMOOTH",
"833 81 OFFCURVE",
"903 97 OFFCURVE",
"957 131 CURVE",
"1033 137 LINE",
"990 196 LINE",
"1074 209 LINE",
"1018 259 LINE",
"1095 290 LINE",
"1030 332 LINE",
"1104 366 LINE",
"1032 406 LINE",
"1101 446 LINE",
"1020 467 LINE",
"1075 522 LINE",
"987 520 LINE",
"1023 581 LINE",
"932 568 LINE",
"958 634 LINE",
"873 606 LINE",
"881 672 LINE",
"803 631 LINE",
"807 692 LINE",
"727 640 LINE",
"720 696 LINE",
"641 645 LINE",
"622 692 LINE",
"562 631 LINE",
"535 678 LINE",
"488 616 LINE",
"451 649 LINE",
"413 587 LINE",
"378 617 LINE",
"343 554 LINE",
"306 577 LINE",
"280 518 LINE",
"254 545 LINE",
"224 479 LINE",
"198 504 LINE",
"164 424 LINE",
"164 365 OFFCURVE",
"117 289 OFFCURVE",
"69 252 CURVE",
"66 253 OFFCURVE",
"62 254 OFFCURVE",
"58 254 CURVE SMOOTH",
"36 254 OFFCURVE",
"17 235 OFFCURVE",
"17 213 CURVE SMOOTH",
"17 191 OFFCURVE",
"36 172 OFFCURVE",
"58 172 CURVE SMOOTH",
"63 172 LINE",
"105 135 OFFCURVE",
"219 81 OFFCURVE",
"307 81 CURVE SMOOTH"
);
},
{
closed = 1;
nodes = (
"312 0 LINE SMOOTH", "312 0 LINE SMOOTH",
"339 0 OFFCURVE", "339 0 OFFCURVE",
"350 13 OFFCURVE", "350 13 OFFCURVE",
@ -100988,7 +100928,7 @@ nodes = (
"351 181 LINE", "351 181 LINE",
"352 143 LINE", "352 143 LINE",
"373 65 LINE", "373 65 LINE",
"362 61 LINE SMOOTH", "362 61 LINE",
"346 53 OFFCURVE", "346 53 OFFCURVE",
"340 40 OFFCURVE", "340 40 OFFCURVE",
"346 25 CURVE SMOOTH", "346 25 CURVE SMOOTH",
@ -101000,7 +100940,7 @@ nodes = (
{ {
closed = 1; closed = 1;
nodes = ( nodes = (
"966 36 LINE SMOOTH", "966 36 LINE",
"981 49 OFFCURVE", "981 49 OFFCURVE",
"983 62 OFFCURVE", "983 62 OFFCURVE",
"972 77 CURVE SMOOTH", "972 77 CURVE SMOOTH",
@ -101012,10 +100952,10 @@ nodes = (
"901 47 LINE SMOOTH", "901 47 LINE SMOOTH",
"885 36 OFFCURVE", "885 36 OFFCURVE",
"882 22 OFFCURVE", "882 22 OFFCURVE",
"892 9 CURVE SMOOTH", "892 9 CURVE",
"902 -4 OFFCURVE", "902 -4 OFFCURVE",
"915 -4 OFFCURVE", "915 -4 OFFCURVE",
"930 8 CURVE SMOOTH" "930 8 CURVE"
); );
}, },
{ {
@ -101038,6 +100978,67 @@ nodes = (
"763 0 OFFCURVE", "763 0 OFFCURVE",
"782 0 CURVE SMOOTH" "782 0 CURVE SMOOTH"
); );
},
{
closed = 1;
nodes = (
"754 81 LINE SMOOTH",
"833 81 OFFCURVE",
"903 97 OFFCURVE",
"957 131 CURVE",
"1027 145 LINE",
"990 196 LINE",
"1061 213 LINE",
"1018 259 LINE",
"1084 290 LINE",
"1030 332 LINE",
"1093 365 LINE",
"1032 406 LINE",
"1092 449 LINE",
"1020 467 LINE",
"1064 523 LINE",
"987 520 LINE",
"1012 582 LINE",
"932 568 LINE",
"947 635 LINE",
"873 606 LINE",
"870 673 LINE",
"803 631 LINE",
"796 693 LINE",
"727 640 LINE",
"709 697 LINE",
"641 645 LINE",
"611 693 LINE",
"562 631 LINE",
"524 679 LINE",
"488 616 LINE",
"440 650 LINE",
"413 587 LINE",
"367 618 LINE",
"343 554 LINE",
"295 578 LINE",
"280 518 LINE",
"243 546 LINE",
"224 479 LINE",
"187 505 LINE",
"164 424 LINE",
"164 365 OFFCURVE",
"117 289 OFFCURVE",
"69 252 CURVE",
"66 253 OFFCURVE",
"62 254 OFFCURVE",
"58 254 CURVE SMOOTH",
"36 254 OFFCURVE",
"17 235 OFFCURVE",
"17 213 CURVE SMOOTH",
"17 191 OFFCURVE",
"36 172 OFFCURVE",
"58 172 CURVE SMOOTH",
"63 172 LINE",
"105 135 OFFCURVE",
"219 81 OFFCURVE",
"307 81 CURVE SMOOTH"
);
} }
); );
width = 1130; width = 1130;
@ -101095,67 +101096,6 @@ nodes = (
{ {
closed = 1; closed = 1;
nodes = ( nodes = (
"754 82 LINE SMOOTH",
"833 82 OFFCURVE",
"903 98 OFFCURVE",
"957 132 CURVE",
"1033 138 LINE",
"990 197 LINE",
"1074 210 LINE",
"1018 260 LINE",
"1095 291 LINE",
"1030 333 LINE",
"1104 367 LINE",
"1032 407 LINE",
"1101 447 LINE",
"1020 468 LINE",
"1075 523 LINE",
"987 521 LINE",
"1023 582 LINE",
"932 569 LINE",
"958 635 LINE",
"873 607 LINE",
"881 673 LINE",
"803 632 LINE",
"807 693 LINE",
"727 641 LINE",
"720 697 LINE",
"641 646 LINE",
"622 693 LINE",
"562 632 LINE",
"535 679 LINE",
"488 617 LINE",
"451 650 LINE",
"413 588 LINE",
"378 618 LINE",
"343 555 LINE",
"306 578 LINE",
"280 519 LINE",
"254 546 LINE",
"224 480 LINE",
"198 505 LINE",
"164 425 LINE",
"164 366 OFFCURVE",
"117 290 OFFCURVE",
"69 253 CURVE",
"66 254 OFFCURVE",
"62 255 OFFCURVE",
"58 255 CURVE SMOOTH",
"36 255 OFFCURVE",
"17 236 OFFCURVE",
"17 214 CURVE SMOOTH",
"17 192 OFFCURVE",
"36 173 OFFCURVE",
"58 173 CURVE SMOOTH",
"63 173 LINE",
"105 136 OFFCURVE",
"219 82 OFFCURVE",
"307 82 CURVE SMOOTH"
);
},
{
closed = 1;
nodes = (
"318 0 LINE SMOOTH", "318 0 LINE SMOOTH",
"345 0 OFFCURVE", "345 0 OFFCURVE",
"356 13 OFFCURVE", "356 13 OFFCURVE",
@ -101186,7 +101126,7 @@ nodes = (
"351 181 LINE", "351 181 LINE",
"351 146 LINE", "351 146 LINE",
"373 67 LINE", "373 67 LINE",
"362 62 LINE SMOOTH", "362 62 LINE",
"346 53 OFFCURVE", "346 53 OFFCURVE",
"340 40 OFFCURVE", "340 40 OFFCURVE",
"347 25 CURVE SMOOTH", "347 25 CURVE SMOOTH",
@ -101198,7 +101138,7 @@ nodes = (
{ {
closed = 1; closed = 1;
nodes = ( nodes = (
"969 38 LINE SMOOTH", "969 38 LINE",
"983 51 OFFCURVE", "983 51 OFFCURVE",
"985 64 OFFCURVE", "985 64 OFFCURVE",
"973 79 CURVE SMOOTH", "973 79 CURVE SMOOTH",
@ -101210,10 +101150,10 @@ nodes = (
"903 47 LINE SMOOTH", "903 47 LINE SMOOTH",
"887 36 OFFCURVE", "887 36 OFFCURVE",
"885 21 OFFCURVE", "885 21 OFFCURVE",
"895 9 CURVE SMOOTH", "895 9 CURVE",
"905 -4 OFFCURVE", "905 -4 OFFCURVE",
"918 -4 OFFCURVE", "918 -4 OFFCURVE",
"933 9 CURVE SMOOTH" "933 9 CURVE"
); );
}, },
{ {
@ -101236,6 +101176,67 @@ nodes = (
"764 0 OFFCURVE", "764 0 OFFCURVE",
"783 0 CURVE SMOOTH" "783 0 CURVE SMOOTH"
); );
},
{
closed = 1;
nodes = (
"754 82 LINE SMOOTH",
"833 82 OFFCURVE",
"903 98 OFFCURVE",
"957 132 CURVE",
"1026 146 LINE",
"990 197 LINE",
"1060 214 LINE",
"1018 260 LINE",
"1083 291 LINE",
"1030 333 LINE",
"1092 366 LINE",
"1032 407 LINE",
"1091 450 LINE",
"1020 468 LINE",
"1063 524 LINE",
"987 521 LINE",
"1011 583 LINE",
"932 569 LINE",
"946 636 LINE",
"873 607 LINE",
"869 674 LINE",
"803 632 LINE",
"795 694 LINE",
"727 641 LINE",
"708 698 LINE",
"641 646 LINE",
"610 694 LINE",
"562 632 LINE",
"523 680 LINE",
"488 617 LINE",
"439 651 LINE",
"413 588 LINE",
"366 619 LINE",
"343 555 LINE",
"294 579 LINE",
"280 519 LINE",
"242 547 LINE",
"224 480 LINE",
"186 506 LINE",
"164 425 LINE",
"164 366 OFFCURVE",
"117 290 OFFCURVE",
"69 253 CURVE",
"66 254 OFFCURVE",
"62 255 OFFCURVE",
"58 255 CURVE SMOOTH",
"36 255 OFFCURVE",
"17 236 OFFCURVE",
"17 214 CURVE SMOOTH",
"17 192 OFFCURVE",
"36 173 OFFCURVE",
"58 173 CURVE SMOOTH",
"63 173 LINE",
"105 136 OFFCURVE",
"219 82 OFFCURVE",
"307 82 CURVE SMOOTH"
);
} }
); );
width = 1130; width = 1130;
@ -101316,67 +101317,6 @@ nodes = (
{ {
closed = 1; closed = 1;
nodes = ( nodes = (
"754 82 LINE SMOOTH",
"833 82 OFFCURVE",
"903 98 OFFCURVE",
"957 132 CURVE",
"1033 138 LINE",
"990 197 LINE",
"1074 210 LINE",
"1018 260 LINE",
"1095 291 LINE",
"1030 333 LINE",
"1104 367 LINE",
"1032 407 LINE",
"1101 447 LINE",
"1020 468 LINE",
"1075 523 LINE",
"987 521 LINE",
"1023 582 LINE",
"932 569 LINE",
"958 635 LINE",
"873 607 LINE",
"881 673 LINE",
"803 632 LINE",
"807 693 LINE",
"727 641 LINE",
"720 697 LINE",
"641 646 LINE",
"622 693 LINE",
"562 632 LINE",
"535 679 LINE",
"488 617 LINE",
"451 650 LINE",
"413 588 LINE",
"378 618 LINE",
"343 555 LINE",
"306 578 LINE",
"280 519 LINE",
"254 546 LINE",
"224 480 LINE",
"198 505 LINE",
"164 425 LINE",
"164 366 OFFCURVE",
"117 290 OFFCURVE",
"69 253 CURVE",
"66 254 OFFCURVE",
"62 255 OFFCURVE",
"58 255 CURVE SMOOTH",
"36 255 OFFCURVE",
"17 236 OFFCURVE",
"17 214 CURVE SMOOTH",
"17 192 OFFCURVE",
"36 173 OFFCURVE",
"58 173 CURVE SMOOTH",
"63 173 LINE",
"105 136 OFFCURVE",
"219 82 OFFCURVE",
"307 82 CURVE SMOOTH"
);
},
{
closed = 1;
nodes = (
"358 0 LINE SMOOTH", "358 0 LINE SMOOTH",
"380 0 OFFCURVE", "380 0 OFFCURVE",
"393 13 OFFCURVE", "393 13 OFFCURVE",
@ -101457,6 +101397,67 @@ nodes = (
"792 0 OFFCURVE", "792 0 OFFCURVE",
"811 0 CURVE SMOOTH" "811 0 CURVE SMOOTH"
); );
},
{
closed = 1;
nodes = (
"754 82 LINE SMOOTH",
"833 82 OFFCURVE",
"903 98 OFFCURVE",
"957 132 CURVE",
"1026 146 LINE",
"990 197 LINE",
"1060 214 LINE",
"1018 260 LINE",
"1083 291 LINE",
"1030 333 LINE",
"1092 366 LINE",
"1032 407 LINE",
"1091 450 LINE",
"1020 468 LINE",
"1063 524 LINE",
"987 521 LINE",
"1011 583 LINE",
"932 569 LINE",
"946 636 LINE",
"873 607 LINE",
"869 674 LINE",
"803 632 LINE",
"795 694 LINE",
"727 641 LINE",
"708 698 LINE",
"641 646 LINE",
"610 694 LINE",
"562 632 LINE",
"523 680 LINE",
"488 617 LINE",
"439 651 LINE",
"413 588 LINE",
"366 619 LINE",
"343 555 LINE",
"294 579 LINE",
"280 519 LINE",
"242 547 LINE",
"224 480 LINE",
"186 506 LINE",
"164 425 LINE",
"164 366 OFFCURVE",
"117 290 OFFCURVE",
"69 253 CURVE",
"66 254 OFFCURVE",
"62 255 OFFCURVE",
"58 255 CURVE SMOOTH",
"36 255 OFFCURVE",
"17 236 OFFCURVE",
"17 214 CURVE SMOOTH",
"17 192 OFFCURVE",
"36 173 OFFCURVE",
"58 173 CURVE SMOOTH",
"63 173 LINE",
"105 136 OFFCURVE",
"219 82 OFFCURVE",
"307 82 CURVE SMOOTH"
);
} }
); );
width = 1130; width = 1130;
@ -101701,67 +101702,6 @@ nodes = (
{ {
closed = 1; closed = 1;
nodes = ( nodes = (
"754 75 LINE SMOOTH",
"833 75 OFFCURVE",
"903 91 OFFCURVE",
"957 125 CURVE",
"1033 131 LINE",
"990 190 LINE",
"1074 203 LINE",
"1018 253 LINE",
"1095 284 LINE",
"1030 326 LINE",
"1104 360 LINE",
"1032 400 LINE",
"1101 440 LINE",
"1020 461 LINE",
"1075 516 LINE",
"987 514 LINE",
"1023 575 LINE",
"932 562 LINE",
"958 628 LINE",
"873 600 LINE",
"881 666 LINE",
"803 625 LINE",
"807 686 LINE",
"727 634 LINE",
"720 690 LINE",
"641 639 LINE",
"622 686 LINE",
"562 625 LINE",
"535 672 LINE",
"488 610 LINE",
"451 643 LINE",
"413 581 LINE",
"378 611 LINE",
"343 548 LINE",
"306 571 LINE",
"280 512 LINE",
"254 539 LINE",
"224 473 LINE",
"198 498 LINE",
"164 418 LINE",
"164 359 OFFCURVE",
"117 283 OFFCURVE",
"69 246 CURVE",
"66 247 OFFCURVE",
"62 248 OFFCURVE",
"58 248 CURVE SMOOTH",
"36 248 OFFCURVE",
"17 229 OFFCURVE",
"17 207 CURVE SMOOTH",
"17 185 OFFCURVE",
"36 166 OFFCURVE",
"58 166 CURVE SMOOTH",
"63 166 LINE",
"105 129 OFFCURVE",
"219 75 OFFCURVE",
"307 75 CURVE SMOOTH"
);
},
{
closed = 1;
nodes = (
"400 0 LINE SMOOTH", "400 0 LINE SMOOTH",
"427 0 OFFCURVE", "427 0 OFFCURVE",
"445 10 OFFCURVE", "445 10 OFFCURVE",
@ -101842,6 +101782,67 @@ nodes = (
"883 -5 OFFCURVE", "883 -5 OFFCURVE",
"901 3 CURVE SMOOTH" "901 3 CURVE SMOOTH"
); );
},
{
closed = 1;
nodes = (
"754 75 LINE SMOOTH",
"833 75 OFFCURVE",
"903 91 OFFCURVE",
"957 125 CURVE",
"1033 131 LINE",
"990 190 LINE",
"1074 203 LINE",
"1018 253 LINE",
"1095 284 LINE",
"1030 326 LINE",
"1104 360 LINE",
"1032 400 LINE",
"1101 440 LINE",
"1020 461 LINE",
"1075 516 LINE",
"987 514 LINE",
"1023 575 LINE",
"932 562 LINE",
"958 628 LINE",
"873 600 LINE",
"881 666 LINE",
"803 625 LINE",
"807 686 LINE",
"727 634 LINE",
"720 690 LINE",
"641 639 LINE",
"622 686 LINE",
"562 625 LINE",
"535 672 LINE",
"488 610 LINE",
"451 643 LINE",
"413 581 LINE",
"378 611 LINE",
"343 548 LINE",
"306 571 LINE",
"280 512 LINE",
"254 539 LINE",
"224 473 LINE",
"198 498 LINE",
"164 418 LINE",
"164 359 OFFCURVE",
"117 283 OFFCURVE",
"69 246 CURVE",
"66 247 OFFCURVE",
"62 248 OFFCURVE",
"58 248 CURVE SMOOTH",
"36 248 OFFCURVE",
"17 229 OFFCURVE",
"17 207 CURVE SMOOTH",
"17 185 OFFCURVE",
"36 166 OFFCURVE",
"58 166 CURVE SMOOTH",
"63 166 LINE",
"105 129 OFFCURVE",
"219 75 OFFCURVE",
"307 75 CURVE SMOOTH"
);
} }
); );
width = 1130; width = 1130;

View File

@ -99,7 +99,7 @@ name = vendorID;
value = WEI; value = WEI;
} }
); );
date = "2018-11-14 10:39:57 +0000"; date = "2018-11-15 04:39:32 +0000";
designer = "Wei Huang"; designer = "Wei Huang";
designerURL = "http://wweeiihhuuaanngg@gmail.com"; designerURL = "http://wweeiihhuuaanngg@gmail.com";
familyName = "Work Sans"; familyName = "Work Sans";

View File

@ -2,99 +2,103 @@
set -e set -e
### WIP macOS build script for Work Sans Upright and Italic VF, based on a build script by Mike LaGuttuta ### WIP macOS build script for Work Sans Upright and Italic VF, based on a build script by Mike LaGuttuta
# To add brace trick glyphs, define them in $BraceGlyphs variable, and save the source VF in the same folder as the script # To add brace trick glyphs, define them in $BraceGlyphs variable, and export the VF from Glyphs App in the same folder as the script
# Setting the Source and VF name, determine if it's for Italic or Upright source from the argument passed to this script # Setting the Source and VF name, determine if it's for Italic or Upright source from the argument passed to this script
glyphsSource="WorkSans.glyphs" glyphsSource="WorkSans.glyphs WorkSans-Italic.glyphs"
VFname="WorkSans-VF"
GXname="WorkSansGX"
if [ "$1" == "Upright" ]; then for i in $glyphsSource; do
# Setting which brace glyphs will get copied from the VF generated from glyphs app
if [ $i == "WorkSans.glyphs" ]; then
style="Upright"
VFname="WorkSans-VF"
GXname="WorkSansGX"
BraceGlyphs="a,ae,e,s" BraceGlyphs="a,ae,e,s"
elif [ "$1" == "Italic" ]; then elif [ $i == "WorkSans-Italic.glyphs" ]; then
style="Italic"
VFname="WorkSans-Italic-VF"
GXname="WorkSansItalicGX"
BraceGlyphs="ae,e,s" BraceGlyphs="ae,e,s"
# Italic fi
glyphsSource=${glyphsSource/".glyphs"/"-Italic.glyphs"}
VFname=${VFname/"-VF"/"-Italic-VF"}
GXname=${GXname/"GX"/"ItalicGX"}
fi
python tools/makeBuildGlyphsFile.py "${glyphsSource}" "$1" # Generat -build version of .glyphs files with bracket tricks enabled, also add extra OpenType code for featureVariation to work
glyphsBuildSource=${glyphsSource/".glyphs"/"-build.glyphs"} python tools/makeBuildGlyphsFile.py "${i}"
glyphsBuildSource=${i/".glyphs"/"-build.glyphs"}
# Call fontmake to generate variable font # Call fontmake to generate variable font
echo "\tBuilding ${glyphsSource}.glyphs..." echo "\tBuilding ${i}.glyphs..."
fontmake -o variable -g $glyphsBuildSource fontmake -o variable -g $glyphsBuildSource
echo "\t${VFname}.ttf generated" echo "\t${VFname}.ttf generated"
# Clean up files # Clean up files
mv variable_ttf/${VFname}.ttf ${VFname}.ttf mv variable_ttf/${VFname}.ttf ${VFname}.ttf
rm $glyphsBuildSource rm $glyphsBuildSource
rm -rf master_ufo rm -rf master_ufo
rm -rf instance_ufo rm -rf instance_ufo
rm -rf variable_ttf rm -rf variable_ttf
ttx ${VFname}.ttf ttx ${VFname}.ttf
rm ${VFname}.ttf rm ${VFname}.ttf
ttx ${GXname}.ttf ttx ${GXname}.ttf
mv ${GXname}.ttx tools/${GXname}.ttx mv ${GXname}.ttx tools/${GXname}.ttx
# Copy brace glyphs from variable font generated from Glyphs App # Copy brace glyphs from variable font generated from Glyphs App
# Run script to find and copy TTGlyph and glyphVariations elements from source file and copy into target file # Run script to find and copy TTGlyph and glyphVariations elements from source file and copy into target file
# Could probablh be done just with fonttools... # Could probablh be done just with fonttools...
echo "\tAdding brace glyphs..." echo "\tAdding brace glyphs..."
xml tr tools/replaceBraceGlyphs.xsl \ xml tr tools/replaceBraceGlyphs.xsl \
-s replacements=${GXname}.ttx \ -s replacements=${GXname}.ttx \
-s replacenames=$BraceGlyphs \ -s replacenames=$BraceGlyphs \
${VFname}.ttx > ${VFname}-brace.ttx ${VFname}.ttx > ${VFname}-brace.ttx
# Clean up files # Clean up files
rm tools/${GXname}.ttx rm tools/${GXname}.ttx
rm ${VFname}.ttx rm ${VFname}.ttx
ttx ${VFname}-brace.ttx ttx ${VFname}-brace.ttx
rm ${VFname}-brace.ttx rm ${VFname}-brace.ttx
mv ${VFname}-brace.ttf ${VFname}.ttf mv ${VFname}-brace.ttf ${VFname}.ttf
# Add featureVariation for bracket trick glyphs # Add featureVariation for bracket trick glyphs
echo "\tAdding bracket glyphs..." echo "\tAdding bracket glyphs..."
python tools/replaceBracketTrick.py ${VFname}.ttf "$1" python tools/replaceBracketTrick.py ${VFname}.ttf "$1"
mv ${VFname}-swap.ttf ${VFname}.ttf mv ${VFname}-swap.ttf ${VFname}.ttf
# Fix non-hinting, DSIG and GASP table # Fix non-hinting and GASP table
gftools fix-nonhinting ${VFname}.ttf ${VFname}.ttf echo "\tFixing non-hinting and GASP table"
gftools fix-gasp ${VFname}.ttf gftools fix-nonhinting ${VFname}.ttf ${VFname}.ttf
echo "nonhinting, gasp fixed" gftools fix-gasp ${VFname}.ttf
# Clean up files # Clean up files
rm ${VFname}-backup-fonttools-prep-gasp.ttf rm ${VFname}-backup-fonttools-prep-gasp.ttf
# rm ${GXname}.ttf rm ${GXname}.ttf
done
# # Fix VF Metadata
# python tools/gftools-fix-vf-meta.py ${VFname}.ttf
# echo "vf-meta fixed"
# # Clean up and rename VF
# rm ${VFname}.ttf
# mv ${VFname}.ttf.fix ${VFname}.ttf
# # Correct nameID 6 (remove space) # Fix VF Metadata
# python tools/NAMEpatch.py ${VFname}.ttf VFfonts=""
# rm ${VFname}.ttf for i in *.ttf; do
# mv ${VFname}#1.ttf ${VFname}.ttf VFfonts+="$i "
# echo "nameID 6 fixed" done
echo "\tFixing VF Family Metadata..."
python tools/gftools-fix-vf-meta.py $VFfonts
# Clean up VFs
for i in $VFfonts; do
rm "$i"
done
# Rename VFs
for i in *.fix; do
mv $i ${i/".ttf.fix"/".ttf"}
done
# Fix DSIG # Fix DSIG
gftools fix-dsig --autofix ${VFname}.ttf for i in *.ttf; do
echo "\tFixing DSIG $i..."
# if [ "$1" = "Italic" ]; then # Fix DSIG
# # Rename *-ItalicItalic to -Italic gftools fix-dsig --autofix "$i"
# for i in *.ttf; do done
# mv "$i" "${i//ItalicItalic/Italic}"
# done
# fi
# fontbakery check-googlefonts ${VFname}.ttf --ghmarkdown fontbakery-report.md
## move font into folder of dist/, with timestamp, then fontbake the font
# python3 tools/distdate-and-fontbake.py ${VFname}.ttf

13
sources/test.sh Normal file
View File

@ -0,0 +1,13 @@
#!/bin/bash
set -e
glyphsSource="WorkSans.glyphs WorkSans-Italic.glyphs"
for i in $glyphsSource; do
if [ $i == "WorkSans.glyphs" ]; then
echo $i
elif [ $i == "WorkSans-Italic.glyphs" ]; then
echo $i
fi
done

View File

@ -0,0 +1,13 @@
#!/bin/bash
set -e
# for i in *.ttf; do
# fontbakery check-googlefonts "$i" --ghmarkdown $i-fontbakery-report.md
# echo "Processing $i"
# done
# fontbakery check-googlefonts "WorkSans-VF.ttf" --ghmarkdown WorkSans-VF-fontbakery-report.md
fontbakery check-googlefonts "WorkSans-Italic-VF.ttf" --ghmarkdown WorkSans-Italic-VF-fontbakery-report.md
## move font into folder of dist/, with timestamp, then fontbake the font
# python3 tools/distdate-and-fontbake.py ${VFname}.ttf

View File

@ -11,7 +11,7 @@ file = sys.argv[1]
font = GSFont(file) font = GSFont(file)
print "\tPreparing %s" % file print "\tPreparing %s" % file
# Glyphs to re-enable export, in the Glyphs App static fonts export these are not active but get swapped with a custom parameter, for the VFs though it needs to be exported # List of Glyphs which should have export enabled - in the Glyphs App static fonts export these are not active but get swapped with a custom parameter, for the VFs though they needs to be exported
italicBracketGlyphs = [ italicBracketGlyphs = [
"cedi.rvrn", "cedi.rvrn",
"colonsign.rvrn", "colonsign.rvrn",
@ -62,11 +62,10 @@ for instance in font.instances:
if deavtivateThisInstance == True: if deavtivateThisInstance == True:
instance.active = 0 instance.active = 0
style = sys.argv[2] if "Italic" in file:
if style == "Italic":
glyphsToActivateExport = italicBracketGlyphs glyphsToActivateExport = italicBracketGlyphs
appendFeatureCode = italicFeaCode appendFeatureCode = italicFeaCode
elif style == "Upright": else:
glyphsToActivateExport = uprightBracketGlyphs glyphsToActivateExport = uprightBracketGlyphs
appendFeatureCode = uprightFeaCode appendFeatureCode = uprightFeaCode

View File

@ -0,0 +1,100 @@
#!/bin/bash
set -e
### WIP macOS build script for Work Sans Upright and Italic VF, based on a build script by Mike LaGuttuta
# To add brace trick glyphs, define them in $BraceGlyphs variable, and save the source VF in the same folder as the script
# Setting the Source and VF name, determine if it's for Italic or Upright source from the argument passed to this script
glyphsSource="WorkSans.glyphs"
VFname="WorkSans-VF"
GXname="WorkSansGX"
if [ "$1" == "Upright" ]; then
# Setting which brace glyphs will get copied from the VF generated from glyphs app
BraceGlyphs="a,ae,e,s"
elif [ "$1" == "Italic" ]; then
BraceGlyphs="ae,e,s"
# Italic
glyphsSource=${glyphsSource/".glyphs"/"-Italic.glyphs"}
VFname=${VFname/"-VF"/"-Italic-VF"}
GXname=${GXname/"GX"/"ItalicGX"}
fi
python tools/makeBuildGlyphsFile.py "${glyphsSource}" "$1"
glyphsBuildSource=${glyphsSource/".glyphs"/"-build.glyphs"}
# Call fontmake to generate variable font
echo "\tBuilding ${glyphsSource}.glyphs..."
fontmake -o variable -g $glyphsBuildSource
echo "\t${VFname}.ttf generated"
# Clean up files
mv variable_ttf/${VFname}.ttf ${VFname}.ttf
rm $glyphsBuildSource
rm -rf master_ufo
rm -rf instance_ufo
rm -rf variable_ttf
ttx ${VFname}.ttf
rm ${VFname}.ttf
ttx ${GXname}.ttf
mv ${GXname}.ttx tools/${GXname}.ttx
# Copy brace glyphs from variable font generated from Glyphs App
# Run script to find and copy TTGlyph and glyphVariations elements from source file and copy into target file
# Could probablh be done just with fonttools...
echo "\tAdding brace glyphs..."
xml tr tools/replaceBraceGlyphs.xsl \
-s replacements=${GXname}.ttx \
-s replacenames=$BraceGlyphs \
${VFname}.ttx > ${VFname}-brace.ttx
# Clean up files
rm tools/${GXname}.ttx
rm ${VFname}.ttx
ttx ${VFname}-brace.ttx
rm ${VFname}-brace.ttx
mv ${VFname}-brace.ttf ${VFname}.ttf
# Add featureVariation for bracket trick glyphs
echo "\tAdding bracket glyphs..."
python tools/replaceBracketTrick.py ${VFname}.ttf "$1"
mv ${VFname}-swap.ttf ${VFname}.ttf
# Fix non-hinting, DSIG and GASP table
gftools fix-nonhinting ${VFname}.ttf ${VFname}.ttf
gftools fix-gasp ${VFname}.ttf
echo "nonhinting, gasp fixed"
# Clean up files
rm ${VFname}-backup-fonttools-prep-gasp.ttf
# rm ${GXname}.ttf
# # Fix VF Metadata
# python tools/gftools-fix-vf-meta.py ${VFname}.ttf
# echo "vf-meta fixed"
# # Clean up and rename VF
# rm ${VFname}.ttf
# mv ${VFname}.ttf.fix ${VFname}.ttf
# # Correct nameID 6 (remove space)
# python tools/NAMEpatch.py ${VFname}.ttf
# rm ${VFname}.ttf
# mv ${VFname}#1.ttf ${VFname}.ttf
# echo "nameID 6 fixed"
# Fix DSIG
gftools fix-dsig --autofix ${VFname}.ttf
# if [ "$1" = "Italic" ]; then
# # Rename *-ItalicItalic to -Italic
# for i in *.ttf; do
# mv "$i" "${i//ItalicItalic/Italic}"
# done
# fi
# fontbakery check-googlefonts ${VFname}.ttf --ghmarkdown fontbakery-report.md
## move font into folder of dist/, with timestamp, then fontbake the font
# python3 tools/distdate-and-fontbake.py ${VFname}.ttf

30
sources/tools/old/test.sh Normal file
View File

@ -0,0 +1,30 @@
#!/bin/bash
set -e
# Fix VF Metadata
VFfonts=""
for i in *.ttf; do
VFfonts+="$i "
done
echo "\tFixing VF Family Metadata..."
python tools/gftools-fix-vf-meta.py $VFfonts
# Clean up VFs
for i in $VFfonts; do
rm "$i"
done
# Rename VFs
for i in *.fix; do
mv $i ${i/".ttf.fix"/".ttf"}
done
# Fix DSIG
for i in *.ttf; do
echo "\tFixing DSIG $i..."
# Fix DSIG
gftools fix-dsig --autofix "$i"
done

View File

@ -7,10 +7,30 @@ from fontTools.ttLib import TTFont
from fontTools.varLib.featureVars import addFeatureVariations from fontTools.varLib.featureVars import addFeatureVariations
inputTTF = sys.argv[1] inputTTF = sys.argv[1]
style = sys.argv[2] # style = sys.argv[2]
f = TTFont(inputTTF) f = TTFont(inputTTF)
if style == "Upright":
if "Italic" in inputTTF:
condSubst = [
# A list of (Region, Substitution) tuples.
([{"wght": (.8134, 1)}], {"uni20B5": "uni20B5.rvrn", # cedi
"cent": "cent.rvrn",
"dollar": "dollar.rvrn",
"uni20B2": "uni20B2.rvrn", # guarani
"dollar.tf": "dollar.tf.rvrn",
"cent.tf": "cent.tf.rvrn"}),
([{"wght": (0.6, 1)}], {"peseta": "peseta.rvrn",
"uni20A9": "uni20A9.rvrn", # won
"uni2761": "uni2761.rvrn", # curvedStemParagraphSignOrnament
"paragraph": "paragraph.rvrn"}), # won
([{"wght": (0.38, 1)}], {"uni20A6": "uni20A6.rvrn", # naira,
"colonmonetary": "colonmonetary.rvrn"}),
([{"wght": (0.18, 1)}], {"uni20B1": "uni20B1.rvrn"}) # peso
]
else:
condSubst = [ condSubst = [
# A list of (Region, Substitution) tuples. # A list of (Region, Substitution) tuples.
([{"wght": (-.46, .18)}], {"uniF8FF": "uniF8FF.rvrn"}), # apple ([{"wght": (-.46, .18)}], {"uniF8FF": "uniF8FF.rvrn"}), # apple
@ -35,25 +55,6 @@ if style == "Upright":
([{"wght": (0.178, 1)}], {"uni20B1": "uni20B1.rvrn"}) # peso ([{"wght": (0.178, 1)}], {"uni20B1": "uni20B1.rvrn"}) # peso
] ]
elif style == "Italic":
condSubst = [
# A list of (Region, Substitution) tuples.
([{"wght": (.8134, 1)}], {"uni20B5": "uni20B5.rvrn", # cedi
"cent": "cent.rvrn",
"dollar": "dollar.rvrn",
"uni20B2": "uni20B2.rvrn", # guarani
"dollar.tf": "dollar.tf.rvrn",
"cent.tf": "cent.tf.rvrn"}),
([{"wght": (0.6, 1)}], {"peseta": "peseta.rvrn",
"uni20A9": "uni20A9.rvrn", # won
"uni2761": "uni2761.rvrn", # curvedStemParagraphSignOrnament
"paragraph": "paragraph.rvrn"}), # won
([{"wght": (0.38, 1)}], {"uni20A6": "uni20A6.rvrn", # naira,
"colonmonetary": "colonmonetary.rvrn"}),
([{"wght": (0.18, 1)}], {"uni20B1": "uni20B1.rvrn"}) # peso
]
addFeatureVariations(f, condSubst) addFeatureVariations(f, condSubst)
outputTTF = inputTTF.replace('.ttf', '-swap.ttf') outputTTF = inputTTF.replace('.ttf', '-swap.ttf')