From 2681656073f1bddc82f49019aeb49f0cb8dd7b5a Mon Sep 17 00:00:00 2001 From: Ebrahim Byagowi Date: Sun, 31 May 2020 02:23:49 +0430 Subject: [PATCH] [test/text-rendering-tests] Update from upstream --- .../data/text-rendering-tests/DISABLED | 12 ++++ .../text-rendering-tests/Makefile.sources | 24 +++++-- .../text-rendering-tests/fonts/TestAVAR.ttf | Bin 1608 -> 1608 bytes .../text-rendering-tests/fonts/TestCMAP14.otf | Bin 1628 -> 1628 bytes .../fonts/TestGPOSThree.ttf | Bin 3500 -> 3500 bytes .../fonts/TestGPOSTwo.otf | Bin 1680 -> 1680 bytes .../fonts/TestGSUBThree.ttf | Bin 1504 -> 1504 bytes .../fonts/TestGVARNine.ttf | Bin 2168 -> 2168 bytes .../fonts/TestHVAROne.otf | Bin 3984 -> 3984 bytes .../fonts/TestKERNOne.otf | Bin 1380 -> 1380 bytes .../fonts/TestMORXEight.ttf | Bin 2184 -> 2184 bytes .../fonts/TestMORXEighteen.ttf | Bin 3256 -> 3256 bytes .../fonts/TestMORXEleven.ttf | Bin 1624 -> 1624 bytes .../fonts/TestMORXForty.ttf | Bin 2408 -> 2408 bytes .../fonts/TestMORXFour.ttf | Bin 4764 -> 4764 bytes .../fonts/TestMORXFourteen.ttf | Bin 1816 -> 1816 bytes .../fonts/TestMORXFourtyone.ttf | Bin 2248 -> 2248 bytes .../fonts/TestMORXNine.ttf | Bin 1624 -> 1624 bytes .../fonts/TestMORXOne.ttf | Bin 2404 -> 2404 bytes .../fonts/TestMORXSeventeen.ttf | Bin 1788 -> 1788 bytes .../fonts/TestMORXSixteen.ttf | Bin 1812 -> 1812 bytes .../fonts/TestMORXTen.ttf | Bin 1620 -> 1620 bytes .../fonts/TestMORXThirteen.ttf | Bin 1820 -> 1820 bytes .../fonts/TestMORXThirtyeight.ttf | Bin 2444 -> 2444 bytes .../fonts/TestMORXThirtyfive.ttf | Bin 1968 -> 1968 bytes .../fonts/TestMORXThirtyfour.ttf | Bin 3608 -> 3608 bytes .../fonts/TestMORXThirtynine.ttf | Bin 2436 -> 2436 bytes .../fonts/TestMORXThirtyone.ttf | Bin 2964 -> 2964 bytes .../fonts/TestMORXThirtyseven.ttf | Bin 2444 -> 2444 bytes .../fonts/TestMORXThirtysix.ttf | Bin 1836 -> 1836 bytes .../fonts/TestMORXThirtythree.ttf | Bin 1520 -> 1520 bytes .../fonts/TestMORXThirtytwo.ttf | Bin 2948 -> 2948 bytes .../fonts/TestMORXThree.ttf | Bin 4104 -> 4104 bytes .../fonts/TestMORXTwelve.ttf | Bin 2200 -> 2200 bytes .../fonts/TestMORXTwenty.ttf | Bin 3232 -> 3232 bytes .../fonts/TestMORXTwentyeight.ttf | Bin 2660 -> 2660 bytes .../fonts/TestMORXTwentyfive.ttf | Bin 3260 -> 3260 bytes .../fonts/TestMORXTwentyfour.ttf | Bin 1828 -> 1828 bytes .../fonts/TestMORXTwentynine.ttf | Bin 3012 -> 3012 bytes .../fonts/TestMORXTwentyone.ttf | Bin 3244 -> 3244 bytes .../fonts/TestMORXTwentyseven.ttf | Bin 2432 -> 2432 bytes .../fonts/TestMORXTwentysix.ttf | Bin 3252 -> 3252 bytes .../fonts/TestMORXTwentythree.ttf | Bin 1836 -> 1836 bytes .../fonts/TestMORXTwentytwo.ttf | Bin 3256 -> 3256 bytes .../fonts/TestMORXTwo.ttf | Bin 4960 -> 4960 bytes .../fonts/TestSFNTOne.otf | Bin 0 -> 3228 bytes .../fonts/TestSFNTTwo.ttf | Bin 0 -> 3228 bytes .../fonts/TestSVGgradientTransform.otf | Bin 0 -> 48292 bytes .../fonts/TestSVGgzip.otf | Bin 0 -> 3024 bytes .../fonts/TestSVGmultiGlyphs.otf | Bin 0 -> 10876 bytes .../fonts/TestShapeLana.ttf | Bin 0 -> 87032 bytes .../fonts/TestTRAKOne.ttf | Bin 1752 -> 1752 bytes .../text-rendering-tests/tests/AVAR-1.tests | 34 +++++----- .../text-rendering-tests/tests/CFF-1.tests | 26 ++++---- .../text-rendering-tests/tests/CFF-2.tests | 26 ++++---- .../text-rendering-tests/tests/CFF2-1.tests | 18 ++--- .../text-rendering-tests/tests/CMAP-1.tests | 8 +-- .../text-rendering-tests/tests/CMAP-2.tests | 4 +- .../text-rendering-tests/tests/CMAP-3.tests | 40 +++++------ .../text-rendering-tests/tests/CVAR-1.tests | 6 +- .../text-rendering-tests/tests/CVAR-2.tests | 6 +- .../text-rendering-tests/tests/GLYF-1.tests | 2 +- .../text-rendering-tests/tests/GPOS-1.tests | 38 +++++------ .../text-rendering-tests/tests/SFNT-1.tests | 2 + .../text-rendering-tests/tests/SFNT-2.tests | 2 + .../text-rendering-tests/tests/SHARAN-1.tests | 12 ++-- .../text-rendering-tests/tests/SHBALI-1.tests | 44 ++++++------- .../text-rendering-tests/tests/SHBALI-2.tests | 24 +++---- .../text-rendering-tests/tests/SHKNDA-2.tests | 32 ++++----- .../text-rendering-tests/tests/SHKNDA-3.tests | 62 +++++++++--------- .../text-rendering-tests/tests/SHLANA-1.tests | 52 +++++++++++++++ .../tests/SHLANA-10.tests | 47 +++++++++++++ .../text-rendering-tests/tests/SHLANA-2.tests | 37 +++++++++++ .../text-rendering-tests/tests/SHLANA-3.tests | 13 ++++ .../text-rendering-tests/tests/SHLANA-4.tests | 3 + .../text-rendering-tests/tests/SHLANA-5.tests | 13 ++++ .../text-rendering-tests/tests/SHLANA-6.tests | 7 ++ .../text-rendering-tests/tests/SHLANA-7.tests | 18 +++++ .../text-rendering-tests/tests/SHLANA-8.tests | 13 ++++ .../text-rendering-tests/tests/SHLANA-9.tests | 6 ++ 80 files changed, 433 insertions(+), 198 deletions(-) create mode 100644 test/shaping/data/text-rendering-tests/fonts/TestSFNTOne.otf create mode 100644 test/shaping/data/text-rendering-tests/fonts/TestSFNTTwo.ttf create mode 100644 test/shaping/data/text-rendering-tests/fonts/TestSVGgradientTransform.otf create mode 100644 test/shaping/data/text-rendering-tests/fonts/TestSVGgzip.otf create mode 100644 test/shaping/data/text-rendering-tests/fonts/TestSVGmultiGlyphs.otf create mode 100644 test/shaping/data/text-rendering-tests/fonts/TestShapeLana.ttf create mode 100644 test/shaping/data/text-rendering-tests/tests/SFNT-1.tests create mode 100644 test/shaping/data/text-rendering-tests/tests/SFNT-2.tests create mode 100644 test/shaping/data/text-rendering-tests/tests/SHLANA-1.tests create mode 100644 test/shaping/data/text-rendering-tests/tests/SHLANA-10.tests create mode 100644 test/shaping/data/text-rendering-tests/tests/SHLANA-2.tests create mode 100644 test/shaping/data/text-rendering-tests/tests/SHLANA-3.tests create mode 100644 test/shaping/data/text-rendering-tests/tests/SHLANA-4.tests create mode 100644 test/shaping/data/text-rendering-tests/tests/SHLANA-5.tests create mode 100644 test/shaping/data/text-rendering-tests/tests/SHLANA-6.tests create mode 100644 test/shaping/data/text-rendering-tests/tests/SHLANA-7.tests create mode 100644 test/shaping/data/text-rendering-tests/tests/SHLANA-8.tests create mode 100644 test/shaping/data/text-rendering-tests/tests/SHLANA-9.tests diff --git a/test/shaping/data/text-rendering-tests/DISABLED b/test/shaping/data/text-rendering-tests/DISABLED index 8539c0ee1..272852260 100644 --- a/test/shaping/data/text-rendering-tests/DISABLED +++ b/test/shaping/data/text-rendering-tests/DISABLED @@ -7,3 +7,15 @@ tests/SHBALI-1.tests tests/SHBALI-2.tests tests/SHKNDA-2.tests tests/SHKNDA-3.tests + +# TODO: Needs investigation +tests/SHLANA-1.tests +tests/SHLANA-2.tests +tests/SHLANA-3.tests +tests/SHLANA-4.tests +tests/SHLANA-5.tests +tests/SHLANA-6.tests +tests/SHLANA-7.tests +tests/SHLANA-8.tests +tests/SHLANA-9.tests +tests/SHLANA-10.tests diff --git a/test/shaping/data/text-rendering-tests/Makefile.sources b/test/shaping/data/text-rendering-tests/Makefile.sources index ccbbb37f8..78d48ebe9 100644 --- a/test/shaping/data/text-rendering-tests/Makefile.sources +++ b/test/shaping/data/text-rendering-tests/Makefile.sources @@ -1,8 +1,8 @@ TESTS = \ tests/AVAR-1.tests \ tests/CFF-1.tests \ - tests/CFF2-1.tests \ tests/CFF-2.tests \ + tests/CFF2-1.tests \ tests/CMAP-1.tests \ tests/CMAP-2.tests \ tests/CVAR-1.tests \ @@ -29,6 +29,7 @@ TESTS = \ tests/HVAR-2.tests \ tests/KERN-1.tests \ tests/KERN-2.tests \ + tests/MORX-1.tests \ tests/MORX-10.tests \ tests/MORX-11.tests \ tests/MORX-12.tests \ @@ -38,7 +39,7 @@ TESTS = \ tests/MORX-17.tests \ tests/MORX-18.tests \ tests/MORX-19.tests \ - tests/MORX-1.tests \ + tests/MORX-2.tests \ tests/MORX-20.tests \ tests/MORX-21.tests \ tests/MORX-22.tests \ @@ -49,7 +50,7 @@ TESTS = \ tests/MORX-27.tests \ tests/MORX-28.tests \ tests/MORX-29.tests \ - tests/MORX-2.tests \ + tests/MORX-3.tests \ tests/MORX-30.tests \ tests/MORX-31.tests \ tests/MORX-32.tests \ @@ -60,26 +61,35 @@ TESTS = \ tests/MORX-37.tests \ tests/MORX-38.tests \ tests/MORX-39.tests \ - tests/MORX-3.tests \ + tests/MORX-4.tests \ tests/MORX-40.tests \ tests/MORX-41.tests \ - tests/MORX-4.tests \ tests/MORX-5.tests \ tests/MORX-6.tests \ tests/MORX-7.tests \ tests/MORX-8.tests \ tests/MORX-9.tests \ + tests/SFNT-1.tests \ + tests/SFNT-2.tests \ tests/SHBALI-3.tests \ tests/SHKNDA-1.tests \ $(NULL) DISBALED_TESTS = \ tests/CMAP-3.tests \ - tests/MORX-31.tests \ - tests/MORX-41.tests \ tests/SHARAN-1.tests \ tests/SHBALI-1.tests \ tests/SHBALI-2.tests \ tests/SHKNDA-2.tests \ tests/SHKNDA-3.tests \ + tests/SHLANA-1.tests \ + tests/SHLANA-10.tests \ + tests/SHLANA-2.tests \ + tests/SHLANA-3.tests \ + tests/SHLANA-4.tests \ + tests/SHLANA-5.tests \ + tests/SHLANA-6.tests \ + tests/SHLANA-7.tests \ + tests/SHLANA-8.tests \ + tests/SHLANA-9.tests \ $(NULL) diff --git a/test/shaping/data/text-rendering-tests/fonts/TestAVAR.ttf b/test/shaping/data/text-rendering-tests/fonts/TestAVAR.ttf index 5df9867d83986df962267824c3a2e47463350ed7..4a16594e4049a8981f3b55bf09c76ca6881bb1ee 100644 GIT binary patch delta 78 zcmX@XbAm^NfsuiMfsdhqftew}KUm+W`O`$Ni6S{Hd{gggPi!fWStY2K5YKP(m4TW0 g1yCi!W#t1GLG+DTH{~V^FivLn^K{<4jBybQ08?@oJpcdz delta 78 zcmX@XbAm^NfsuiMfsdhqftew}KUm*r;@^qx6Gd`ZI6oXcKCz`hX1Z&vUOd0eR|aP0 f7eJK^mz57(1k+y+?wTyXIGNcy+;8(T#ziauk?I*c diff --git a/test/shaping/data/text-rendering-tests/fonts/TestCMAP14.otf b/test/shaping/data/text-rendering-tests/fonts/TestCMAP14.otf index da485d9ecbb89cec05003f9bade758b14729d666..94b5ba96e2b446378f3058417df91d2e2cd0ab39 100644 GIT binary patch delta 91 zcmcb^bBAYwf=ZO&Ybyo@Mg|~ANX|_xXbk2*&A`B%1LRN4NKH)P&vVq9=#rrDvwF&- pcz&C&49v_gK#DJaR*?nKH)h?GW03#9c;b>REs(La~6H|Dj2owZjW;>UHcz&C&49v_g zfFcZ6i*|ek(Klw@l>4{%zXg*4iw}^?&cFl`Wnh@B!mK)ZC6mHrPi8A-KTqe$ZOlrO z1(-#pfkpwPL0AT4E)c{3c_5a|&PhQ23I+y7hvc#n1)w+(u$=%AX$9%I z?#qgu7#LVyOze;gVw3@@>d8n=OyN3zV;chl(+!|1vkagBt0I#)&=eIQUnL{Aq=GHt zpD>Uw0OX70RGUSgaFR1Y$hFE_EGfT5Zt0LWi4@rUYWSJocJ$(4)>lTBF#lo^34 zfcR~NxlTO4%~u9y<`+N_hO0$8zC!5Rk&_)5MMRjo7%G_}fJQVh01f)L_}|xm%O{60 zs!pECXvORu?l<`wqmndG2Qvf%jRcv@z#sz@0dXd$Gd-QG!Q`;nhxs+*=F4n1*#NH& BMza6_ diff --git a/test/shaping/data/text-rendering-tests/fonts/TestGPOSTwo.otf b/test/shaping/data/text-rendering-tests/fonts/TestGPOSTwo.otf index 76d04ebc6cfb77f08dda3b80a526cfca2de41040..55cceb7abc22a1f3a47843975528fe67c612d22a 100644 GIT binary patch delta 87 zcmbQhJArqCfl8EM?^6Z_Mgax}hJ@tY!~!)IwWSOUEIdHIO-5>B3cvkv_K6`0G9QwZ nMB@2vzA`W~zW~ZHT*+P42BL4wx+ypDLN&9Wr}Jh%MkiJP;qn+y delta 87 zcmbQhJArqCfl7uB3b)Yo$rD2oWbQ0$ lWQymv`O3h|`~oP)a3yzD8-!lDYT|`zX76yn&3=qdtN;YL8BPEI diff --git a/test/shaping/data/text-rendering-tests/fonts/TestGSUBThree.ttf b/test/shaping/data/text-rendering-tests/fonts/TestGSUBThree.ttf index 8fce4ac4dd893ef65fa6f504c69c77f616f7e146..ec27e032266e4198789dd8b3d9dc586076a906c4 100644 GIT binary patch delta 62 zcmaFB{eXLd0!x%&+J=cLy3EIwR!s~kkeT(~ur{9G<|_ju^9u$bxPFuM42Zrl>!#eq Q2a}ooJe@a}F=nv<0K)4Q8UO$Q delta 62 zcmaFB{eXLd0!xNW+S-XKy3DM-zb1wh$TY-6J&xzM`O3h^{DJ`puHR%m1EF2=CO(+V N>>cj6xr{N31pvRr78(Em diff --git a/test/shaping/data/text-rendering-tests/fonts/TestGVARNine.ttf b/test/shaping/data/text-rendering-tests/fonts/TestGVARNine.ttf index 0ecd326bb070213dd870906450b41271687b2828..3dddf69f0933f0c8aa6eb58539449f4534638190 100644 GIT binary patch delta 77 zcmew%@Iyd^fsuiMfrp`iftkUAbm(@e>;WO{Exq delta 77 zcmew%@Iyd^fsuiMfrp`iftkU700dXI+&&1Vw|)@V#Hh^6 L$h=vFFNYBTDl!r; diff --git a/test/shaping/data/text-rendering-tests/fonts/TestKERNOne.otf b/test/shaping/data/text-rendering-tests/fonts/TestKERNOne.otf index 35369d1319a5eaf134a58f68df0baabe4feb56e7..d3f7c0c932d4b3903687f04cb12b9883416dc41f 100644 GIT binary patch delta 87 zcmaFD^@MAJf=ZNN`zr& delta 87 zcmaFD^@MAJf=Y%=`*Q{cMgax}hJ@tY!~&*C3=#|s%sxQAPey8D3a4*w`9zljnVi%! l-SPZ3Um2L0UjXG8F29$13!%A#CSIs!_73;k?8hj^0suL}8MOca diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXEight.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXEight.ttf index 9255e996e3d94023a64866e376becef2187030e4..a53de2e6b975e3e2211e8bf02cd3264dd5adcfa3 100644 GIT binary patch delta 77 zcmeAW><|=TU}Rum;AUuGU}iAz57sw|5=?(IQACGDFeW&CqDzBJ1^evWcz&C&49v_g efGQcT)tJo&(Klw@l$-cqGP9qj^X4)}A$9=Bcogmc delta 77 zcmeAW><|=TU}Rum;AUuGU}iAz57sxzkV(HkQACG@-*)GOi7pK?33}%h;I&lL4{Wull delta 77 zcmdlXxkFNffsuiMft#U$ftkU;KUm)=LnfnqqKFO)|Js0@i7pK?68DZu#Pi#HWngB0 d0aVFwt*%1>Ot-hpoA_Wdvv;`P<}yYnZUFLL72^N^ diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXEleven.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXEleven.ttf index 92b889cafde2ad4dd891ce6943fb78c030701ac0..b7e0f45493f1c415af2a0bd5276ed24e9248741b 100644 GIT binary patch delta 77 zcmcb?bAv~OfsuiMft#U$ftkU;KUm)=N-#ZrqKFQQ!0O=4i7pK?lPCG?kLS1f%D~M0 f0;rPVT8-H(5Pf6TO}U8=CNukaI&Usxe8d6(1zHx) delta 77 zcmcb?bAv~OfsuiMft#U$ftkU;KUm)=Lnb|CqKFO)UvK-(i7pK?)!QFGjpw)d%D~M0 d0;rPVT8-H(FkQ>rH}Sz_X76yn&1H;_SO7R$7tH_w diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXForty.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXForty.ttf index 37d0b637778833a1f9c3c16b21e3025e0bab48e0..1d348ddfce49bdf53c2e49a4d2f1f9a617a42dfa 100644 GIT binary patch delta 76 zcmaDM^g>94fsuiMft#U$ftkU;KUm)=N-&RYqKGc@fhBJyx-`f*Ml6Vo=ePOFz|8yt esF2}WU55gQzA@{j+{6cynf*MSHQBo@d3 delta 76 zcmaDM^g>94fsuiMft#U$ftkU;KUm)=Lne=TqKGat>yhe-E)6njI}#n^`E9;3Ff+dZ eDrC4;*P#HSuiyW%cH)D{%--RCo68tKu>%0*Z5GG? diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXFour.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXFour.ttf index 002897230ff255adb5c9cc15ba8937ab94feda47..07512ab5e5df8d515cdbd05d0ad5bd7d0a4e1a15 100644 GIT binary patch delta 77 zcmbQEI!9H6fsuiMft#U$ftkU;KUm)=O0Yj-qKFQQV7%Loi7pK?ZjKjH;`wd9GB7j0 e0IFoTR;l?0MBkWoQ*Ppe$;^J9&YQ~^)dT_MZ56fv delta 77 zcmbQEI!9H6fsuiMft#U$ftkU;KUm)=L#97;qKFO)zuli*6I~i)^m0B!H delta 77 zcmbQiH-k@vfsuiMft#U$ftkU;KUm)=LneLlL=hbpzKyBZC%QDq*z$FE$Mf5KWngB0 c0aVFwt*%26LeJuu_+T=#cevl?GR8%$0NtDwivR!s diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXFourtyone.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXFourtyone.ttf index 98ebe3329f977d12eb3d87818253b715babd0194..be18c759254a4ba1d0f722c22741ff070248539d 100644 GIT binary patch delta 77 zcmX>hctTKwfsuiMft#U$ftkU;KUm)=N-$&kL=hbpq3ops6I~i)be7&eAJ1>|m4TW0 f1yCi!wYm-k5Pf6TO}U8=CNukaI&Usx3}OcW0~Z!N delta 77 zcmX>hctTKwfsuiMft#U$ftkU;KUm)=LndR&L=hbp!9BZvPIPII5q!IWIiBCi delta 77 zcmcb?bAv~OfsuiMft#U$ftkU;KUm)=Lnb|CqKFO)U$5Wui7pK?wSU6z$Mf5KWngB0 d0aVFwt;TE?guXIo;)BV|-r;_m%NQTA001#a7%Kn( diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXOne.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXOne.ttf index 88b8decc63ba096a8e7b0a6af188c0dac16ba8b9..53d64662818380a8f5f8e8740b6cb22cab63bb52 100644 GIT binary patch delta 77 zcmaDN^h8L6fsuiMft#U$ftkU;KUm)=N-*QZL=hbpAz{9LU_8L=0a delta 77 zcmaDN^h8L6fsuiMft#U$ftkU;KUm)=Lnhjpw)d%D~M0 f0;rPVT3v@Ch`urFrrg8_lbQWIoi~>;wy^>L7s3`) delta 77 zcmeyv`-fMAfsuiMft#U$ftkU;KUm)=LneLlL=hbpzHO^&C%QDq*u^t4$Mf5KWngB0 d0aVFwt*%26OgG#`D{JWngB0 d0aVFwt*%26OgGJ)Hu1q^X76yn&1H=9SOMX478U>i diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXTen.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXTen.ttf index 5827ec5a60c8d8e37762784997093da541cb64ef..1d4389785e011b6e32d3068d9c655caead02687d 100644 GIT binary patch delta 77 zcmcb@bA?BQfsuiMft#U$ftkU;KUm)=N-#ZrqKFQQ!0O=4i7pK?GtT*G#`D{JWngB0 f0aVFwt;TE?h`urFrrg8_lbQWIoi~>;-eUm(_iYw$ delta 77 zcmcb@bA?BQfsuiMft#U$ftkU;KUm)=Lnb|CqKFO)UvISjM3)AchA(!DIXonZ3jPHkUDqaR30?3KnYs diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXThirtyfive.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXThirtyfive.ttf index f15706317d0f697d27b22af6a6a8bb8df82c05f2..88d67efc18883d5e233d16ed65fa5da8d58f8aea 100644 GIT binary patch delta 76 zcmdnMzky$bfsuiMft#U$ftkU;KUm)=N-(2uqKGc@*(Gl#x-`h-hh1-s=ePOFz|8yt esF2}WU55gQzA@{j+{6cynf*MSHk-Rz!tLr delta 76 zcmdnMzky$bfsuiMft#U$ftkU;KUm)=LnfnpqKGatf9v*%E)6mvdqqFS^V@u7U}k;+ eRLF3xu0sJtU%#{S<-`Y*nZ3jPHkUD4u>k<`Y8JBq diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXThirtyfour.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXThirtyfour.ttf index a70dadccf471cb7799126548a82d5f72060acef3..94d064ff9e360576f6d683765f9e7b449583391f 100644 GIT binary patch delta 77 zcmbOsGebs%fsuiMft#U$ftkU;KUm)=N-%xqL=hbp!34Kc6I~i)ikl{$jpw)d%D~M0 f0;rPVTBYV25Pf6TO}U8=CNukaI&UsxT*Lza{n{4S delta 77 zcmbOsGebs%fsuiMft#U$ftkU;KUm)=LneLNL=hbpfw`RW6I~i)B0lqK#`D{JWngB0 f0aVFwty1$1h`xS(cJagqlbOB4{Wg~|F5&?I%T*QF diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXThirtynine.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXThirtynine.ttf index c106ae945cc6f5d39cfcdfe105b269e46c6d4e92..189061ac7b593cecc5910efad230bc1844aaf778 100644 GIT binary patch delta 76 zcmZn>ZV?t?U}Rum;AUuGU}iAz57sw|63kZV?t?U}Rum;AUuGU}iAz57sxzkjZ17D5A^EdSul^mj)Tzr0CP}{5D@1n3-Py d6*63_>repE*YE$hGx5P>X76yn&1H;y900x46~X`j diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXThirtyone.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXThirtyone.ttf index c64c12c06957ef34e90ddeba7e18ad7b1acc0c84..39455eafe63c3b02491b4baa3dabf332fa151e0e 100644 GIT binary patch delta 77 zcmbOtK1E!FfsuiMft#U$ftkU;KUm)=N-#ryqKFQQptswOi7pK?n^;!%$Mf5KWngB0 f0aVFwty1$1h`urFrrg8_lbQWIoi~>;%5ebz$gveV delta 77 zcmbOtK1E!FfsuiMft#U$ftkU;KUm)=LncFJqKFQQK#S?!i7pK?(`!z9$Mf5KWngB0 f0aVFwty1$1h`xULg!9A)lbOB4{Wg~|%5ebz=|>hh diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXThirtyseven.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXThirtyseven.ttf index 22057f18cc8c94699919107bf8d4e96db43744d6..9bdea1188a2f1a68d158dc4fc804a13777030e17 100644 GIT binary patch delta 76 zcmeAX?hzJYU}Rum;AUuGU}iAz57sw|63kL=hbp!A!SP6I~i)j_xs76whz-m4TW0 f1yCi!wMxx5Ao|9vn{pE$OlJ1;blzOXSj7SWFBun9 delta 77 zcmeys{efGAfsuiMft#U$ftkU;KUm)=LneLAL=hbpfu&EUO>}9HS*`O~AfDgmD+4q0 f3!qAdYn7UBK=k$N<*z0_n9S@Q?zg#&v5Ex%Ne~!Q diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXThirtytwo.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXThirtytwo.ttf index 07ed76c1b7738ddf0f841cbe2bf4a633c8829ce0..e8314c748913b5559889558886e9cd46c107f88f 100644 GIT binary patch delta 77 zcmZn>ZxI(^U}Rum;AUuGU}iAz57sw|63mdFD5Aq6=ZxI(^U}Rum;AUuGU}iAz57sxzkjaplD5Aq6(Bi#$qDzBJZ|m}<@%%Pl8JL-0 e097(vtJHi0qOV`RCpq!KWM=Phzs+Tgd|UwH#1<9+ diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXThree.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXThree.ttf index 56984f2e68f6a0b16970bbdfe94db9d3f711c3fe..33cc72bd5c063037624028d711ef9c065cb3bc57 100644 GIT binary patch delta 77 zcmeBB=ui-0U}Rum;AUuGU}iAz57sw|66_C}D5Aq681J@YqDzBJ><`Yacz&C&49v_g efGQcTRcgKg(Klw@l$-cqGP9qj^X4+fNqhj^qZSkZ delta 77 zcmeBB=ui-0U}Rum;AUuGU}iAz57sxzkm>iID5Ar{Z})olM3)8`H>Leu@%%Pl8JL-0 d097(vtJHi0rmN}{Cq9_W>>cj6xr}iV9{}pQ78C#g diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXTwelve.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXTwelve.ttf index b1e4bc447adba6c2b14f2f60c205f39174563de0..b660833a8ee7f09af820209517bcdda509cf5bd2 100644 GIT binary patch delta 77 zcmbOsI73i`fsuiMft#U$ftkU;KUm)=O0eH{qKFQQ;C`Fc6I~i)z6SPi#`D{JWngB0 f0aVFwtyca%h`urFrrg8_lbQWIoi~>;DzO6q;YHOt;UOJ@LV0X76yn&1H;Q+yLXK6{-LL diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXTwentyeight.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXTwentyeight.ttf index edabb439cdc63fa958a8d2dee7ed44fa96ebfc22..e02d3541123a3343e9a042e256b2fb727c096e06 100644 GIT binary patch delta 77 zcmaDN@KbrIg=OT delta 77 zcmaDN@MBkWoQ*Ppe$;^J9&YQ~^-M9hxTouCr delta 77 zcmdlZxkpljfsuiMft#U$ftkU;KUm)=LnfnqqKFO)|MAX~6I~i)L~Z<+#q-;IWngB0 d0aVFwt*%1>OfTH~d*Xx1%--RCo68v8xB&-i7Qz4k diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXTwentyfour.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXTwentyfour.ttf index 271dddb011258059afe0bbe457fe32e19e164417..3706325822df585405e08da7454135a118958c76 100644 GIT binary patch delta 77 zcmZ3&w}elGfsuiMft#U$ftkU;KUm)=N-(2pqKFQQz}Y2lCb~4p1h%=~kLS1f%D~M0 f0;rPVT3v?%h`urFrrg8_lbQWIoi~>;u44rN3@sMu delta 77 zcmZ3&w}elGfsuiMft#U$ftkU;KUm)=LnfnqqKFO)-|t@LOBUz= diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXTwentynine.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXTwentynine.ttf index 9f015ca59c3d4fa5b8c8ae0a18c29f4f697a9c29..10368bc2a0745e2fc7c533928d386242476a9243 100644 GIT binary patch delta 77 zcmX>ieneb^fsuiMft#U$ftkU;KUm)=N-#ryqKFQQptswOi7pK?YgSEhjpw)d%D~M0 f0;rPVTBYV25Pf6TO}U8=CNukaI&Usx^y2~m@EaBj delta 77 zcmX>ieneb^fsuiMft#U$ftkU;KUm)=LncFJqKFQQK-0EI6I~i)CaG@z9?x&{m4TW0 f1yCi!wMxx5Ao}_xPmhTYCNq17`)w{`^y2~m9%>f~ diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXTwentyone.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXTwentyone.ttf index 410168046b5d3d94abc519950c011f854ef9eda7..e9e8413c9d4f4ad0f5d0506b8f20a0a3189287f8 100644 GIT binary patch delta 77 zcmZ1@xkgfifsuiMft#U$ftkU;KUm)=N-(2pqKFQQ;DIG?C%QDq7`RI=iRZWZ%D~M0 f0;rPVT3v?%h`urFru@VQlbQWIoi~>;nsEaF_E8nd delta 77 zcmZ1@xkgfifsuiMft#U$ftkU;KUm)=LnfnqqKFO)|EAC1Cb~4pNcdFGi08NY%D~M0 d0;rPVT3v?%nC{iknD}5avv;`P<}yYzZU6{I70Cbq diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXTwentyseven.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXTwentyseven.ttf index 960b4cff5f4e9f410191fd1a9dbaa0e78dee8536..a459cb35193e8c96e6cd12901ab397675d2497c8 100644 GIT binary patch delta 77 zcmZn=ZV(n>U}Rum;AUuGU}iAz57sw|63nQaD5Aq6JZH(MBkWoQ-0!u$;^J9&YQ~^xi|p*k`^lf delta 77 zcmZn=ZV(n>U}Rum;AUuGU}iAz57sxzkjW^UD5Aq6xKcD>qDzC!)q<|lcz&C&49v_g dfGQcT)paO<>E)i2CO(+V>>cj6xr~vE0|3uo6)XS% diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXTwentysix.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXTwentysix.ttf index 603b1c62321fcd45e25dd16ab4b386c3c944ab06..040fd874e5975c5cbb1d7f90f46fdaecd1e39bf4 100644 GIT binary patch delta 77 zcmdlYxkXZhfsuiMft#U$ftkU;KUm)=N-(2pqKFQQ;DIG?C%QDq80bsn#Pi#HWngB0 e0aVFwt*%1>MBkWoQ-0!u$;^J9&YQ~^?YIH&I~9-s delta 77 zcmdlYxkXZhfsuiMft#U$ftkU;KUm)=LnfnqqKFO)|B1)HC%QDqNN~&wi|4ob%D~M0 d0;rPVT3v?%m|iTQJMqC}X76yn&1H;s+yDT86_5Y` diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXTwentythree.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXTwentythree.ttf index df34912d476c160172c6877ac725d19fe0670c37..18a90fd462ca65477d84012c6c02351ba0f410b8 100644 GIT binary patch delta 77 zcmZ3(w}wxIfsuiMft#U$ftkU;KUm)=N-(2pqKFQQz}Y2lC%QDq1opVb#`D{JWngB0 f0aVFwt*%1>MBkWoQ-0!u$;^J9&YQ~^x3K~M{`?k% delta 77 zcmZ3(w}wxIfsuiMft#U$ftkU;KUm)=LnfnqqKFO)-|=%g6I~i)EE_*Pjpw)d%D~M0 d0;rPVT3v?%n4ZcMH}Sz_X76yn&1H<+SOEul7K8u* diff --git a/test/shaping/data/text-rendering-tests/fonts/TestMORXTwentytwo.ttf b/test/shaping/data/text-rendering-tests/fonts/TestMORXTwentytwo.ttf index 4459e8a777655e4d8de99d3f2da11ba8a17f23c3..f2b6f6ce15c5353b1d4930945efefcf68be62b0a 100644 GIT binary patch delta 77 zcmdlXxkFNffsuiMft#U$ftkU;KUm)=N-(2pqKFQQ;DIG?C%QDq82p^25zlY)m4TW0 f1yCi!wYm-k5Pf6TP5FrrCNukaI&Usxbm9g88SoaQ delta 77 zcmdlXxkFNffsuiMft#U$ftkU;KUm)=LnfnqqKFO)|7NjO!sAbm&@s%I|W9S(S delta 77 zcmaE$_CQU9fsuiMft#U$ftkU;KUm)=L#BV_L=hbp{-FKyC%QDqY?3;m6whz-m4TW0 e1yCi!wMxx5V7e-Zb>f4`%--RCo68tq2?78r+!qc2 diff --git a/test/shaping/data/text-rendering-tests/fonts/TestSFNTOne.otf b/test/shaping/data/text-rendering-tests/fonts/TestSFNTOne.otf new file mode 100644 index 0000000000000000000000000000000000000000..974e2863dc3251541ce5c9dc7164f363bd0c1263 GIT binary patch literal 3228 zcmcgudu$W;9smCBe0P4uc{mpbsFHIWVxS?e<2+4D6Nk7YL`lF7P$|$l@g;HQ*p6*p zDFQU{$mq60w?W~bbw!O<%>g>GZbIydw4qI~G6|`gP`h?xqAOa;N_%Ek@V<9GSm>&0 ze^g8KyYKt^{d|8f|N4W$ekg!_K*K<%-!FJyI(-9x?FFEYtO;~K4FCkd{B5NArvrmN zMMCyEevJJASN-^7V?(>N;Fb>tMrm!e!fKAGOh&Orw2?L@gK8XpN!E66CyGbkG;Lpu}jJiLMaEhr1I z(4<)N{4E*fp8)7;6Y*3!_h;CM_yx4DP_ZK3dmqoVK3mxK3D7j+0QlqLi<2sSJpLXq zxfW`O7EtDZQndJoG4#zG)}TVb07DJsyUrWcuTItI;3Y7sGQrpiV37}NUNqH8j$pK& zI!tXw-MTy_TcMuRDn5+n_<1t8Zc`t$g8)8SKn#}<^Ck3A=bhZ4E+8+cF(vR$UW-x% z4%Gv{CY16#g*`3TcpX^b35{ow@6>n$m~qDP{sr(N3~RgvoN!y?tw51-+#y6~z&dSY zvBnc9BO5iI0t<<1ybfx}w8pc@zoPL5C?~(x_ySTv-qCmq^iiK_ycKkGPiH)_D;XIZ zPYbUL^-s84g~3>4Bpw!Ph3?o$T~JJ=1OC2Xe@xsUj%|yEk_$A#f2vk$sz78i9uqp_ z(_$~e>|2J0`bxGj!;q*P!WxcpiK-5+hSocDWu0mA<*3`^e4nv-nlpLAZ!$q zsR$->*SYHiHJ28uWC?8#MWUhMs3`1+q{oGj;O|&3gwkGNJe^K>U9QwfGLlHA>Qa$t zT|7DF>i735mK2)eSSc0XmK+gPifBq0K0Fb-+l4X@*<$JKR1 zD{_MnL)!@Yg+YW`)O4d}1nMA&atb2?;Db~pidE?$fZQl@J5&@RYVsaYwU>OHh#d)tG^TczL_Up~ z6yE^$*o(9u=SJ~en7Q|n3RMJolOO*>qM*$(Ebir|aaP|~^WwsEqOGx%HDqF5QA`fLh zx_ge1EQQCizbKLTV!ULCz2VId$=SbFXI3W@hKk%)N&63b}bLlbOq8-lns4chB+i)%&}ptL*B3w(=9*qn9US zZ|3sZo(%VQndiGMM`Z8E+~o*AF_vNH`_QAyiRSJMCwcpMr|g}R7G35tvW1r!*())b zRrBX3(vgeYyxgIwIBC%Y?;M(EGXZ|$D_qwQb6cswUOmrrWmrr0mL>a%T>I0LKbO9B zqeMFRgLh9^cV?%`Br7ZLyF0+h3cWYLpnOeAFw!%u?7hMNUfOy^-pW|Ba+~}&!N^*7 zO3U7zUc2cMXU$e=qTQIir6xW-FO5p9)bl~fHA#073(S4GTB59b+ofA&pWeAB*(6KD z`PP>!t!?{mAD{c{uNF(B<#%%N?z*piLta#IZ-7JB!*@RX`ddrn`fM97^~`hVI``q8 zr@Dgao=TaL-{z&!KXKL{w_p2cx5vA2s=ZQX<#NI3FshJFK^3y=HeK4?$5|>~Y0jAq zFPKfo@WLmgrM-ItKe{J1DxTPW=J>G}j-ITX=JxDA{9|!0O{2=widOaEl)z>j zTga3D=oi zX@F+VVf9!YPMY&r8ylLNJoRO^=9(Hu702>CLPKz#Mkjt*j&)Qy`7%#^b5kRB>B#$( z+7yk4<82EanwuRQ$Fh8l+v%{?IBW8mZDl-Ps<>V0*?SBBdxqB>YM@z`<`|vM$P^m% zMMcH7H;bNP*#cWZVQHDkSU^z*YpKy>GM1L=2}$U5dWP2PnIcBdK3>Apgf{R+H7E60 zt)P%)DV@Q5{W^8w-kR&A`nUH_uojx7h#9>MB@D|2gJ$QULoc(OzK}JV_>kFBP*A?e zRA4ddj7Ey3%oJ<1Og33`EWM=ZIkQ1;Ey9nfgf>`c4)oB2b6AUW$m2W7iT7g{-lu!v zD1gUNjMJb@9yZ8wWh!x$G&MHVIB>ZiGPeKQ6rT}md)gb>XQ!5|cC8Jq3bnAl%`3vO zK5PGskvp zLqdiCO?;JZE36$9G-+K?qg8VXOsty_+qxlbXdA3dLaHXzZrwW36)k0>J+mu#&z%nz zx@y`V)e^n;eEpuU_scI304RjLKtq3r-!FK-_2wM_wg-SZvNq85Bw7(+dJ(Dq$-sb5 zk&wNPA46Zj*)aCVsECj)C_ghi5lX;z7zAMcjB@K}bmz#mt6eU{-vFSGjESKz|C4C} zZHj->7%JHH&Wk&LX}AWg!-t z5ItuZC(1tp(A6d4sdVm7unFrI(7r;g73;0PwC^`h7qxy2G>vrt{C@Gp36(xNIR#9v zg&L#Cx$cHr)O|2qF&|6O( zrnaDNeV&qS&_L=G45I-*O9s|&?u9lGz()&M!zHZw5@OVOC%35!$P21ZDZG={qEv}P zMc~(nQl6)e>ZfU#)C{lqtgy;$|Pb*oh z@dV1rCXJ`SOrjdEgIY49@htK$YkUDzkY8wgA*m$qXuKJEsZTZD0y?_8Bc9lqjEs(@ zh1Z0J$6Tv~fmmcX9v16_uGnyWP)wx*{@!44D!x%1-5w1k7ifh4RISuhfyhKWCUnGS z#8@gg7D);Icq}ah;v?y)P*N075seI^O$-a$V_`8Vq{l=d(A6XKCB#@B+>-|go5W-) zg27z%u6jX@rMW6mLOVi{XlN)Z3R98vm=F^D?Hhzp+AEBu(+RKBnHo+;66sWZDiW=a zCr6!q{vO4WLQ@80(L?YA}|VLkjCBc8jc2BT^FoE zZUACv8%A6hM5see7ixx~9)c*R&?5kT=tU_AQ;6D#+EF~WQ3zqw&&LS=6KdsWPywuC z0yD(02Bq#9%oM{4f>?J1sepATR;7mkawEu1sa1%m$s?j_FL^%^I})(cnA%wq`7}mS zumS9`2WcP9je=bmx#yt>0`7JZ`%IxWUzrPMMj66_x*pDYzm^c}!0ICEOby{z$vlO! zQiXsPC2KouQ28`?kt*wx#+tm~#Qzkog0gN2)TJ<^QbQDJ9JQlp??eBd2RCSL}lX<@Lazyt2gS#Bz$44{ld@mw89cb>#aFVx=cgWs3Y0+gaBb#}dk-ZX= zSv`M#JRP~n&CBhYijx+N^NzuJHWT2-zr=M8GPjf*?A7y3XNEOrZ<@0o%XL3K`BUkI z_e-S%-+T9zWjZ@qE?HQ4@11@|R_NV+2IXr~f{~tLW$*j^Z>4Qlkl&l2tM{ zo?rD+m8Es>t>bfl`T1grwES8w*;W7S*W^W&cl$Yn9=`qISKnG9H)LCRse7J7=-h|9 zpXdyxyQ^eMew&v@{=iv&*mmusU2gBD$+jw)l`8~;-Jq6q3aXJ^zxmRxUd~+ka&yj9 z@SMqb3@>~_TH3lc@*}%bBjSl2r;i_d?&!&?8E*H!!_OxU>9-!(apwHubEoDmoH%*t z!12nj>|~Da+57c9OWup2)xBF&&zE{btFKn~-6cK`laTSv7mY@0=4))wCH_s@>_g<1S{|FnYMx721^ zYWtwt@2{!Zw$$dg?XC`g-|Fn2oV@qmWWUq-l+$K&+LRXxlUqv-;v0a&eroUpufyN# zG(arD1Vyj|0Cf$J(nMe7U=!xygfF+Vhw) ztD$) zTwG#(qxcDyEwmOEm6aO}g%nj_DKi+2hO#m}AqkyM&(L~3Q_SeuM@xB{&;@*P?MXdm zD=cDJN>^aIex15-ckOjj^Q(I&SToI1#Du7VQikP%L6hU)!IxN0U&I=We8^-jEUZ{$ zEHs;R1_Q-XCWeA1~4gbZ$|>TG0GUZNk-YC0n$YHEXbXf(fY20(QEbbxWIK{A z%aQFkku7aqwj^7&z|f)7nLeF%rgP4j)1K2ag`IS} z)ARfP*QdR=r?Og-j?^rVn20?Yq!7qy>IS#`^mq0Di(V+UqA6|ci+aHv9^yt zAB%nQ-*MrsJ)1V(v1Zj6&wr_d@3|f>y!x{E3claU_n+W|9w@{bE_}^^uJl#^zF4xPp|x&pZf0qHnaB1 zzy9giPauG+k|npsu3eeK_E(f8-S%GahV*REW6?yb!aG*zzr%y<9WGnLmrv+#K3E&Cri z@kif$?k~>%&UC!`+Ba;ybwm48H(mYd>g!t1eyQ|t&;HqoYxfO&vby1!Jx^C(|Gh-z z%FXe8P1WDpT|H4SUvIA)!#bRcJ|N5n?KU@^@ZPi;ww)-b?aAq zzBWkjcZ|Jb^ai*)`#Bv=?{JJT&Ap8IBdn2r z8Xr8ofA8*=eNFufgO854RSw@>xxZMwvE}SPwhH-=ggLw_ybM9_sCOU{@AzUkDWO6*b^=DqaPW$ zzpY$`n3I1{Ia~ds>a$<3o}FwPZyLF0bl-4G&qw<{es9~O*FAOHzup}mZt5v*8yy_2 zzG~aHclEsf^u4S1+`Kclf9v+^SAXzN1|Q$@p9h{<^ReSQzdi8O+dj4C@yaWYREm|K zZke5~JW~Db>Te&bJ~CQ;&0O`3pR8Wd_Rg&X@9)3i@q1S9df&F2_V>jn-|}Mu6Ea{~AW z>+qj!eRkEet4Xf8xz6Cr@|Jmf9w!rzdAx=jLWUGTuJE zaB$)HbbM;n{N&Ah9&Rtq%udX$(Gaa`_`|W89F&KJy0GvRPD(A!Y}QNkL=xB8g3mPo<2I%{*Fi9^33-C zGhY4mzdz7iDvgg$93JgiJvu!)eYhMijZKwW?;N@Fu0!n;hsW0|*3OkXo2s`|Pp^C~`CNDNzEyp9o&I?H zmzu_BKzZw-g@w{XfImIA&|WT2Pfkt6KhV_IKd`OsxqHw4m*%O-@p9{QsXRJ9S~|R% z&+)PG$;t87iScr|y)->JTb`Ldx_b7=)X|ByaYUkh@0sS=($wh0XneeByfiYja(rT9 zyscCkoh(ho$0y2D?c+1!Gv%2RkE|}w9+{pk#rMxQk587y$J>VQ93P*g_nPtX38vtq zJl@VkQ=VvQ`k_y+hJmMNT4AS&srE7~G}^M`Wb@eMM5$%}_UK{Z4FG0J4F14ltEXp< z&diQYfvKs9iK)rSsfl>y%Bkkr!|?J*d|}_gV-xV(EVO-kJFKHCbWJbp z;}cBYI(2mNNa^VK^aQ-m^>S%ye6DnKWHvrk8ZD2umc}Q?ORTgsGd2}3tt#`KahQ9w zy*x8DQ=Tm!ojNix8=oHMzqabTD&JT++w`5sPT%qy=|_6j{Of=I;I@_HEV8ZarOu8X z89h46X9>YSJU4QDWNu{c-noPE&Ht(SAdQhD2Nza<_OBjz;>@2de09xtwpZ6ye|zO~ zfBO6#&9e_qpPD{3J2!n~`e=N5q&#wO%fP{*;e%~ww?ET-ygWBO*LL!*siB#nnc+3V z#}1x4-SWgl^JglZGp9cKz^Sn{qmO@iPW(0*dP zWpaA=)NtF#+jrmEvpK%8`@Os0+4`>cKJvNl_RYUJ`1Hu{$14NXe+P$d>xV->*L3*Q zBV&)Wp8Dv_k%ji|roI6&<@nieHIGk}#!3@oM<$MsABjJDc;r)CTOq{+@-AAHMxR&> z?#E}^s&B2FT=|)%uRr>S)vKW~h*>lFjh}n`18r0Oa%Si3;khky-J`=3rTEz!|L&d5 zQ>&z&%5CLUbqX0NPftzGOra6@lO3SnDsHz;csH1m47E;%9Ze~ByKMe&)$D_s_Kd((g1c z-2ago=0?Op!^EmvS3wFyI6ii4->J60f4K6xW{o^FKdg}#!fbcHRuFJa5QJ-$E2^(+ zUO4fQnR0C`7^VGvtHv6J`=iRwHBTKqar9K{!pTDuN7|2!&k7OHt~4E=8`*cVuXX$I zfsw<|eQH#CWp?}s6kh+@r5z6qpWM;fyZ^w*Av%^vr%L7VBc<7LJPiHt{iCHL?UhXR zonHNck=+Nbo7~On4;-955I^YEe|qZ4M~|F{<2M~%d->;^_dfQnFWl0%X>jPR4}Q3E z+u3)YojjZW`>QLjikC+YPaSGKT6yKvsryeocw$ZEhRQ2H|Jb2FyzQYi)pvbkXl~#9 z*r_$QRX%j!>0ds%?SpHouc=LfY9~@2Eak{bcnoceamISC*?Q{>?v+V|Gx}!_&jZ_E#>ezG?M| zyUPP3L)TPqTRn8^=imR-eC4*^Uw!Jx!=v-}R1($ItDn5{_a2*hX6nh+egD1EwXO0q zteURm+Bzlopyts5t+BR;`bgg- zl7coHZ<|;(j#+G-Sj8t|6W1MybP%!C2o~}d*FP;hfHuG}7%7ds|IF=Y1{dz0KltzW z{9pHd>GsNN?tNx^<;MQXhxS!|A}$L*(=s!D6yr4d#nPF{mZwG!{D-%--r93l&%X92 z_HTal{jI-x@S0mk+b2ugM?cWUkfWn5j9xCa?WV|vYb9?nQBOe%g!@*zN zd-veb?K^&Lr%V~jSWX%uSbDXil_^&5X^AqGhza2{hRRo&bv~ms+)?HUZBn zr95QxC)&?;Ro}ew>^GkO>88qcl{NF9I{dlqr`H@fvH#@o{KuX={p9J#Kl8_VF znGN53=!x4-Z#%u|(T&6V_w74yaK~LE-4EVbxvsiq_48|=`~6k_^RL%l{;!&!o%_fq zKGyoBPweb&zqM(8|E?1|TJIVhIk3O|=+x|F+kMwGpE~l;6JKckS4ZD|7#&=iXsNa~ zee~`f4{mDh+jVgG?)GEP%zk2&n=bxT`diGQE|NVjQp8P++K)KvD zJ^$@L_}ct0vhJpt|Ct@X=C1oT?ORh>v3BLH%};*f%$LqQ(09`uC>$*xYCAbRG zR#yJo+G=O>2j6=pbM`^j&_VtsER2EQy88-8sp_PU2-m-AojC^7o$e)^h$!7UwI@3?l| zmfpQPdy?xq2Dfh7bN!B?Yu6<@lBvSt-@1;WzTWKv*RJc?wQJ`a*RS8RXHVCjbk~ml zE$dT>L}ERoL|xuE)Vp>2w)1sN7K_F8zPs*C*W9sb^T3;~*}0>4FWom8f;-lA?A)<+ z`z~flrZOEF<_>?0pP6;*-*nCT@ML%I)}8OzxU0ucb~E7aflVDA{Ea>Rn>Js&?y5W7 zd$He}uG!L|cIQqWx^~^}{@$Ozs{8dkr|CELzqxJ0iFw>PRb|hY3@BNN@w?u z-W~m{E0?)GyCJ8=E$vuHGyamEsbn#?A#F4)T_uPY>Y#dGKFbUp$wZv>2Z@xN?*a-!Dp&4$g*bgal}>dqX`j3f+m$WU{MR>`3OcjAWrJ4}5yIQxDv|u4D7o-rk6r zKKyzidP~O+2)}jLUMQD>mNh&xDzkxud`7EJcNajlP>}5a-dwgL)s^Qyh)4q%fEEmG zLd(o`WeXi}TRKk@nFLX3Avq!3WYcO1K_Jg~G`6{x<7-a+k{UcGs^mMe3_z=p>_}@J zAQ(yOO0yz?lIhC1A8ZYtxSOF-6ykGWf#>O#7v>6`fRh#h7>)&Gxt)!;LQnx;sw>Ib zy0Y2OO2HU`5D1S+)0Gln1(qf%gLRLQgu-1(z=Kjrtrv2+DN?2fVaR+>XFewy(Ke03 zs&Qg9c_02G&4HJ{Tielzim4CcY32GX)I-bu6NAllTf^i?8}G-l1L8tvm+7x z)7=SkXHuF88P_8nX%Nk15?xDUmafGVNX;NyT?tyikk*`#O|lPLMbd~;F<(j=C5MgD zh>}5?B+QUQvociyYDG;+*PtY~CkUgO5=Q0%1vz9yj~7F4%VN-7xo)Njs;i@}y29jU z2Z0xy~3qLd~ zA}x~12Q#wRet~u*ol0bv*@t8?pS#gZSY}BI#oV&4i5oNd>yj5YC21)5qcJ4|<}}Q* z7%uU{v?=JoIu|$Cl;ZbcQ_xp|jlXZ3vhm_JMLva1DH-(mk8R3J zWmEF!vnjHO!KP#vZHjHl%hZx22W8M-I#Yu8wP;Jy4Yq`$`NdCPN#Z0GvK{z}sZ>7o!UCnNlp5wokOB>5{#8-#n7( zi}0IF!d_lVE;Rs_iLw;5r8^y1rPIBLV4BE6gwe``Anb=GWqblFuve4^D7cJm+;2L| z_2wGxyy6+Rz;Z&dgB^83M^TWea=p+c3-)utx5P2W%gok@aMevWUY84ucpk~xdQr)O z3{kQnZvwn98Op$oIb=mLlmfOKxGf;c!Cf|SNR~X5V2B@;49)qvA6@SwAhP$1N0QH zC`M6S;}+u)!*Gibh`~fHQBL<4TbdvzXFo)5Vs`v|&8L<)*|DqAJ0VIzi*b!V%N&xz z#NrEOs0bAB29wqb0XPj%P_U+)gyk}s>D83Vijef6X$eRMKIE$qkkn%t7#2P!;gW(0 z1-pg8LAMnGtd5X6@XB{<9H1a_k3IyV(*nRR&QbnGv0;i2^h;46^e|%lkiTk~gxq{+ zIjC|37Di8!w1Ey{c}WPF0#Ctdq7b z)k(>Ovm5Xv0*RhQ?x3gFrx6XBrc_&MND*?w>e98)< z(5fJo z3OVx=83uytyr)xMCkw^`uNM2zw~CpOI**08GvRYX%l1ETuiPDTq(Um z3e*rdqsaQ59+Eu+$*6yQ03SFKqgx3TvYnDNP{~KV1;*%`&U8A@Q2)0k6&E)Wn_mPY zK{6$q#4y-Mu(Uks0UHVVBRF6(5{1xSW+Yx@M~k$-@{`P+EG|=(A_vS0O+rh7zv*q( zlU7URYACg$*}P2AFgA)CFRqx;!`3KfuJEulYGAJVB=uHp=!;W}l>ZCbKlpx3dNP5) z24ZQWASnXLD<=Lb6eD86Ze*lhT4Gs0)a<#$9Z9fjh$NtH;rHMgC#{l%TdW}B5DbT$ zGZ8Q+c}Lr!In_dlWpub}qZ4$1o(MWX@@XAldlku@ZGh#jp~VvxVa;J*wWdh$#$`w4 zQ|Fa&*O-P|Zm{N-6~;sWk^RQH_P3F|t|@CDOr19{+!0Qa$HYg7mGm`ukRC>J z*^D|Yp=EoY;2%=fw8=cnibQ5OvRpi4Z^1Y)N7{lL?WPt)0UV*+6tML-Te=I-Kr$Af zWHx?-mg2n-t-j!lzb%e-0kqBrh8EHT5=;>jLc)NBT{I+xh8EB2iNKd(<&0-BOBLa5 zK_VxrPXGl2Kft7TV~I|0ou$*=SY$3mE~3qqT|}NBlMf%rx3&Ware*4s6&F_Xl23RX z9KiNQkZ+n(QZlp(!vZs5S7l-O8Z0a*;l6h}gq?!XDNjOb!6Jh%WjhZ0g$AocFz9T{ z%_7Z)`mhX{GrhGZgg`yH4nmD3QP8ld!T2IeQE<5>4(5V6(mjLUF9~!6i*Q@yPzI7? zgiozr<`j6^S(5IPn{MBT@LV2~d?=>Q*8Sa!+X^}X zclSZff!YA3|5BUo$RV1kK4(pXU7Swc=cUtPO@NGWfz($9&Wb*LC5etB;vhqj$Rr9c zjEb1_Og>700PR3}(Q%5u zS`cYTvD)bmNg$cbtP(*u*=ReZt%)dT71(o>Ml%P(i<+jWKD6-f>*-jVGHOFeZ}jij zwuzF9D1j4Q=u~>6d*jY)*Y)q%y&VA#{e1aO3Rsq3@7ua-Q-AMP{-MajzO#ny+_Uu# zRib$RZE3>f`zk{Dew@fGQAwm9*g?-_BPSB~t&op63nC|8^0ZK{AOlgLp2k@r#cYsC ztOdzJf-{PuZB4~++_32+{|dcDRXcC?16;6RuMo?GofpY97R)A7VF%yFnikqS_^e_F zydCC~y|SfuBEcSzy`8|g;x;*L!2yz*3CSgyMK;A5UM(!WtPaCDoW+9pE4-*K_FaQt zr*&CZ$!Zkx1nbyY%q}2kQ6c$Lz(KW5!ojpCVU?9E#%c-|atg4ou)Ol9=o^wLS-F|E zj+)wjrM(iXL@;F5|S(KckFLz*BDNSA=DsW>qRk; zFEL&u$^u=ze8ou;Ee|8WsE!DvA(WGljaEx8p2kijYx>w?7^-S&xofi4Zw!#&s=@xyEh^Y7XCAd@Plj&ZsuSnRD}KNI`_0 zp*dL}_I^X`Ada?Hv!72I+9CqT>ZdR!a3GU&O$;fY4yIHLNegEN_TbO`Bkc&lx}tBe zgCjb#jIvk-JF@0t@vYY5?3TST(U#C10QGE0{y2uw48V)_SAG+!$!{{)$O0g$Fv*OR zNcI^Sa7Gee%HFM`bof>NmDpSvDJVf$#%!WR-o_!#7%o18G&wnKOer{nV{ch7xoR!( z0{89rS=KGJ_WSH6m}-nI`cPYxR^e8j?Fs6V7+Q>*@`oMHAS;mvi>C`{`cn{v*;0$g zv7823=_l(jBnYvUAh@a~gbM1e*aS`jxvoc1RAG5RqU>;Ewo;fjbdu_Yw8=rjij5E( zIpr6*P2QL1$c-r{wb-o5*P>Npf9yQw=i=2Xm~*UVC%!h8JNhSFOH!18Zcvdcw;NTnZYhLxY?xDF)4H|4X}IS=n>xCn*$3yH%a7vW>Tmv~7|727+o7f|OX46p<>+ z+h=k}Y^!0d<&d1BOe^Owg*33d4Xbshube+1Zk00QgY9aRp)|j*F$FE@_&gO8k13XBH0mdAm*8u?Kq;Ui()L|e!=_E?oU=(f9lhz=S=E5WuhH;v+wCD=kz1Ir*XI^KM7A*l0RZiX`PZ+1Zg>kwINYD+-%2 zTBOMk0wNJahRINU>;LIuI9a3+9i2iTGq2+4Df zfv+7zyX+Oz_d))I6H@xDpI8a1#! zv=m<}nzg+dj1Fe15Fv<-ym?8PPNZAh;$ihMM~T5ge#(hyb!09+tzMje4W7QF*VmYg z!Mp`*uJZ^2%Cs=ft!XmJ28v3tnfKLC&ytykIXq`0+`1aF>OzFek*rMv#Y8|)5P~rA zYKYt#v1B3!y{ZmDn+m?r0uX2#Slq#(NCO~^Yw}8noCR`T_wB5*$3nA?ArsbNyOZ{2 zZA)@8Z9=Q^t*&SBS)CJDLPztZ6>SK5GFpfxw5l`xv}S9{5NAo?im3rU{oQwPw!xZf zGHi8BKl6zR=J7p~jcKud)Z?mprC1$M1t1*-9TgC$MxmugqH4~>S>%Ru$5P8_CB(vh zm^#}a=LM#B6+&kTgS+^KyAY0g6z({ZW*BucPg|>KFpI1Mlwv)UJ}=Y+v_MTokOjq1 zYp7_$jg|o+wm`BasIqprzR?P8G7Xz8S21Y>8w?{{uqrO$Ve}6V*Fe?E;LvEMkiNSF zs4#y@?wu(cuqsTe<>d#a&=S0vWlX~!3c6}Q`!UTOxIz?>E*C8NFo0IxUSnVtb!Wq1 z5$g`o7?P{z8g~y%u{3MVML0P+7Sw=sohIAZyX27BMoyV^bIh&?KV*r1x;ZjrZHXg& zo*jY3Ofz#x9LaIK(8OOqIYxxCc&YFycVp%Tf-LmyMa#UhnRGGjs>=0CSJfc8Y0@y{ zr@A?$ArsmWo%K+hx7a4JjpkC;hC(Smh@sgc)WH>=NE6-5KhTLN{5Z0+%0l5X)LOk1 z^4e8JoPCZ962gMc`a+%16Le;=j>OA30$?g+yn6*Qutsir9*7qFDk%@uni(`5Sc%#- zf;uC$aal?#tTopSXmE;-Z8>~*#i4R^BrCMj$6rz(A!Vo1snAsBT02Q7P1cL7fF$iN z>3|lpBXvO}0LU&lk>`XVp>B}|$wF-v0JV`|4Ig%(Et2RAkf%jqUU@<;uLjXsBNUCM z&><#li<_QpP=kfaJPC+BWX1s|0k1P~aJbT7Bro_Vl4l|9syiyM1Qs{5pPh!F2IsP&fN9-@0^~?>pgQf=|6S5NWEtQ2ID{@ zfF=hs%EvA2GNL+V)F}xOFDJB|t3FQNa=JSJ6 z>OTAf^UAupkkIJ^M_=*=Q3K+nLbe;9Rj1cUU|`aUWY(2aLN#EfVSA`&MWJ)I&X-{O zxeni9uC-5)%yoz3q$(|wTTKu~2kleIPe7t=!87;^STHn~2e)&Ow02`U;0ST00z2om zob2*ur(4DJpqGRoFH?DUFRhZm$5f3onRyP}tG+t{SnSdRmgWuNlqA6g`Wt!Ag}%$XFFQls8){B199xpx*Du4`S+dj6OxVo0}Zmm5t}as*~Lo`g)_) zgQ~11quo6GK=7cAHacT|Q<^&i=Gmk}xp@FN98O*8tT=$nyD1j6FM}*~CFObeWU~Uo z1c0LIB>UP})?y)#lK}Fmn1Y3(JGIROgAiTdY@ts;0V0>}bwxVGH-mUGEQr?#$Tvt8 zxPhO_jcy<(W24PTAZNeD@akcfs3Ej6yHS+=dUQ=I2!yUgon%)f62)S{Y`mxe-&SN{ zS7(Z1MNN~wS{h6am}(Z?5`Up%y9zx;PQ{a=y;^Y=9SX^-bx*xAZoNf=)h*CXnPMRv zM_HV$k7^+pPN&jRjHS9T#ZHVxCd-}`{$tiHq1XE%a$LcJOQ%)aOhY{dQM#wlhi}=# zS_c`J(LjVy?P4)~Fc{smBUVfzYOW2}Rc2)W)-By1L;|Cu>UHpM$QQB!{O~4_{!QKC zwHwN;5PH5gNM- zX;nusti7G{ynti~)pyPdNcOt-#a=)%q!*AZ65(xm`0(nqNGFn~lO}mc1d8OeKn%6_ z>~Ye#dhv=4x)he4@KqQgkqRw3cF1)p6!@;VA_-S@W#6K?>L|S_TZ|4UEdtY*Oh8TK z0|I0iTTw3bcj+jK!!4W+xE!Me;kkiTlxtyrRd-*d2O3uQJ2QZu%XR8hm%atCkyyDW zi_fW~2p}2FqUBb0K)Sd?9K-c&ZMo{}YZk-MqVOjuZV%Gga0cs!8wwXbgSF?yGMQ1a zjZLPuGBKIbY$^7kv{{x>SawduHbVDep25NxpvajTt*gk6s8yx7uotwBS}1N;-|*rC zjtW|F(nROFA8(vU7YE!9S~y(q@O9}92(7oqsB}UDg+W8R#&iy*_nc#=01e|K>#5BW z)IDy#*cW4f2_<-wF~EXZA-V7a^DYZ2(~50V3{Ed;5)!67Bt2-aO}ZF89`t(v- zx}S#==>bq7Naav-jfZ$g3;mtPE@DJRXm7ZpB~ z)%PxpH#oc>fXU*TK4b~Qb&X zStMuaLq=EWz;G8T!%lkEsRkNsLPZ06%O=FXen75^1I?s!)`|oSsS~9J%DG3QB_u8! zK+FFLXkMJcyILUw?*xB@EZq(rHFQ9^fzgV*eHZSkoAITjt1013r*GQZifF96S{ivS zK15oL>z%B6L#=>njph`yv+aa&JY@e?`PmRt>Y4~Z`VJpq zd4^cM&0?mqbZ^8A;tfCN%^)u{>=(I<;0p+@_tT}6=w(C+9u1BciwuWO=}Q zaGu}pI)~hsJP}6G6CPMkc+)B%-{To3i-JcsMzsYHSl3_0Y+(*Rp`pTfddyqAVJlEr zam%F(MxRp+##z{AsL5PFh}h1`!7P!(zi-^TEI72lpUS2UxCkR~Eh*ttP>s5QTMdCZ z$?Nr9QoQYX`%v#ta3_K}rk6O~De$4xQ z=6gNst$07-+DWV6U~t@7JQNTvZ7H>k#{y(^OUpO&a9{!Rp>K*ygLw&jsHc3_YB!h` zb@8=ed}>dqp+S;3^n7Xn8$5kPcFc3=vE?oSmu#AX8LPu7rv0%;0J^m4X`Wcbq&Usk z3A`jc*(4ixLD%YTkMcQ!j7$L?ti#iRFn7+3x5k zmM6e;IN$h;jwrp5XEgiL%}*cM7z{hQM0-gk478(*v(K5JA98rfjxI4qnw4B4;rc_| z(j{udI1&|+uaWpGJaMHju{+wMp&deS0yIjd9k~A(pbA0Tx{R0^`9cG#CVPl9aM`4VKiFPR|Q)tDgb3kW9Pn(QXwi7^b>bKrLxn@SDh zZ=Jp%T>t`gvX=@MK==X&xX_O$B8ZFuZdVj1A#Q zPb3MM zTc!tAat|TRG?i`+p{15-Vn}X+2jS3C*S!?`32Hg;hRoJ)Fan$i$2xT_L7`Yc7x_R1 z@!ejdp0iYjdRs2%8w$zlNo~<#>Gq(_b^j09ENi0_6;&(SSZx2}E8ECIj~{i_M*q^( zFq@Y;qxiC^*`T)J$0ZvLyH|Y~9Z`L`Rcw%ML3zI1D>m+WaTHOlVgp6=16FKoOl+1- zSW*y*NjztJ>N;wwHk|t=>E-1bMSd#c#-hExrTVyG&w+RXf8hULEJOO-+703s zz03Y$wHrIm7n<(0lDb&!#*Pd8c+B<}N110yBKf^O+HDS%1Qg$;eFT?E0#zpEGndK- z{gB^?tkQRO&r#TvjALVP{*@?Ds6euh43#q)s>Q@hhgI?6@#OuZ8l-vLBrAf`Pkc#a zsf~XGhW+lvIs-LbDo3)((JA3C0a^%Dbu+;ZKNYf0L~&U^Q^T+>J8%xj+cv7`Q>Z|6 zB$(W)g=^00Y+t5-y)G3wbStsMEQHH!yekn9H3he4CyxNzav9JK%RLwzX2|7Wf@?zdECdMY;=PnuQ2*bqf%AJ@NQ~gVSsEA2)K4lFm1|y7)>`j+k;5}! z6WqT%69pERK8wr6)9+{ny=7fFaQ$)-gt~P4osOjGFZsxlv`YBxn3rpoLdobCnx&}W z^V~WdtUW0-)Q|GSE-6*oRi|6{Pc zGpFGMv2&U#!9k4mow{8#s8U8*9qdt3DoC}`G?9i=_KMpBbRzE`DJyRuGI)oN2l32y!CZD?JoSoF9~6+}&ULKl*W#=elSmC3EOdbLUBjXfMsLcV1` zvv;2I*4||f6HU=`T^z(AKUsT>tFZUF%-!BhOL6L=D>2MxTVe!ady|ST(0yz#uFPBEa%h^k+tzDt>QYY!$rJpBG z;#YW8{GwOr>+PPB3&QhEg7$?E1?mSR(|OLs;8gN9w_?iW_O)y9R*Hglf;fe=mo{oD zPa$gOT;Q_I@$&P4bs{baoR(Xx7ZNmOm0plblf>gyK0vX)PMouC#I7Nq_)4LztegBJ zIyq=%e>7_Az6`i`S6M4@uYWLwh?osvW{|gQM_LZBYnQ=`V_k@)@LIJ2K2nT-Ca=u9 znofSWV3&-hPKzmymS;yw0n}?ZR{=P)D@0bQNJCSO1jzv%d}B+MB!GT>mAIRZ+9YPL zoEhcE;npbuqL$7V=JYC2-4+zC##P`;`hkmDMpo}JWM*n(gb<}&bQ+Ep3$1SqJKo!} z%!&&94*3W=w)c|nWJ@=OooqR>;WS_!;H&C8+0yyz&;1=W%*7A>8`tOENN#wC_eFjI zI!8X3w{SR%N8L=mpuD6`^yA_e;dvbh%8AL&dC?)^^Erp~i-{Yq+u*H~i^@(WbzOFY zkKA6^+tV*W!E}Jf);g}M>_aDkh-xQbGmgO$j*yXv3NCy+)D@yCyP+CF0VvF>&#It?R9c|}vo5_*+DiL`%GM&LFfGERj3DJQ$Q==_0D!Y`c{$xerVnO@TRD&e zPwTy&W_$RUpNTfJD;b91U^0|zGGh?ef>cZhM|!B?;c95sa!uyy@Fwx4`%tb6xcCbd zgOl$AgS?&;NI6{jLb6G6^?7w%LN8`eA~(r~si)MO3FqRO}t)AEWi^KbczMI22sTVQoWSh3jh?TSU|s1M-IX)&|wyU zsE`vj%L4-+vB>i^%qa2$I{E3S7naA% zHb_wDDZPu6@tojCGQv>agz)j`eEmgYRza8e&G@2dAs?i;coGKaEOxH0icSYK5(FQJ zmEf!xM?#M@GB2|b7m6f;EWKE+RU1us*IzjP<(3oo{&1C-TYk-Oom?UfRiR8M^==&u z$KiG*8_5+)!a_i!DLkB~aDAR{_?o#6JQ)0ZEon8Ri9e3BF(D z5MGa>OB!D9c>_RMH2GpOyR-_Fwl**TgL+0op{U3(hBF$z2GeLjb5XD~eC0PQ^;zQ$ zI6|BYgTRks3*KS?i+d`J8@z#7=?M?x4?z{ade$($t~r6~WL%i2CcpSQt`F2M4K1-6 zEmC~s^0G_hHx%?USU5)^gp(xJDnel=xCyA?2E2*>hniVL$U7QXS7rTWB371H?n>tOerl}od`0-F`v&6@xs1dl1-3~2`UczpD{D}N zhO*!{ZK!(gMj_7I?`fZu^O_24=i?&nN%?7!f7Ol zyWkKOQ9wyeH^|jnHZJO7gIC_nA{#2%?ZgMw4nDiwoE!*kElm5wSPpQAR)DEwRTT0G z5?1a=QyPVRN@yhINlT8HfeO+mQL-(!&9%!0TgxdEJtMz7G?yNf^l#=sL?nhc2%1n@ zv?gGaNrciOg$S&*2t`Y7j0iEI4YL0en;dAP`(L0CVBlivhTZ0FY{sH9?TY0HGBafSyh;Aor$#(4m0@RpgcH zSIn@?4$MOHe>LO)5=8=V9w5pQQ*a65X@uP@r2@`h1%A<&_u578i2BlLtEKf`;ZxB|2Dl#-_EV5peA<37c!Z4OUOql&EFk%1RF$N5+G9#^q zpa^8xsyK9#y5^_t@Bs9q;3{n*3PX!on}TAT21yG#7SxY=x|}2m{bIENQ&-21+|@Mwi=L zro1QoE+X_La6q>%k{a~cnU?Ei|4aJTN>||~o|0TVP>Na-@0biep`vrAOBewQY+4Dw z;Kg}RAcGF}tQ!~sH3|km2NOaxQ!X@Yq2yINIE9?zFTQ5rr3MyZ9_cM~1oXAVmr1wA z5H-M$9+biJF*(ySwTyX!GilDvn;19g}3XnG}sEzfEZc`{GmXos#8wy(rdUP_2wqK#@%n6U8%iv=sg)A2eInI-w zCvWzHr{_C{`g*qyym5%E*tToe_3YZU^Ns7*@7c4bYfrjsNB@@f$zrj%-gk*_LIqB( zScTu%UVMFAGR0O^^b$C?*-}$J?;>x2+jzc06Ca*ff3YfJ^!Ry?lJgVN+Q-YnfBJc6 z@8c0H$$z-;J|6OuP^!Z$mQA3KAwrrWNd6V0CNJ%%uy^Ne_;X)M#!Je{TrW*SZn)t( zek<^t10p0W&+U4BI=r;+!iA6c-Y5he^0ifu4k}BU`16K?YhDK@w`&McHxCFX>}sN)u(-P;)`0 zMIs;(lTt&)aMKE2ExZdJl`)lbp%b+7k`YeXJYpXl8D~#)MwrYsqJ!z;qI3-)6I9?P z(L{hGsyyykn)}S2MSLarAV>`+l1gA2xo9LC-NIkePa~i~dDWlZy~AbaiRgfW)Io8g z4|4mqAWVQNM~)RH`r9*X-nDx#U40RlvZFG2b;Wxo=w-#b-qmsA2d6zNBlvb3Mxo=yW5)UXoN8&_25E$fSMWFrbNnlFZwV;=21g6wI`$Uoe`ink{0glMZ=}DXluq9gtdpgW@UXdVJ>=~F+ zmN4Q;Hvs^ilrS(GMTQFW;Z8zG7Q)(T1lup{u|zN~LMq(_iy-5eGP?wdHQ+m+58zpN zS-3Y+^iH)Q$IWddN@G<_2h*skO1(;HY>K{Dl&lp zmM9BLYznq}70dw=+*Kf=QDmzCMj1Ak!BfFy!aP$kzJ6v?Zw!q7k=LsL21_Z4gHP!M z@YWve+sndg8!}b*F96>X}OeRNo_0h0?#~ZSaD_4zQmql zDp|~JNS~w5mzQJYGS_D}bT2{IejzB>;a=?NS z;=*W{5U~Q^(LR20G}4c*Fe{Lb6Pt;zB<&7Uom(YDmi~Y-lv0qc(VJ4z{y{BNtl1Xq z!9v!sKp`s!<;_A)-Z`zuJE0d93rYw)E6?t|2H09J^u>qZoDxA8?9Gccpp&=30g_~&a{|v zYj$l{V*_PmBrSrCbT^9HFRNCFAo~uOY~IT^!FJ!I2?!G=dQE<-YpTp7e39+qzBgK_0*01q+;K#U+Qp!8F) zCg9Reyd7$LP715ZN=xDxO|Jo_DYXFZm|MLI;Vrjvubf5F!+5a(c)COp;JkjC z&6XpSm((<|eo$7rx1e1O`MChCHJ~0OmQr0FyN*+q4w}4Jl%CxakSf2$Z?d8V)9{Ur zHv~oyvKEjk_m}X;wo&dL-R$l)U{#ar0q_Y@wRVx*NkEW|a!{5R$n0XWG+SU088F45 zz$O>fPL|N*>=A=3wzNQbx1ce)rIwIx587$qD4x?bsZ0pR6UsuEHt0aP-ri=j>#Z!7 zG?3+kyp()&$%J?wznPZbzLZsFNfk<@T_C@+f=Cuq87o0+eVG3Tn{e;qXYB%_h z@-6NAki0?=z`g<)KnYGK<}LW9+PN$02dIGy%E^;;O2%wMNC!RaS`$X#ZsLT3A{ZZ) z0)IJh)dE3{)c`yJ_JpC3RFg7yl1R7$9a25oHMZX^Pgzy~mkr6|mc8|cri7gbLYVDW zUxkk3wCbkerW>!j@JrYmYOZeS-?)8X`K$Y#*67GnXQf)NOQ$ll=aS81#-f_b92Ki6 z71{l$onyN)k#npfyU00)q>IjRu>Fy947DQfSooE4z$6EK7AO~a$6QlD3)k|3yx<*+ z$%A(cH!OO`!QKb&Sezgi8Q-Ml9divqw0B&0jv48^&hfGzL(9_*5#hZ}HTM`ch}>f_ zL~xJmtsj-QSy#%4x`L4bmL2)Wh;HN`>$l^u&3bWLBg6S>*&2D;Io5#{0wY{dW>Kfuf#BH7Yj@%wRIm^ku3+Wr@#V4toLa$p%>P>v zyDWAEtyl4%{`X7%jKwaGt@ztb{)@#{@b5PN#bU4E-^cwItb(e`gYUPe0>!oh5xOH#X?Vg{=+}SnJv1r z_|J-XY{f@nH}Lc?3BGs4Vk>>?Ct?$V;qq7V?Rx$~dqu2`Z=wB)*p;!{qxNO7Ol*79 zzPzE&%Gl4wJ{nzL)o?u?OT>ORy8g=8Yh&Mw+E>QjzT#C;`=7;Lz2et^Y)5QoY;UYT zwl%gT))U(m>xg}VzZ4@RV?|mY=59yqJRKw=>2Kv0u2v2=8Tten#BN+}oM= zd}F+sdpnq?m%eq#I$}S^x9fm-2dikjbN>EX{Vvup5PM^6J^u+aTG;@t-N4Yzw=UZK z%(R}lgpY7vD_+k!HpJc<>jZCIvE+BI{g0dYdz`;*-?{crZwBj)|69@cMeY9&YrV|w literal 0 HcmV?d00001 diff --git a/test/shaping/data/text-rendering-tests/fonts/TestSVGgzip.otf b/test/shaping/data/text-rendering-tests/fonts/TestSVGgzip.otf new file mode 100644 index 0000000000000000000000000000000000000000..69d976f153080b2edd32f217d329142f49e00651 GIT binary patch literal 3024 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 V#xL@%O`qj&-|oMCdtmnd{{Vvly*vN_ literal 0 HcmV?d00001 diff --git a/test/shaping/data/text-rendering-tests/fonts/TestShapeLana.ttf b/test/shaping/data/text-rendering-tests/fonts/TestShapeLana.ttf new file mode 100644 index 0000000000000000000000000000000000000000..f7c3f81869a8ea512338fa93970907b828658fd8 GIT binary patch literal 87032 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

CwRsymp=L4&j{|Fmn!$pwC~=}_)pw>DY*Cj zwZ@}n|8cdA2=1MiD)-K`@7_oJC+@u*+Vg&#jKNnO0 diff --git a/test/shaping/data/text-rendering-tests/tests/AVAR-1.tests b/test/shaping/data/text-rendering-tests/tests/AVAR-1.tests index 08f09a191..19223eb6c 100644 --- a/test/shaping/data/text-rendering-tests/tests/AVAR-1.tests +++ b/test/shaping/data/text-rendering-tests/tests/AVAR-1.tests @@ -1,17 +1,17 @@ -../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --variations=TEST=100:U+2A01:[gid1] -../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --variations=TEST=150:U+2A01:[gid1] -../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --variations=TEST=200:U+2A01:[gid1] -../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --variations=TEST=250:U+2A01:[gid1] -../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --variations=TEST=300:U+2A01:[gid1] -../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --variations=TEST=350:U+2A01:[gid1] -../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --variations=TEST=400:U+2A01:[gid1] -../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --variations=TEST=450:U+2A01:[gid1] -../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --variations=TEST=500:U+2A01:[gid1] -../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --variations=TEST=550:U+2A01:[gid1] -../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --variations=TEST=600:U+2A01:[gid1] -../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --variations=TEST=650:U+2A01:[gid1] -../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --variations=TEST=700:U+2A01:[gid1] -../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --variations=TEST=750:U+2A01:[gid1] -../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --variations=TEST=800:U+2A01:[gid1] -../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --variations=TEST=850:U+2A01:[gid1] -../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --variations=TEST=900:U+2A01:[gid1] +../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=TEST=100:U+2A01:[gid1] +../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=TEST=150:U+2A01:[gid1] +../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=TEST=200:U+2A01:[gid1] +../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=TEST=250:U+2A01:[gid1] +../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=TEST=300:U+2A01:[gid1] +../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=TEST=350:U+2A01:[gid1] +../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=TEST=400:U+2A01:[gid1] +../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=TEST=450:U+2A01:[gid1] +../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=TEST=500:U+2A01:[gid1] +../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=TEST=550:U+2A01:[gid1] +../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=TEST=600:U+2A01:[gid1] +../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=TEST=650:U+2A01:[gid1] +../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=TEST=700:U+2A01:[gid1] +../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=TEST=750:U+2A01:[gid1] +../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=TEST=800:U+2A01:[gid1] +../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=TEST=850:U+2A01:[gid1] +../fonts/TestAVAR.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=TEST=900: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 index ac0848bfc..67882532c 100644 --- a/test/shaping/data/text-rendering-tests/tests/CFF-1.tests +++ b/test/shaping/data/text-rendering-tests/tests/CFF-1.tests @@ -1,13 +1,13 @@ -../fonts/FDArrayTest257.otf:--font-size=1000 --ned --remove-default-ignorables:U+0041:[gid66] -../fonts/FDArrayTest257.otf:--font-size=1000 --ned --remove-default-ignorables:U+211D:[gid30] -../fonts/FDArrayTest257.otf:--font-size=1000 --ned --remove-default-ignorables:U+24EA:[gid235] -../fonts/FDArrayTest257.otf:--font-size=1000 --ned --remove-default-ignorables:U+2460:[gid97] -../fonts/FDArrayTest257.otf:--font-size=1000 --ned --remove-default-ignorables:U+2461:[gid98] -../fonts/FDArrayTest257.otf:--font-size=1000 --ned --remove-default-ignorables:U+4EFF:[gid256] -../fonts/FDArrayTest257.otf:--font-size=1000 --ned --remove-default-ignorables:U+FF21:[gid34] -../fonts/FDArrayTest257.otf:--font-size=1000 --ned --remove-default-ignorables:U+10133:[gid52] -../fonts/FDArrayTest257.otf:--font-size=1000 --ned --remove-default-ignorables:U+1D4D0:[gid209] -../fonts/FDArrayTest257.otf:--font-size=1000 --ned --remove-default-ignorables:U+1F33A:[gid59] -../fonts/FDArrayTest257.otf:--font-size=1000 --ned --remove-default-ignorables:U+1F33B:[gid60] -../fonts/FDArrayTest257.otf:--font-size=1000 --ned --remove-default-ignorables:U+1F4A7:[gid168] -../fonts/FDArrayTest257.otf:--font-size=1000 --ned --remove-default-ignorables:U+1F95D:[gid94] +../fonts/FDArrayTest257.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0041:[gid66] +../fonts/FDArrayTest257.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+211D:[gid30] +../fonts/FDArrayTest257.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+24EA:[gid235] +../fonts/FDArrayTest257.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+2460:[gid97] +../fonts/FDArrayTest257.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+2461:[gid98] +../fonts/FDArrayTest257.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+4EFF:[gid256] +../fonts/FDArrayTest257.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+FF21:[gid34] +../fonts/FDArrayTest257.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+10133:[gid52] +../fonts/FDArrayTest257.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1D4D0:[gid209] +../fonts/FDArrayTest257.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1F33A:[gid59] +../fonts/FDArrayTest257.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1F33B:[gid60] +../fonts/FDArrayTest257.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1F4A7:[gid168] +../fonts/FDArrayTest257.otf:--font-size=1000 --ned --remove-default-ignorables --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 index 7baa6f7dd..6f190a8e8 100644 --- a/test/shaping/data/text-rendering-tests/tests/CFF-2.tests +++ b/test/shaping/data/text-rendering-tests/tests/CFF-2.tests @@ -1,13 +1,13 @@ -../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --remove-default-ignorables:U+0041:[gid66] -../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --remove-default-ignorables:U+211D:[gid8478] -../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --remove-default-ignorables:U+24EA:[gid9451] -../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --remove-default-ignorables:U+2460:[gid9313] -../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --remove-default-ignorables:U+2461:[gid9314] -../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --remove-default-ignorables:U+4EFF:[gid20224] -../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --remove-default-ignorables:U+FF21:[gid65314] -../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --remove-default-ignorables:U+10133:[gid308] -../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --remove-default-ignorables:U+1D4D0:[gid54481] -../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --remove-default-ignorables:U+1F33A:[gid62267] -../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --remove-default-ignorables:U+1F33B:[gid62268] -../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --remove-default-ignorables:U+1F4A7:[gid62632] -../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --remove-default-ignorables:U+1F95D:[gid63838] +../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0041:[gid66] +../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+211D:[gid8478] +../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+24EA:[gid9451] +../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+2460:[gid9313] +../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+2461:[gid9314] +../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+4EFF:[gid20224] +../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+FF21:[gid65314] +../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+10133:[gid308] +../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1D4D0:[gid54481] +../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1F33A:[gid62267] +../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1F33B:[gid62268] +../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1F4A7:[gid62632] +../fonts/FDArrayTest65535.otf:--font-size=1000 --ned --remove-default-ignorables --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 index 79fad8473..84cb14d07 100644 --- a/test/shaping/data/text-rendering-tests/tests/CFF2-1.tests +++ b/test/shaping/data/text-rendering-tests/tests/CFF2-1.tests @@ -1,9 +1,9 @@ -../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --remove-default-ignorables --variations=wght=100:U+0024:[dollar] -../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --remove-default-ignorables --variations=wght=200:U+0024:[dollar] -../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --remove-default-ignorables --variations=wght=300:U+0024:[dollar] -../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --remove-default-ignorables --variations=wght=400:U+0024:[dollar] -../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --remove-default-ignorables --variations=wght=500:U+0024:[dollar] -../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --remove-default-ignorables --variations=wght=600:U+0024:[dollar] -../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --remove-default-ignorables --variations=wght=700:U+0024:[dollar] -../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --remove-default-ignorables --variations=wght=800:U+0024:[dollar.nostroke] -../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --remove-default-ignorables --variations=wght=900:U+0024:[dollar.nostroke] +../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=wght=100:U+0024:[dollar] +../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=wght=200:U+0024:[dollar] +../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=wght=300:U+0024:[dollar] +../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=wght=400:U+0024:[dollar] +../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=wght=500:U+0024:[dollar] +../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=wght=600:U+0024:[dollar] +../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=wght=700:U+0024:[dollar] +../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=wght=800:U+0024:[dollar.nostroke] +../fonts/AdobeVFPrototype-Subset.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=wght=900: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 index 1a57a13a6..337b9f862 100644 --- a/test/shaping/data/text-rendering-tests/tests/CMAP-1.tests +++ b/test/shaping/data/text-rendering-tests/tests/CMAP-1.tests @@ -1,4 +1,4 @@ -../fonts/TestCMAP14.otf:--font-size=1000 --ned --remove-default-ignorables:U+82A6:[uni82A6_uE0100] -../fonts/TestCMAP14.otf:--font-size=1000 --ned --remove-default-ignorables:U+82A6,U+E0100:[uni82A6_uE0100] -../fonts/TestCMAP14.otf:--font-size=1000 --ned --remove-default-ignorables:U+82A6,U+E0101:[uni82A6_uE0101] -../fonts/TestCMAP14.otf:--font-size=1000 --ned --remove-default-ignorables:U+82A6,U+E0102:[uni82A6_uE0100] +../fonts/TestCMAP14.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+82A6:[uni82A6_uE0100] +../fonts/TestCMAP14.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+82A6,U+E0100:[uni82A6_uE0100] +../fonts/TestCMAP14.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+82A6,U+E0101:[uni82A6_uE0101] +../fonts/TestCMAP14.otf:--font-size=1000 --ned --remove-default-ignorables --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 index bbb456911..861f2e48c 100644 --- a/test/shaping/data/text-rendering-tests/tests/CMAP-2.tests +++ b/test/shaping/data/text-rendering-tests/tests/CMAP-2.tests @@ -1,2 +1,2 @@ -../fonts/TestCMAP14.otf:--font-size=1000 --ned --remove-default-ignorables:U+2269:[uni2269] -../fonts/TestCMAP14.otf:--font-size=1000 --ned --remove-default-ignorables:U+2269,U+FE00:[uni2269FE00] +../fonts/TestCMAP14.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+2269:[uni2269] +../fonts/TestCMAP14.otf:--font-size=1000 --ned --remove-default-ignorables --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 index 7b61d8893..d8758d3b6 100644 --- a/test/shaping/data/text-rendering-tests/tests/CMAP-3.tests +++ b/test/shaping/data/text-rendering-tests/tests/CMAP-3.tests @@ -1,20 +1,20 @@ -../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables:U+201C:[gid200] -../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0041:[gid34] -../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0042:[gid35] -../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables:U+00C7:[gid126] -../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables:U+011E:[gid176] -../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0049:[gid42] -../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0130:[gid178] -../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables:U+00D6:[gid140] -../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables:U+015E:[gid181] -../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables:U+00DC:[gid145] -../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables:U+201D:[gid201] -../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0061:[gid66] -../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0062:[gid67] -../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables:U+00E7:[gid154] -../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables:U+011F:[gid177] -../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0131:[gid222] -../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0069:[gid74] -../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables:U+00F6:[gid168] -../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables:U+015F:[gid182] -../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables:U+00FC:[gid174] +../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+201C:[gid200] +../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0041:[gid34] +../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0042:[gid35] +../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+00C7:[gid126] +../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+011E:[gid176] +../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0049:[gid42] +../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0130:[gid178] +../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+00D6:[gid140] +../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+015E:[gid181] +../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+00DC:[gid145] +../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+201D:[gid201] +../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0061:[gid66] +../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0062:[gid67] +../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+00E7:[gid154] +../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+011F:[gid177] +../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0131:[gid222] +../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0069:[gid74] +../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+00F6:[gid168] +../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+015F:[gid182] +../fonts/TestCMAPMacTurkish.ttf:--font-size=1000 --ned --remove-default-ignorables --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 index 840b4694c..c874a1408 100644 --- a/test/shaping/data/text-rendering-tests/tests/CVAR-1.tests +++ b/test/shaping/data/text-rendering-tests/tests/CVAR-1.tests @@ -1,3 +1,3 @@ -../fonts/TestCVARGVARTwo.ttf:--font-size=1000 --ned --remove-default-ignorables --variations=wght=28,wdth=100,opsz=72:U+0068,U+006F,U+006E:[uni0068|uni006F@595,0|uni006E@1126,0] -../fonts/TestCVARGVARTwo.ttf:--font-size=1000 --ned --remove-default-ignorables --variations=wght=94,wdth=100,opsz=72:U+0068,U+006F,U+006E:[uni0068|uni006F@635,0|uni006E@1212,0] -../fonts/TestCVARGVARTwo.ttf:--font-size=1000 --ned --remove-default-ignorables --variations=wght=194,wdth=100,opsz=72:U+0068,U+006F,U+006E:[uni0068|uni006F@691,0|uni006E@1331,0] +../fonts/TestCVARGVARTwo.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=wght=28,wdth=100,opsz=72:U+0068,U+006F,U+006E:[uni0068|uni006F@595,0|uni006E@1126,0] +../fonts/TestCVARGVARTwo.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=wght=94,wdth=100,opsz=72:U+0068,U+006F,U+006E:[uni0068|uni006F@635,0|uni006E@1212,0] +../fonts/TestCVARGVARTwo.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=wght=194,wdth=100,opsz=72: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 index bcbacb064..6bd42e152 100644 --- a/test/shaping/data/text-rendering-tests/tests/CVAR-2.tests +++ b/test/shaping/data/text-rendering-tests/tests/CVAR-2.tests @@ -1,3 +1,3 @@ -../fonts/TestCVARGVAROne.ttf:--font-size=1000 --ned --remove-default-ignorables --variations=wght=28,wdth=100,opsz=72:U+0068,U+006F,U+006E:[uni0068|uni006F@595,0|uni006E@1126,0] -../fonts/TestCVARGVAROne.ttf:--font-size=1000 --ned --remove-default-ignorables --variations=wght=94,wdth=100,opsz=72:U+0068,U+006F,U+006E:[uni0068|uni006F@635,0|uni006E@1212,0] -../fonts/TestCVARGVAROne.ttf:--font-size=1000 --ned --remove-default-ignorables --variations=wght=194,wdth=100,opsz=72:U+0068,U+006F,U+006E:[uni0068|uni006F@691,0|uni006E@1331,0] +../fonts/TestCVARGVAROne.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=wght=28,wdth=100,opsz=72:U+0068,U+006F,U+006E:[uni0068|uni006F@595,0|uni006E@1126,0] +../fonts/TestCVARGVAROne.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=wght=94,wdth=100,opsz=72:U+0068,U+006F,U+006E:[uni0068|uni006F@635,0|uni006E@1212,0] +../fonts/TestCVARGVAROne.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft --variations=wght=194,wdth=100,opsz=72: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 index bc9c46827..bdc0346ed 100644 --- a/test/shaping/data/text-rendering-tests/tests/GLYF-1.tests +++ b/test/shaping/data/text-rendering-tests/tests/GLYF-1.tests @@ -1 +1 @@ -../fonts/TestGLYFOne.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0123:[gcommaabove] +../fonts/TestGLYFOne.ttf:--font-size=1000 --ned --remove-default-ignorables --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 index fc1f52eba..221d16bd1 100644 --- a/test/shaping/data/text-rendering-tests/tests/GPOS-1.tests +++ b/test/shaping/data/text-rendering-tests/tests/GPOS-1.tests @@ -1,19 +1,19 @@ -../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0104,U+004A:[Aogonek|J@732,0] -../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0104,U+0067:[Aogonek|g@692,0] -../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0104,U+0123:[Aogonek|gcommaabove@692,0] -../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0104,U+006A:[Aogonek|j@752,0] -../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0104,U+0237:[Aogonek|dotlessj@752,0] -../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0051,U+0237:[Q|dotlessj@734,0] -../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0105,U+006A:[aogonek|j@588,0] -../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0105,U+0237:[aogonek|dotlessj@588,0] -../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0067,U+0237:[g|dotlessj@563,0] -../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0123,U+0237:[gcommaabove|dotlessj@563,0] -../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0131,U+0237:[dotlessi|dotlessj@334,0] -../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0173,U+0237:[uogonek|dotlessj@656,0] -../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0076,U+0237:[v|dotlessj@587,0] -../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0056,U+0061:[V|a@594,0] -../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0056,U+00E1:[V|aacute@594,0] -../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0056,U+0105:[V|aogonek@594,0] -../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0056,U+0066:[V|f@634,0] -../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0056,U+FB02:[V|fl@634,0] -../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0056,U+002E:[V|period@504,0] +../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0104,U+004A:[Aogonek|J@732,0] +../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0104,U+0067:[Aogonek|g@692,0] +../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0104,U+0123:[Aogonek|gcommaabove@692,0] +../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0104,U+006A:[Aogonek|j@752,0] +../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0104,U+0237:[Aogonek|dotlessj@752,0] +../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0051,U+0237:[Q|dotlessj@734,0] +../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0105,U+006A:[aogonek|j@588,0] +../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0105,U+0237:[aogonek|dotlessj@588,0] +../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0067,U+0237:[g|dotlessj@563,0] +../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0123,U+0237:[gcommaabove|dotlessj@563,0] +../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0131,U+0237:[dotlessi|dotlessj@334,0] +../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0173,U+0237:[uogonek|dotlessj@656,0] +../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0076,U+0237:[v|dotlessj@587,0] +../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0056,U+0061:[V|a@594,0] +../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0056,U+00E1:[V|aacute@594,0] +../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0056,U+0105:[V|aogonek@594,0] +../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0056,U+0066:[V|f@634,0] +../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0056,U+FB02:[V|fl@634,0] +../fonts/TestGPOSOne.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0056,U+002E:[V|period@504,0] diff --git a/test/shaping/data/text-rendering-tests/tests/SFNT-1.tests b/test/shaping/data/text-rendering-tests/tests/SFNT-1.tests new file mode 100644 index 000000000..7a6feeb70 --- /dev/null +++ b/test/shaping/data/text-rendering-tests/tests/SFNT-1.tests @@ -0,0 +1,2 @@ +../fonts/TestSFNTOne.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0041:[A] +../fonts/TestSFNTOne.otf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0042:[B] diff --git a/test/shaping/data/text-rendering-tests/tests/SFNT-2.tests b/test/shaping/data/text-rendering-tests/tests/SFNT-2.tests new file mode 100644 index 000000000..2c952b5fc --- /dev/null +++ b/test/shaping/data/text-rendering-tests/tests/SFNT-2.tests @@ -0,0 +1,2 @@ +../fonts/TestSFNTTwo.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0041:[A] +../fonts/TestSFNTTwo.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0042:[B] diff --git a/test/shaping/data/text-rendering-tests/tests/SHARAN-1.tests b/test/shaping/data/text-rendering-tests/tests/SHARAN-1.tests index 0525c0b41..56e83abfd 100644 --- a/test/shaping/data/text-rendering-tests/tests/SHARAN-1.tests +++ b/test/shaping/data/text-rendering-tests/tests/SHARAN-1.tests @@ -1,6 +1,6 @@ -../fonts/TestShapeAran.ttf:--font-size=1000 --ned --remove-default-ignorables: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 --remove-default-ignorables: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 --remove-default-ignorables: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 --remove-default-ignorables: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 --remove-default-ignorables: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 --remove-default-ignorables: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] +../fonts/TestShapeAran.ttf:--font-size=1000 --ned --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 index 0a03ab763..4c727b04f 100644 --- a/test/shaping/data/text-rendering-tests/tests/SHBALI-1.tests +++ b/test/shaping/data/text-rendering-tests/tests/SHBALI-1.tests @@ -1,22 +1,22 @@ -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+1B13,U+1B38,U+1B00:[gid23|gid60@1113,0|gid4@1064,0] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+1B15,U+1B44,U+1B16,U+1B02:[gid25|gid132@1092,0|gid6@942,0] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+1B18,U+1B3B:[gid28|gid62@796,0|gid57@794,0] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+1B19,U+1B40:[gid66|gid29@483,0|gid57@1536,0] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+1B1A,U+1B3F:[gid67|gid30@483,0] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+1B14,U+1B36:[gid24|gid58@828,0] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+1B13,U+1B44,U+1B13,U+1B01:[gid23|gid129@1111,0|gid5@1064,0] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+1B13,U+1B44,U+1B1B,U+1B01:[gid23|gid137@1111,0|gid5@1379,181] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+1B13,U+1B44,U+1B26,U+1B03:[gid23|gid148@1111,0|gid7@991,0] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+1B13,U+1B44,U+1B13,U+1B38:[gid23|gid129@1111,0|gid60@1111,-488] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables: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 --remove-default-ignorables: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 --remove-default-ignorables:U+1B13,U+1B3E:[gid66|gid23@483,0] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+1B13,U+1B36,U+1B3E:[gid23|gid58@1064,0|gid66@1111,0|gid128@1594,0] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+1B13,U+1B38,U+1B3E:[gid23|gid60@1113,0|gid66@1111,0|gid128@1594,0] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+1B13,U+1B44,U+1B15,U+1B3E:[gid66|gid23@483,0|gid131@1594,0] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+1B13,U+1B40:[gid66|gid23@483,0|gid57@1594,0] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+1B13,U+1B3E:[gid66|gid23@483,0] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+1B13,U+1B3E,U+1B36:[gid66|gid23@483,0|gid58@1548,0] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+1B13,U+1B3E,U+1B38:[gid66|gid23@483,0|gid60@1597,0] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+1B13,U+1B44,U+1B15,U+1B3E:[gid66|gid23@483,0|gid131@1594,0] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+1B13,U+1B40:[gid66|gid23@483,0|gid57@1594,0] +../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1B13,U+1B38,U+1B00:[gid23|gid60@1113,0|gid4@1064,0] +../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables --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 --remove-default-ignorables --font-funcs=ft:U+1B18,U+1B3B:[gid28|gid62@796,0|gid57@794,0] +../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1B19,U+1B40:[gid66|gid29@483,0|gid57@1536,0] +../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1B1A,U+1B3F:[gid67|gid30@483,0] +../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1B14,U+1B36:[gid24|gid58@828,0] +../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --font-funcs=ft:U+1B13,U+1B3E:[gid66|gid23@483,0] +../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --font-funcs=ft:U+1B13,U+1B40:[gid66|gid23@483,0|gid57@1594,0] +../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1B13,U+1B3E:[gid66|gid23@483,0] +../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1B13,U+1B3E,U+1B36:[gid66|gid23@483,0|gid58@1548,0] +../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1B13,U+1B3E,U+1B38:[gid66|gid23@483,0|gid60@1597,0] +../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables --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 --remove-default-ignorables --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 index 14117d403..3878fcc21 100644 --- a/test/shaping/data/text-rendering-tests/tests/SHBALI-2.tests +++ b/test/shaping/data/text-rendering-tests/tests/SHBALI-2.tests @@ -1,12 +1,12 @@ -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+1B13,U+1B44,U+1B27,U+1B3E:[gid66|gid23@483,0|gid149@1594,0] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+1B13,U+1B44,U+1B28,U+1B3F:[gid67|gid23@483,0|gid150@1594,0] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+1B13,U+1B44,U+1B31,U+1B3E:[gid66|gid23@483,0|gid159@1594,0] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables: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 --remove-default-ignorables: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 --remove-default-ignorables:U+1B1B,U+1B44,U+1B13:[gid181|gid129@1064,-195] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+1B1B,U+1B44,U+1B13,U+1B3E:[gid66|gid181@483,0|gid129@1548,-195] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables: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 --remove-default-ignorables:U+1B13,U+1B44,U+1B13,U+1B38:[gid23|gid129@1111,0|gid60@1111,-488] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+1B13,U+1B44,U+1B1B,U+1B39:[gid23|gid137@1111,0|gid61@1261,-488] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+1B13,U+1B44,U+1B31,U+1B3A:[gid23|gid159@1111,0|gid62@1753,0] -../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+1B13,U+1B44,U+1B45,U+1B38:[gid23|gid162@1111,0|gid60@1111,-488] +../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --font-funcs=ft:U+1B1B,U+1B44,U+1B13:[gid181|gid129@1064,-195] +../fonts/NotoSansBalinese-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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/SHKNDA-2.tests b/test/shaping/data/text-rendering-tests/tests/SHKNDA-2.tests index 5e86fba88..7936308f4 100644 --- a/test/shaping/data/text-rendering-tests/tests/SHKNDA-2.tests +++ b/test/shaping/data/text-rendering-tests/tests/SHKNDA-2.tests @@ -1,16 +1,16 @@ -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0CA8,U+0CCD,U+0CA8,U+0CBE:[gid150|gid57@711,0|gid116@1160,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0CA8,U+0CCD,U+0CA8,U+0CBE:[gid150|gid57@711,0|gid116@1160,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0CA4,U+0CCD,U+0CA4,U+0CBE:[gid146|gid57@623,0|gid112@1071,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0C9F,U+0CCD,U+0C9F,U+0CBE:[gid141|gid57@815,0|gid107@1264,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables: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 --remove-default-ignorables: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 --remove-default-ignorables: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 --remove-default-ignorables: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 --remove-default-ignorables: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 --remove-default-ignorables: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 --remove-default-ignorables: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 --remove-default-ignorables: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 --remove-default-ignorables: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 --remove-default-ignorables: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 --remove-default-ignorables: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 --remove-default-ignorables:U+0C9C,U+0CB8,U+0CCD,U+0C9F,U+0CCD:[gid27|gid200@776,0|gid107@1720,0] +../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 index 126888ad0..460ff0f7f 100644 --- a/test/shaping/data/text-rendering-tests/tests/SHKNDA-3.tests +++ b/test/shaping/data/text-rendering-tests/tests/SHKNDA-3.tests @@ -1,31 +1,31 @@ -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0C95,U+0CCB,U+0C82:[gid239|gid61@574,0|gid71@1319,0|gid4@1731,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0C96,U+0CCB,U+0C82:[gid240|gid61@865,0|gid71@1610,0|gid4@2022,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0C97,U+0CCB,U+0C82:[gid241|gid61@648,0|gid71@1393,0|gid4@1805,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0C98,U+0CCB,U+0C82:[gid242|gid279@997,0|gid71@1742,0|gid4@2153,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0C99,U+0CCB,U+0C82:[gid24|gid67@737,0|gid71@1718,0|gid4@2130,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0C9A,U+0CCB,U+0C82:[gid243|gid61@795,0|gid71@1540,0|gid4@1952,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0C9B,U+0CCB,U+0C82:[gid244|gid61@843,0|gid71@1588,0|gid4@2000,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0C9C,U+0CCB,U+0C82:[gid245|gid61@776,0|gid71@1522,0|gid4@1933,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0C9D,U+0CCB,U+0C82:[gid246|gid61@1379,0|gid71@2124,0|gid4@2536,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0C9E,U+0CCB,U+0C82:[gid29|gid67@968,0|gid71@1949,0|gid4@2360,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0C9F,U+0CCB,U+0C82:[gid247|gid61@815,0|gid71@1560,0|gid4@1972,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0CA0,U+0CCB,U+0C82:[gid248|gid61@651,0|gid71@1397,0|gid4@1808,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0CA1,U+0CCB,U+0C82:[gid249|gid61@768,0|gid71@1513,0|gid4@1925,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0CA2,U+0CCB,U+0C82:[gid250|gid61@768,0|gid71@1513,0|gid4@1925,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0CA3,U+0CCB,U+0C82:[gid251|gid61@867,0|gid71@1612,0|gid4@2023,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0CA4,U+0CCB,U+0C82:[gid252|gid61@623,0|gid71@1368,0|gid4@1779,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0CA5,U+0CCB,U+0C82:[gid253|gid61@765,0|gid71@1510,0|gid4@1921,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0CA6,U+0CCB,U+0C82:[gid254|gid61@765,0|gid71@1510,0|gid4@1921,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables: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 --remove-default-ignorables:U+0CA8,U+0CCB,U+0C82:[gid256|gid61@711,0|gid71@1456,0|gid4@1868,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0CAA,U+0CCB,U+0C82:[gid257|gid275@792,0|gid71@1434,0|gid4@1846,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0CAB,U+0CCB,U+0C82:[gid258|gid277@792,0|gid71@1434,0|gid4@1846,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0CAC,U+0CCB,U+0C82:[gid259|gid61@806,0|gid71@1551,0|gid4@1963,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0CAD,U+0CCB,U+0C82:[gid260|gid61@806,0|gid71@1551,0|gid4@1963,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0CAE,U+0CCB,U+0C82:[gid280|gid71@1539,0|gid4@1951,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0CAF,U+0CCB,U+0C82:[gid281|gid71@1712,0|gid4@2124,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0CB0,U+0CCB,U+0C82:[gid263|gid61@651,0|gid71@1397,0|gid4@1808,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0CB1,U+0CCB,U+0C82:[gid47|gid67@831,0|gid71@1812,0|gid4@2223,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0CB2,U+0CCB,U+0C82:[gid264|gid61@769,0|gid71@1514,0|gid4@1925,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables:U+0CB5,U+0CCB,U+0C82:[gid266|gid275@794,0|gid71@1437,0|gid4@1848,0] -../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables: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] +../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --font-funcs=ft:U+0CAE,U+0CCB,U+0C82:[gid280|gid71@1539,0|gid4@1951,0] +../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+0CAF,U+0CCB,U+0C82:[gid281|gid71@1712,0|gid4@2124,0] +../fonts/NotoSansKannada-Regular.ttf:--font-size=1000 --ned --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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 --remove-default-ignorables --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] diff --git a/test/shaping/data/text-rendering-tests/tests/SHLANA-1.tests b/test/shaping/data/text-rendering-tests/tests/SHLANA-1.tests new file mode 100644 index 000000000..870e421d4 --- /dev/null +++ b/test/shaping/data/text-rendering-tests/tests/SHLANA-1.tests @@ -0,0 +1,52 @@ +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A20,U+1A6B:[uni1A20|uni1A6B@762,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A23,U+1A74:[uni1A23|uni1A74@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A27,U+1A62:[uni1A27|uni1A62@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A32,U+1A60,U+1A45,U+1A6B,U+1A61:[uni1A32|uni1A601A45@762,0|uni1A6B@762,0|uni1A61@933,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A37,U+1A60,U+1A45,U+1A6B:[uni1A37|uni1A601A45@592,0|uni1A6B@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A20,U+1A60,U+1A45:[uni1A20|uni1A601A45@762,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A21,U+1A6C,U+1A74:[uni1A21|uni1A6C@592,-98|uni1A74@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A20,U+1A6C:[uni1A20|uni1A6C.wide@933,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A26,U+1A61:[uni1A26|uni1A61@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A20,U+1A63:[uni1A20|uni1A63@933,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A34,U+1A64:[uni1A34|uni1A64@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A4C,U+1A63,U+1A74:[uni1A4C|uni1A74@762,0|uni1A63@933,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A23,U+1A64,U+1A74:[uni1A23|uni1A74@592,0|uni1A64@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A33,U+1A65:[uni1A33|uni1A65@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A3A,U+1A66,U+0020:[uni1A3A|uni1A66@738,0|space@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A29,U+1A67:[uni1A29|uni1A67@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A3E,U+1A68:[uni1A3E.v2|uni1A68@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A35,U+1A69:[uni1A35|uni1A69@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A26,U+1A6A:[uni1A26|uni1A6A@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A32,U+1A6E,U+1A61:[uni1A6E|uni1A32@592,0|uni1A61@1524,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A3D,U+1A6E:[uni1A6E|uni1A3D@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A24,U+1A6F,U+1A61:[uni1A6F|uni1A24@1096,0|uni1A61@1688,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A27,U+1A6F:[uni1A6F|uni1A27@1096,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A38,U+1A6E,U+1A6C,U+1A65,U+1A61:[uni1A6E|uni1A38@592,0|uni1A6C@1184,0|uni1A65@1098,0|uni1A61@1184,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A36,U+1A6E,U+1A6C,U+1A65:[uni1A6E|uni1A36@592,0|uni1A6C@1184,0|uni1A65@1184,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A20,U+1A6E,U+1A6C,U+1A68,U+1A61:[uni1A6E|uni1A20@592,0|uni1A6C.wide@1524,0|uni1A68@1354,0|uni1A61@1524,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A20,U+1A6E,U+1A6C,U+1A68:[uni1A6E|uni1A20@592,0|uni1A6C.wide@1524,0|uni1A68@1354,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A41,U+1A6E,U+1A62,U+1A63:[uni1A6E|uni1A41@592,0|uni1A62@1184,0|uni1A63@1184,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A3E,U+1A73:[uni1A3E.v2|uni1A73@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A20,U+1A6E,U+1A63:[uni1A6E|uni1A20@592,0|uni1A63@1524,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A39,U+1A60,U+1A3F,U+1A6E,U+1A61:[uni1A6E|uni1A39@592,0|uni1A601A3F@1324,0|uni1A61@1551,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A3B,U+1A60,U+1A3F,U+1A6E:[uni1A6E|uni1A3B@592,0|uni1A601A3F@1524,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A20,U+1A60,U+1A3F:[uni1A20|uni1A601A3F@933,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A3E,U+1A6E,U+1A6C,U+1A65,U+1A4B,U+1A61:[uni1A6E|uni1A3E.v2@592,0|uni1A6C@1184,0|uni1A65@1184,0|uni1A4B@1324,0|uni1A61@1916,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A20,U+1A56,U+1A6E,U+1A6C,U+1A65,U+1A4B:[uni1A6E|uni1A20@592,0|uni1A56.wide@1524,0|uni1A6C.wide@1524,-547|uni1A65@1524,0|uni1A4B@1524,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A48,U+1A70,U+1A61:[uni1A70|uni1A48@592,0|uni1A61@1184,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A3E,U+1A70:[uni1A70|uni1A3E.v2@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A2A,U+1A70,U+1A6C,U+1A61:[uni1A70|uni1A2A@592,0|uni1A6C@1184,0|uni1A61@1184,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A29,U+1A62,U+1A60,U+1A3F:[uni1A29|uni1A62@592,0|uni1A601A3F@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A36,U+1A72:[uni1A72|uni1A36@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A22,U+1A71:[uni1A71|uni1A22@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A34,U+1A71,U+1A60,U+1A3F:[uni1A71|uni1A34@592,0|uni1A601A3F@1184,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A20,U+1A6E,U+1A6C,U+1A68,U+1A61:[uni1A6E|uni1A20@592,0|uni1A6C.wide@1524,0|uni1A68@1354,0|uni1A61@1524,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A20,U+1A6E,U+1A6C,U+1A68:[uni1A6E|uni1A20@592,0|uni1A6C.wide@1524,0|uni1A68@1354,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A20,U+1A70,U+1A62:[uni1A70|uni1A20@592,0|uni1A62@1354,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A48,U+1A58:[uni1A48|uni1A58@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A34,U+1A62,U+1A60,U+1A26:[uni1A34|uni1A62@592,0|uni1A601A26@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A4C,U+1A65,U+1A74,U+0020:[uni1A4C|uni1A65@762,0|uni1A74@1211,0|space@933,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A20,U+1A65,U+1A60,U+1A26:[uni1A20|uni1A65@762,0|uni1A601A26@762,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A20,U+1A62,U+1A60,U+1A3E:[uni1A20|uni1A62@762,0|uni1A601A3E@762,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A20,U+1A62,U+1A3E:[uni1A20|uni1A62@762,0|uni1A3E.v2@933,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A2F,U+1A6D:[uni1A2F|uni1A6D@592,0] diff --git a/test/shaping/data/text-rendering-tests/tests/SHLANA-10.tests b/test/shaping/data/text-rendering-tests/tests/SHLANA-10.tests new file mode 100644 index 000000000..a6ade4b58 --- /dev/null +++ b/test/shaping/data/text-rendering-tests/tests/SHLANA-10.tests @@ -0,0 +1,47 @@ +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A53,U+1A6F:[uni1A6F|uni1A53@1096,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A50,U+1A63:[uni1A50|uni1A63@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A50,U+1A75,U+1A63:[uni1A50|uni1A75@738,0|uni1A63@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A2F,U+1A6A,U+1A55,U+1A63:[uni1A55|uni1A2F@227,0|uni1A6A@818,0|uni1A63@818,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A2F,U+1A6E,U+1A6C,U+1A65,U+1A41,U+1A39,U+1A6B,U+1A56,U+1A23,U+1A69,U+1A31,U+1A7A:[uni1A6E|uni1A2F@592,0|uni1A6C@1184,-188|uni1A65@1184,0|uni1A41@1184,0|uni1A39@1775,0|uni1A6B@2367,0|uni1A56@2367,0|uni1A23@2508,0|uni1A69@3100,0|uni1A31@3100,0|uni1A7A@3861,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A3B,U+1A63,U+1A37,U+1A70,U+1A56:[uni1A3B|uni1A63@933,0|uni1A70@1524,0|uni1A37@2116,0|uni1A56@2708,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A36,U+1A76,U+1A6D:[uni1A36|uni1A76@592,0|uni1A6D@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A39,U+1A65,U+1A56,U+1A69,U+1A75,U+1A7B:[uni1A39|uni1A65@592,0|uni1A56@592,0|uni1A69@592,-547|uni1A75@592,357|uni1A78@864,357] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A49,U+1A56,U+1A60,U+1A45,U+1A26:[uni1A49|uni1A56.wide@933,0|uni1A601A45@762,-547|uni1A26@933,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A49,U+1A56,U+1A60,U+1A45,U+1A63:[uni1A49|uni1A56.wide@933,0|uni1A601A45@762,-547|uni1A63@933,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A3B,U+1A55,U+1A60,U+1A3F,U+1A6E,U+1A61:[uni1A6E|uni1A55@592,0|uni1A3B@818,0|uni1A601A3F@1751,0|uni1A61@1978,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A20,U+1A69,U+1A76,U+1A63,U+1A60,U+1A36,U+1A60,U+1A26:[uni1A20|uni1A69@762,0|uni1A76@762,0|uni1A63@933,0|uni1A601A36@1524,0|uni1A601A26@1524,-367] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A4B,U+1A62,U+1A60,U+1A2D,U+1A5B:[uni1A4B|uni1A62@592,0|uni1A601A2D1A5B@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A46,U+1A62,U+1A20,U+1A60,U+1A2F,U+1A65,U+1A7A:[uni1A46|uni1A62@592,0|uni1A20@681,0|uni1A601A2F@1442,0|uni1A65@1442,0|uni1A7A@1442,357] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A46,U+1A62,U+1A20,U+1A60,U+1A2F,U+1A65,U+1A7C:[uni1A46|uni1A62@592,0|uni1A20@681,0|uni1A601A2F@1442,0|uni1A65@1442,0|uni1A7C@1442,357] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A3E,U+1A49,U+1A63,U+1A49,U+1A65,U+1A26,U+1A60,U+1A23,U+1A69,U+1A7A:[uni1A3E.v2|uni1A49@732,0|uni1A63@1665,0|uni1A49@2257,0|uni1A65@3019,0|uni1A26@3189,0|uni1A601A23@3781,0|uni1A69@3781,-547|uni1A7A@3781,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A3E,U+1A49,U+1A63,U+1A49,U+1A65,U+1A26,U+1A60,U+1A23,U+1A69,U+1A7C:[uni1A3E.v2|uni1A49@732,0|uni1A63@1665,0|uni1A49@2257,0|uni1A65@3019,0|uni1A26@3189,0|uni1A601A23@3781,0|uni1A69@3781,-547|uni1A7C@3781,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A46,U+1A63,U+1A48,U+1A60,U+1A32,U+1A55,U+1A7A:[uni1A46|uni1A63@681,0|uni1A55@1272,0|uni1A48@1499,0|uni1A601A32@2091,0|uni1A7A@2091,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A48,U+1A63,U+1A48,U+1A60,U+1A32,U+1A55,U+1A7C:[uni1A48|uni1A63@592,0|uni1A55@1184,0|uni1A48@1410,0|uni1A601A32@2002,0|uni1A7C@2002,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A41,U+1A6A,U+1A60,U+1A37:[uni1A41|uni1A601A37@592,0|uni1A6A@725,-367] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A3B,U+1A66,U+1A75,U+1A60,U+1A36,U+1A6C,U+1A76,U+1A26:[uni1A3B|uni1A66@762,0|uni1A75@762,357|uni1A601A36@762,0|uni1A6C@762,-367|uni1A76@1087,357|uni1A26@933,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A38,U+1A62,U+1A63:[uni1A38|uni1A62@506,0|uni1A63@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A43,U+1A6A,U+1A62:[uni1A43|uni1A6A@762,0|uni1A62@762,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A2F,U+1A6C,U+1A62:[uni1A2F|uni1A6C@592,-188|uni1A62@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A2F,U+1A6C,U+1A62,U+1A61:[uni1A2F|uni1A6C@592,-188|uni1A62@592,0|uni1A61@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A3B,U+1A60,U+1A45,U+1A62,U+1A61:[uni1A3B|uni1A601A45@762,0|uni1A62@762,0|uni1A61@933,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A32,U+1A6F,U+1A60,U+1A36,U+1A6C,U+1A74,U+1A75:[uni1A6F|uni1A32@1096,0|uni1A601A36@1857,0|uni1A6C@1857,-367|uni1A74@1857,0|uni1A75@1857,357] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A32,U+1A6C,U+1A74,U+1A75,U+034F,U+1A6F,U+1A60,U+1A36:[uni1A6F|uni1A32@1096,0|uni1A6C.wide@2028,0|uni1A74@2028,0|uni1A75@2028,357|uni1A601A36@1857,-367] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A32,U+1A6C,U+1A74,U+1A75,U+1A6F,U+1A60,U+1A36:[uni1A6F|uni1A32@1096,0|uni1A6C.wide@2028,0|uni1A74@2028,0|uni1A75@2028,357|uni1A601A36@1857,-367] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A48,U+1A60,U+1A36,U+1A6B,U+1A7B:[uni1A48|uni1A601A36@592,0|uni1A6B@592,0|uni1A78@592,357] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A20,U+1A3E,U+1A5B,U+1A66:[uni1A20|uni1A3E1A5B@933,0|uni1A66@1549,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A36,U+1A65,U+1A3B,U+1A5B,U+1A63,U+1A60,U+1A36:[uni1A36|uni1A65@592,0|uni1A3B1A5B@592,0|uni1A63@1524,0|uni1A601A36@2116,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A35,U+1A3E,U+1A5C,U+1A65,U+1A20:[uni1A35|uni1A3E.v2@592,0|uni1A5C@1184,0|uni1A65@1184,0|uni1A20@1324,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A48,U+1A35,U+1A69,U+1A60,U+1A37:[uni1A48|uni1A35@592,0|uni1A601A37@1184,0|uni1A69@1317,-367] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A45,U+1A65,U+1A48,U+1A6E,U+1A60,U+1A48:[uni1A45|uni1A65@592,0|uni1A6E@592,0|uni1A48@1184,0|uni1A601A48@1775,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A22,U+1A76,U+1A63:[uni1A22|uni1A76@738,0|uni1A63@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A48,U+1A63,U+1A48,U+1A36,U+1A63:[uni1A48|uni1A63@592,0|uni1A48@1184,0|uni1A361A63@1775,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A48,U+1A63,U+1A48,U+1A60,U+1A36,U+1A7B,U+1A63:[uni1A48|uni1A63@592,0|uni1A48@1184,0|uni1A601A36@1775,0|uni1A78@1775,0|uni1A63@1775,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A48,U+1A60,U+1A36,U+1A7B,U+1A6E,U+1A62,U+1A76,U+1A63:[uni1A6E|uni1A48@592,0|uni1A601A36@1184,0|uni1A78@1184,0|uni1A621A76@1599,0|uni1A63@1184,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A48,U+1A60,U+1A36,U+1A7B,U+1A6E,U+1A62,U+1A62,U+1A76,U+1A63:[uni1A6E|uni1A48@592,0|uni1A601A36@1184,0|uni1A78@1184,0|uni1A621A621A76@1599,0|uni1A63@1184,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A32,U+1A66,U+034F,U+1A63,U+1A60,U+1A3F:[uni1A32|uni1A66@762,0|uni1A63@933,0|uni1A601A3F@1524,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A49,U+1A60,U+1A3E,U+1A75,U+1A63,U+1A74,U+1A7B:[uni1A49|uni1A601A3E@762,0|uni1A74@762,0|uni1A75@762,357|uni1A63@933,0|uni1A78@1524,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A43,U+1A6E,U+1A5E:[uni1A6E|uni1A43@592,0|uni1A5E@1354,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A4B,U+1A36,U+1A63,U+1A33,U+1A37,U+1A65,U+1A31,U+1A60,U+1A2F,U+1A65,U+1A20,U+1A48,U+1A5E:[uni1A4B|uni1A361A63@592,0|uni1A33@1184,0|uni1A37@1775,0|uni1A65@2367,0|uni1A31@2367,0|uni1A601A2F@3129,0|uni1A65@3129,0|uni1A20@3300,0|uni1A48@4232,0|uni1A5E@4824,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A2F,U+1A63,U+1A74,U+1A7B:[uni1A2F|uni1A74@592,0|uni1A63@592,0|uni1A78@1184,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A49,U+1A60,U+1A3E,U+1A74,U+1A75,U+1A63,U+1A7B:[uni1A49|uni1A601A3E@762,0|uni1A74@762,0|uni1A75@762,357|uni1A63@933,0|uni1A78@1524,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A2F,U+1A74,U+1A63,U+1A7B:[uni1A2F|uni1A74@592,0|uni1A63@592,0|uni1A78@1184,0] diff --git a/test/shaping/data/text-rendering-tests/tests/SHLANA-2.tests b/test/shaping/data/text-rendering-tests/tests/SHLANA-2.tests new file mode 100644 index 000000000..eee5c99f1 --- /dev/null +++ b/test/shaping/data/text-rendering-tests/tests/SHLANA-2.tests @@ -0,0 +1,37 @@ +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A93,U+1A60,U+1A34:[uni1A93|uni1A601A34@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A32,U+1A75,U+1A63,U+1A60,U+1A26,U+1A7B:[uni1A32|uni1A75@762,0|uni1A63@933,0|uni1A601A26@1524,0|uni1A78@1524,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A33,U+1A60,U+1A36,U+1A7B,U+1A6B,U+1A41:[uni1A33|uni1A601A36@592,0|uni1A78@592,0|uni1A6B@954,0|uni1A41@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A21,U+1A62,U+1A76,U+1A7B,U+1A6C,U+1A26:[uni1A21|uni1A621A76@592,0|uni1A78@1007,0|uni1A6C@592,-98|uni1A26@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1AAD,U+1A63:[uni1AAD|uni1A63@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A49,U+1A60,U+1A36,U+1A66:[uni1A49|uni1A601A36@762,0|uni1A66@762,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A24,U+1A60,U+1A45,U+1A6F,U+1A76,U+1A41:[uni1A6F|uni1A24@1096,0|uni1A601A45@1688,0|uni1A76@1688,0|uni1A41@1688,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A49,U+1A60,U+1A45,U+1A6B:[uni1A49|uni1A601A45@762,0|uni1A6B@762,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A2F,U+1A62,U+1A75,U+1A26,U+1A60,U+1A36,U+1A66,U+1A76:[uni1A2F|uni1A621A75@592,0|uni1A26@592,0|uni1A601A36@1184,0|uni1A66@1184,0|uni1A76@1184,357] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A49,U+1A65,U+1A60,U+1A36:[uni1A49|uni1A65@762,0|uni1A601A36@762,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A32,U+1A63,U+1A60,U+1A3E:[uni1A32|uni1A63@933,0|uni1A601A3E@1524,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A3B,U+1A60,U+1A3F,U+1A63,U+1A60,U+1A35,U+1A65:[uni1A3B|uni1A601A3F@933,0|uni1A63@1159,0|uni1A601A35@1751,0|uni1A65@1751,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A38,U+1A60,U+1A43,U+1A60,U+1A3F,U+1A75,U+1A41:[uni1A38|uni1A601A43@592,0|uni1A601A3F@818,0|uni1A75@1049,0|uni1A41@1045,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A3E,U+1A6F,U+1A76,U+1A60,U+1A36,U+1A60,U+1A45,U+1A75,U+1A63:[uni1A6F|uni1A3E.v2@1096,0|uni1A76@1688,0|uni1A601A36@1688,0|uni1A601A45@1688,-367|uni1A75@2013,0|uni1A63@1828,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A48,U+1A60,U+1A45,U+1A6F,U+1A75:[uni1A6F|uni1A48@1096,0|uni1A601A45@1688,0|uni1A75@1688,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A48,U+1A75,U+1A6F,U+1A60,U+1A45:[uni1A6F|uni1A48@1096,0|uni1A75@1688,0|uni1A601A45@1688,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A3F,U+1A6A:[uni1A3F|uni1A6A@762,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A3E,U+1A66:[uni1A3E.v2|uni1A66@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A49,U+1A60,U+1A3E,U+1A6A:[uni1A49|uni1A601A3E@762,0|uni1A6A@762,-367] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A49,U+1A60,U+1A3E,U+1A66:[uni1A49|uni1A601A3E@762,0|uni1A66@762,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A39,U+1A60,U+1A45,U+1A6B:[uni1A39|uni1A601A45@592,0|uni1A6B@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A49,U+1A60,U+1A43,U+1A6C,U+1A74,U+1A75:[uni1A49|uni1A601A43@933,0|uni1A6C@1060,-547|uni1A74@1164,0|uni1A75@1164,357] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A3E,U+1A63:[uni1A3E.v2|uni1A63@732,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A49,U+1A71,U+1A75:[uni1A71|uni1A49@592,0|uni1A75@1354,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A45,U+1A60,U+1A3F,U+1A26:[uni1A45|uni1A601A3F@592,0|uni1A26@818,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A49,U+1A63,U+1A60,U+1A3E:[uni1A49|uni1A63@933,0|uni1A601A3E@1524,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A2F,U+1A63,U+1A74:[uni1A2F|uni1A74@592,0|uni1A63@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A49,U+1A60,U+1A3E,U+1A63:[uni1A49|uni1A601A3E@762,0|uni1A63@933,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A20,U+1A55,U+1A63,U+1A60,U+1A38:[uni1A55|uni1A20@227,0|uni1A63@1159,0|uni1A601A37@1751,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A3B,U+1A55,U+1A75,U+1A63,U+1A74:[uni1A55|uni1A3B@227,0|uni1A74@988,0|uni1A75@988,357|uni1A63@1159,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A20,U+1A55,U+1A6C,U+1A26:[uni1A55|uni1A20@227,0|uni1A6C.wide@1159,0|uni1A26@1159,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A48,U+1A55,U+1A6B,U+1A3E,U+1A60,U+1A31,U+1A7A:[uni1A55|uni1A48@227,0|uni1A6B@818,0|uni1A3E.v2@818,0|uni1A601A31.narrow@1410,0|uni1A7A@1410,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A48,U+1A55,U+1A60,U+1A45,U+1A6B,U+1A3E:[uni1A55|uni1A48@227,0|uni1A601A45@818,0|uni1A6B@818,0|uni1A3E.v2@818,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A49,U+1A60,U+1A3E,U+1A75,U+1A63,U+1A74:[uni1A49|uni1A601A3E@762,0|uni1A74@762,0|uni1A75@762,357|uni1A63@933,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A49,U+1A60,U+1A3E,U+1A6E,U+1A6C,U+1A68,U+1A26:[uni1A6E|uni1A49@592,0|uni1A601A3E@1524,0|uni1A6C@1524,-367|uni1A68@1524,0|uni1A26@1524,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A49,U+1A60,U+1A3F,U+1A6E,U+1A6C,U+1A68,U+1A26:[uni1A6E|uni1A49@592,0|uni1A601A3F@1524,0|uni1A6C@1729,-367|uni1A68@1755,0|uni1A26@1751,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A49,U+1A60,U+1A43,U+1A63,U+1A60,U+1A3F:[uni1A49|uni1A601A43@933,0|uni1A63@1159,0|uni1A601A3F@1751,0] diff --git a/test/shaping/data/text-rendering-tests/tests/SHLANA-3.tests b/test/shaping/data/text-rendering-tests/tests/SHLANA-3.tests new file mode 100644 index 000000000..f5cac5639 --- /dev/null +++ b/test/shaping/data/text-rendering-tests/tests/SHLANA-3.tests @@ -0,0 +1,13 @@ +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A20,U+1A6C,U+1A62,U+1A43,U+1A60,U+1A3C,U+1A7A:[uni1A20|uni1A6C.wide@933,0|uni1A62@762,0|uni1A43@933,0|antler@933,0|uni1A601A3C.wide@1865,0|uni1A7A@1964,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A20,U+1A6C,U+1A62,U+1A43,U+1A7A,U+1A60,U+1A3C:[uni1A20|uni1A6C.wide@933,0|uni1A62@762,0|uni1A43@933,0|antler@933,0|uni1A7A@1964,0|uni1A601A3C.wide@1865,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A20,U+1A6C,U+1A62,U+1A43,U+1A60,U+1A7A,U+1A3C:[uni1A20|uni1A6C.wide@933,0|uni1A62@762,0|uni1A43@933,0|antler@933,0|uni1A7A@1964,0|uni1A601A3C.wide@1865,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A20,U+1A55,U+1A63,U+1A60,U+1A3C:[uni1A55|uni1A20@227,0|uni1A63@1159,0|antler@1159,0|uni1A601A3C@1751,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A34,U+1A6C,U+1A3C,U+1A60,U+1A3C,U+1A66,U+1A75:[uni1A34|uni1A6C@592,0|uni1A3C@592,0|antler@771,0|uni1A601A3C.wide@1524,0|uni1A66@1558,0|uni1A75@1558,357] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A20,U+1A3D,U+1A5A:[uni1A20|uni1A3D@933,0|uni1A5A@1865,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A48,U+1A31,U+1A5B,U+1A63,U+1A60,U+1A36:[uni1A48|uni1A311A5B@592,0|uni1A63@1524,0|uni1A601A36@2116,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A41,U+1A2D,U+1A5B,U+1A37,U+1A63,U+1A60,U+1A43:[uni1A41|uni1A2D1A5B@592,0|uni1A37@1184,0|uni1A63@1775,0|uni1A601A43@2367,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A41,U+1A62,U+1A2D,U+1A5B,U+1A37,U+1A63,U+1A60,U+1A43:[uni1A41|uni1A62@592,0|uni1A2D1A5B@592,0|uni1A37@1184,0|uni1A63@1775,0|uni1A601A43@2367,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A48,U+1A3B,U+1A5B:[uni1A48|uni1A3B1A5B@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A4B,U+1A3E,U+1A5B:[uni1A4B|uni1A3E1A5B@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A41,U+1A63,U+1A29,U+1A3D,U+1A62,U+1A60,U+1A2E:[uni1A41|uni1A63@592,0|uni1A29@1184,0|uni1A3D@1775,0|uni1A62@2537,0|uni1A601A2E@2537,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A37,U+1A62,U+1A31,U+1A60,U+1A3B,U+1A37,U+1A69,U+1A41,U+1A69,U+1A48:[uni1A37|uni1A62@592,0|uni1A31@592,0|uni1A601A3B.wide@1524,0|uni1A37@1524,0|uni1A69@2116,0|uni1A41@2116,0|uni1A69@2708,0|uni1A48@2708,0] diff --git a/test/shaping/data/text-rendering-tests/tests/SHLANA-4.tests b/test/shaping/data/text-rendering-tests/tests/SHLANA-4.tests new file mode 100644 index 000000000..47f0ccf6b --- /dev/null +++ b/test/shaping/data/text-rendering-tests/tests/SHLANA-4.tests @@ -0,0 +1,3 @@ +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A34,U+1A58,U+1A60,U+1A43,U+1A63,U+1A60,U+1A3F:[uni1A34|uni1A58@592,0|uni1A601A43@592,0|uni1A63@818,0|uni1A601A3F@1410,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A48,U+1A58,U+1A25,U+1A6E,U+1A63:[uni1A48|uni1A6E@592,0|uni1A25@1184,0|uni1A58@1945,0|uni1A63@2117,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A41,U+1A58,U+1A48,U+1A66:[uni1A41|uni1A58@592,0|uni1A48@592,0|uni1A66@1184,0] diff --git a/test/shaping/data/text-rendering-tests/tests/SHLANA-5.tests b/test/shaping/data/text-rendering-tests/tests/SHLANA-5.tests new file mode 100644 index 000000000..84fc8ec84 --- /dev/null +++ b/test/shaping/data/text-rendering-tests/tests/SHLANA-5.tests @@ -0,0 +1,13 @@ +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A36,U+1A63,U+1A74:[uni1A361A63|uni1A74@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A3E,U+1A36,U+1A6E,U+1A63:[uni1A3E.v2|uni1A6E@732,0|uni1A361A63@1324,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A36,U+1A6E,U+1A62,U+1A63:[uni1A6E|uni1A361A63@592,0|uni1A62@1184,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A36,U+1A63,U+1A60,U+1A3F:[uni1A361A63|uni1A601A3F@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A36,U+1A75,U+1A63,U+1A60,U+1A36:[uni1A361A63|uni1A75@592,0|uni1A601A36@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A4D,U+1A36,U+1A60,U+1A34,U+1A63:[uni1A4D|uni1A361A63@933,0|uni1A601A34@1524,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A4B,U+1A6B,U+1A36,U+1A60,U+1A32,U+1A55,U+1A63,U+1A60,U+1A3F:[uni1A4B|uni1A6B@592,0|uni1A55@592,0|uni1A361A63@818,0|uni1A601A32@1410,0|uni1A601A3F@1410,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A36,U+1A76,U+1A63,U+1A74:[uni1A361A63|uni1A74@592,0|uni1A76@592,357] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A36,U+1A60,U+1A45,U+1A63,U+1A60,U+1A37:[uni1A361A63|uni1A601A45@592,0|uni1A601A37@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A34,U+1A64,U+1A74,U+1A36,U+1A60,U+1A45,U+200C,U+1A63,U+1A60,U+1A3F:[uni1A34|uni1A74@592,0|uni1A64@592,0|uni1A36@818,0|uni1A601A45@1410,0|uni1A63@1410,0|uni1A601A3F@2002,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A32,U+1A75,U+1A63,U+1A74,U+1A36,U+1A60,U+1A45,U+1A63,U+1A60,U+1A3F:[uni1A32|uni1A74@762,0|uni1A75@762,357|uni1A63@933,0|uni1A361A63@1524,0|uni1A601A45@2116,0|uni1A601A3F@2116,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A36,U+200C,U+1A63:[uni1A36|uni1A63@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A49,U+1A60,U+1A36,U+1A76,U+1A63:[uni1A49|uni1A601A36@762,0|uni1A76@762,0|uni1A63@933,0] diff --git a/test/shaping/data/text-rendering-tests/tests/SHLANA-6.tests b/test/shaping/data/text-rendering-tests/tests/SHLANA-6.tests new file mode 100644 index 000000000..a143822de --- /dev/null +++ b/test/shaping/data/text-rendering-tests/tests/SHLANA-6.tests @@ -0,0 +1,7 @@ +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A20,U+1A6F,U+1A62,U+1A60,U+1A48:[uni1A6F|uni1A20@1096,0|uni1A62@1857,0|uni1A601A48@2028,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A34,U+1A55,U+1A6F,U+1A60,U+1A20,U+1A34,U+1A6E,U+1A6C,U+1A65,U+1A41,U+1A7A:[uni1A6F|uni1A55@1096,0|uni1A34@1322,0|uni1A601A20@1914,0|uni1A6E@1914,0|uni1A34@2506,0|uni1A6C@3098,0|uni1A65@3098,0|uni1A41@3098,0|uni1A7A@3689,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A36,U+1A70,U+1A6B,U+1A76,U+1A60,U+1A32:[uni1A70|uni1A36@592,0|uni1A6B@1184,0|uni1A76@1184,357|uni1A601A32@1184,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A37,U+1A55,U+1A70,U+1A34,U+1A66,U+1A60,U+1A36:[uni1A70|uni1A55@592,0|uni1A37@818,0|uni1A34@1410,0|uni1A66@2002,0|uni1A601A36@2002,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A3C,U+1A65,U+1A45,U+1A60,U+1A48,U+1A7A:[uni1A3C|uni1A65@859,0|uni1A45@933,0|uni1A601A48@1524,0|uni1A7A@1755,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A48,U+1A32,U+1A6F,U+1A3E,U+1A60,U+1A37,U+1A7A:[uni1A48|uni1A6F@592,0|uni1A32@1688,0|uni1A3E.v2@2620,0|uni1A601A37@3353,0|uni1A7A@3584,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A48,U+1A6E,U+1A65,U+1A41,U+1A7A,U+1A60,U+1A37:[uni1A6E|uni1A48@592,0|uni1A65@1184,0|uni1A41@1184,0|uni1A7A@1775,0|uni1A601A37@1775,0] diff --git a/test/shaping/data/text-rendering-tests/tests/SHLANA-7.tests b/test/shaping/data/text-rendering-tests/tests/SHLANA-7.tests new file mode 100644 index 000000000..48aedd8ac --- /dev/null +++ b/test/shaping/data/text-rendering-tests/tests/SHLANA-7.tests @@ -0,0 +1,18 @@ +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A34,U+1A62,U+1A75,U+1A57,U+1A63:[uni1A34|uni1A621A75@592,0|uni1A57@592,0|uni1A63@818,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A21,U+1A36,U+1A60,U+1A35,U+1A63:[uni1A21|uni1A361A63@592,0|uni1A601A35@1184,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A23,U+1A76,U+1A60,U+1A2F,U+1A66,U+00A0:[uni1A23|uni1A76@592,0|uni1A601A2F@592,0|uni1A66@1095,0|space_nb@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A37,U+1A76,U+1A60,U+1A3E,U+1A63:[uni1A37|uni1A76@592,0|uni1A601A3E@592,0|uni1A63@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A37,U+1A60,U+1A76,U+1A3E,U+1A63:[uni1A37|uni1A76@592,0|uni1A601A3E@592,0|uni1A63@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A37,U+1A76,U+1A60,U+1A2F,U+1A63,U+1A60,U+1A3F:[uni1A37|uni1A76@592,0|uni1A601A2F@592,0|uni1A63@592,0|uni1A601A3F@1184,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A27,U+1A62,U+1A60,U+1A45,U+1A64:[uni1A27|uni1A62@592,0|uni1A601A45@592,0|uni1A64@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A48,U+1A6E,U+1A60,U+1A53,U+1A60,U+1A45:[uni1A6E|uni1A48@592,0|uni1A601A53@1184,0|uni1A601A45@1311,-547] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A34,U+1A6F,U+1A60,U+1A36,U+1A73:[uni1A6F|uni1A34@1096,0|uni1A601A36@1688,0|uni1A73@1688,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A53,U+1A60,U+1A3E,U+1A63:[uni1A53|uni1A601A3E@762,0|uni1A63@933,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A20,U+1A6E,U+1A60,U+1A48,U+1A63:[uni1A6E|uni1A20@592,0|uni1A601A48@1524,0|uni1A63@1751,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A3B,U+1A71,U+1A60,U+1A3E,U+1A63:[uni1A71|uni1A3B@592,0|uni1A601A3E@1354,0|uni1A63@1524,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A48,U+1A6E,U+1A60,U+1A45,U+1A76,U+1A64:[uni1A6E|uni1A48@592,0|uni1A601A45@1184,0|uni1A76@1184,0|uni1A64@1184,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A45,U+1A6E,U+1A60,U+1A43,U+1A63:[uni1A6E|uni1A45@592,0|uni1A601A43@1184,0|uni1A63@1410,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A35,U+1A64,U+1A60,U+1A32,U+1A69:[uni1A35|uni1A64@592,0|uni1A601A32@863,0|uni1A69@863,-547] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A29,U+1A60,U+1A53:[uni1A29|uni1A601A53@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A3B,U+1A6D,U+1A60,U+1A45,U+1A7B,U+1A63:[uni1A3B|uni1A6D@933,0|uni1A601A45@1137,-547|uni1A78@1204,195|uni1A63@1159,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A48,U+1A6B,U+1A60,U+1A26,U+1A63,U+1A60,U+1A36:[uni1A48|uni1A6B@592,0|uni1A601A26@592,0|uni1A63@592,0|uni1A601A36@1184,0] diff --git a/test/shaping/data/text-rendering-tests/tests/SHLANA-8.tests b/test/shaping/data/text-rendering-tests/tests/SHLANA-8.tests new file mode 100644 index 000000000..ad1055a27 --- /dev/null +++ b/test/shaping/data/text-rendering-tests/tests/SHLANA-8.tests @@ -0,0 +1,13 @@ +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A3B,U+1A6C,U+1A73,U+1A75:[uni1A3B|uni1A6C.wide@933,0|uni1A73@762,0|uni1A75@762,447] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A48,U+1A37,U+1A77,U+1A63,U+1A60,U+1A3F:[uni1A48|uni1A37@592,0|uni1A77@1184,0|uni1A63@1184,0|uni1A601A3F@1775,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A45,U+1A60,U+1A3F,U+1A59:[uni1A45|uni1A601A3F@592,0|uni1A59@823,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A23,U+1A6A,U+1A7A:[uni1A23|uni1A6A@592,0|uni1A7A@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A81,U+1A82,U+00A0,U+1A3B,U+1A62,U+1A60,U+1A36,U+1A7B,U+1A63:[uni1A81|uni1A82@592,0|space_nb@1184,0|uni1A3B@1501,0|uni1A62@2263,0|uni1A601A36@2263,0|uni1A78@2263,357|uni1A63@2434,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A3B,U+1A71,U+1A7B,U+1A63,U+1A60,U+1A3F:[uni1A71|uni1A3B@592,0|uni1A78@1354,0|uni1A63@1524,0|uni1A601A3F@2116,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A29,U+1A60,U+1A3F,U+1A59,U+1A32,U+1A69,U+1A74:[uni1A29|uni1A601A3F@592,0|uni1A59@823,0|uni1A32@818,0|uni1A69@1580,0|uni1A74@1580,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A45,U+1A32,U+1A5B,U+1A69:[uni1A45|uni1A321A5B@592,0|uni1A69@1184,-734] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A45,U+1A32,U+1A60,U+1A33,U+1A69:[uni1A45|uni1A32@592,0|uni1A601A33@1354,0|uni1A69@1354,-547] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A2F,U+1A60,U+1A3F,U+1A74:[uni1A2F|uni1A601A3F@592,0|uni1A74@823,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A49,U+1A60,U+1A36,U+1A66,U+1A62,U+1A76:[uni1A49|uni1A601A36@762,0|uni1A66@762,0|uni1A621A76@1265,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A41,U+1A6E,U+1A42,U+1A60,U+1A20:[uni1A6E|uni1A41@592,0|uni1A42@1184,0|uni1A601A20@1775,-547] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A41,U+1A60,U+1A3F,U+1A7A:[uni1A41|uni1A601A3F@592,0|uni1A7A@823,0] diff --git a/test/shaping/data/text-rendering-tests/tests/SHLANA-9.tests b/test/shaping/data/text-rendering-tests/tests/SHLANA-9.tests new file mode 100644 index 000000000..d37ed7416 --- /dev/null +++ b/test/shaping/data/text-rendering-tests/tests/SHLANA-9.tests @@ -0,0 +1,6 @@ +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A23,U+1A74,U+1A37,U+1A74,U+1A75:[uni1A23|uni1A74@592,0|uni1A37@592,0|uni1A74@1184,0|uni1A75@1184,357] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A23,U+1A74,U+1A37,U+1A74:[uni1A23|uni1A74@592,0|uni1A37@592,0|uni1A74@1184,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A23,U+1A5D,U+1A74,U+1A75:[uni1A23|uni1A5D@592,0|uni1A74@592,0|uni1A75@592,357] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A23,U+1A74,U+1A5D,U+1A75:[uni1A23|uni1A74@592,0|uni1A5D@592,0|uni1A75@592,357] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A23,U+1A5D,U+1A74:[uni1A23|uni1A5D@592,0|uni1A74@592,0] +../fonts/TestShapeLana.ttf:--font-size=1000 --ned --remove-default-ignorables --font-funcs=ft:U+1A23,U+1A74,U+1A5D:[uni1A23|uni1A74@592,0|uni1A5D@592,0]