From cb27237e71a23b80fcb8b7ac1e5aa2ec21ca2934 Mon Sep 17 00:00:00 2001 From: Dane Springmeyer Date: Mon, 2 Dec 2013 22:47:04 -0800 Subject: [PATCH] visual tests: fix rendering of khmer, malayalam, and bengali tests --- .../harfbuzz-800-200-1.0-agg-reference.png | Bin 587 -> 4380 bytes .../harfbuzz-800-200-1.0-cairo-reference.png | Bin 568 -> 4365 bytes .../harfbuzz-800-200-2.0-agg-reference.png | Bin 593 -> 6051 bytes .../harfbuzz-800-200-2.0-cairo-reference.png | Bin 619 -> 6151 bytes .../images/khmer-800-200-1.0-agg-reference.png | Bin 568 -> 3967 bytes .../khmer-800-200-1.0-cairo-reference.png | Bin 568 -> 3506 bytes .../images/khmer-800-200-2.0-agg-reference.png | Bin 572 -> 6921 bytes .../khmer-800-200-2.0-cairo-reference.png | Bin 619 -> 5951 bytes .../text-bengali-800-100-1.0-agg-reference.png | Bin 105 -> 3274 bytes ...ext-bengali-800-100-1.0-cairo-reference.png | Bin 105 -> 3269 bytes .../text-bengali-800-100-2.0-agg-reference.png | Bin 105 -> 4642 bytes ...ext-bengali-800-100-2.0-cairo-reference.png | Bin 105 -> 4527 bytes ...ext-malayalam-800-100-1.0-agg-reference.png | Bin 105 -> 1172 bytes ...t-malayalam-800-100-1.0-cairo-reference.png | Bin 105 -> 1172 bytes ...ext-malayalam-800-100-2.0-agg-reference.png | Bin 105 -> 2052 bytes ...t-malayalam-800-100-2.0-cairo-reference.png | Bin 105 -> 2092 bytes tests/visual_tests/styles/harfbuzz.xml | 9 +++++---- tests/visual_tests/styles/khmer.xml | 10 +++++----- tests/visual_tests/styles/text-bengali.xml | 11 ++++++----- tests/visual_tests/styles/text-malayalam.xml | 7 ++++--- 20 files changed, 20 insertions(+), 17 deletions(-) diff --git a/tests/visual_tests/images/harfbuzz-800-200-1.0-agg-reference.png b/tests/visual_tests/images/harfbuzz-800-200-1.0-agg-reference.png index 440a23a8b74da19fca29ddd5db99162b86a2fd2a..738f778e7b28ad2611645928c5eeb878f192e917 100644 GIT binary patch literal 4380 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 Cexkbo diff --git a/tests/visual_tests/images/harfbuzz-800-200-2.0-agg-reference.png b/tests/visual_tests/images/harfbuzz-800-200-2.0-agg-reference.png index a71269f58abc77dd0444b4e4d18df6c78e1970c7..b6da1f8fa5579025b4a9c19482a118ffa6be83fd 100644 GIT binary patch literal 6051 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 diff --git a/tests/visual_tests/images/harfbuzz-800-200-2.0-cairo-reference.png b/tests/visual_tests/images/harfbuzz-800-200-2.0-cairo-reference.png index 84a6ca438b5198f1b857e3b0e996b8937b6c24fb..a9ec907d8d82aa61e6be3931ddaae4e8aaf2c269 100644 GIT binary patch literal 6151 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 Q0!%dwp00i_>zopr0R1)2T>t<8 diff --git a/tests/visual_tests/images/khmer-800-200-1.0-agg-reference.png b/tests/visual_tests/images/khmer-800-200-1.0-agg-reference.png index 036ee08170870e434481c67139764c9ac37d8dee..432181d46ed6f8b9e01a290b5ff0cec625844308 100644 GIT binary patch literal 3967 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 Aa{vGU literal 568 zcmeAS@N?(olHy`uVBq!ia0y~yU{(OKPp~ip$wv!kXaXs=0G|+7ApQUU|D`wQ-(_H6 zeCz4r7*a9k?bU_642C=`j@u{vn_VlTsqkbf>*gN~OBv@a4f*_w;Vok)tBTl!2#2I$ z#+d8yEa>FBcG(Fx_&jphRknS;l03|Oh~%BGj9Ux##6G|B&mNcr7(8A5T-G@yGywoO Cexkbo diff --git a/tests/visual_tests/images/khmer-800-200-1.0-cairo-reference.png b/tests/visual_tests/images/khmer-800-200-1.0-cairo-reference.png index 036ee08170870e434481c67139764c9ac37d8dee..a5d532c340d03ba680bf6bd5cf073a6512815432 100644 GIT binary patch literal 3506 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 Cexkbo diff --git a/tests/visual_tests/images/khmer-800-200-2.0-agg-reference.png b/tests/visual_tests/images/khmer-800-200-2.0-agg-reference.png index a7b2ef6c1e5e72cf8b0e14ca596fdec9968d42b3..1977ed3556253ff4d5380f9731c9340c2851c646 100644 GIT binary patch literal 6921 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 literal 572 zcmeAS@N?(olHy`uVBq!ia0y~yU{(OKPp~ip$wv!kXaXs=0G|+7ApQUU|D`wQ-(_H6 z{OIZ87*a9k?e&eE2Mh#Q4(1>HYp%VVjoquoY(}sD2ZM>v0$1&@y$*LkYA;KYP z_%N>VpV*UYyVZIFv(RnE&bJLm${doc6*kIFxWVU<^E_FC+e1fTW5W?9p<%^{TAR2g VSK^zfIWQS8c)I$ztaD0e0stMct3Ch# diff --git a/tests/visual_tests/images/khmer-800-200-2.0-cairo-reference.png b/tests/visual_tests/images/khmer-800-200-2.0-cairo-reference.png index 84a6ca438b5198f1b857e3b0e996b8937b6c24fb..1b88b4145eadbeee458c9f65133ee36774279acc 100644 GIT binary patch literal 5951 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 literal 619 zcmeAS@N?(olHy`uVBq!ia0y~yU{(OKPp~ip$wv!kXaXsr0G|+7AnoAbP*6~C;J|?k z7cTt&|KD>)sW1ZrlZdB_V@SoEw>LKO9x`BXb==ID$ehOE(=dbKM!jg3$dU^YdmhF8 zO?KU-cCJG6>W}Z-FN_s7HXLCR;`Y!PE{uH*cdmW?bb4`_aar_)=arFu-~WDov+T__ zh5pA9?XUkemIaqNBv~tLl$~&c&m)IjW!vYQ(zka?94o7vJG=q{60d8_#Xg4xeLG-M Q0!%dwp00i_>zopr0R1)2T>t<8 diff --git a/tests/visual_tests/images/text-bengali-800-100-1.0-agg-reference.png b/tests/visual_tests/images/text-bengali-800-100-1.0-agg-reference.png index 78956a9429d7161808cf163cdf99b15b33e1e2c0..6da014f2e7db50acb1c791aed0f8c858b359a1eb 100644 GIT binary patch literal 3274 zcmd5<`8yMi16H}^%n?Z|XPaC@xtq)t%5B6laz-V`NcL%6Zes{@eBGwGKRGv|9644Z zbKm9~atx#K?XUPg-yh!N_xF9?=Xqo9Tbb~3OK`KWu<)9h8riV0oCEyzo}B0YvRP6Q z>95q>x3Gi$Rd#lEE-o%!US1&~AyH9LadB}eDJf}bX*oGLAP}geq@=2cslC0utE;QGx0g&N z|NQxLWMpJ~e0+L(dVYSMN~O|hwA0g55yd$$3k%P%nGwVenZ1!6qmJ$#=Xrx}?K8yGe`!!m2KQgx1HHv1KT#pj>@ z3v};VDU$d_jju~u*`USJ`E`0qS8IU3yH^T{H8zfb+ZhRGYsrbLrVWdNgeA zqsx?8mWi$5i=TU$&%BtM00Qq8=|fT;-(jZQz<$6v;ehR5b|6WfD&~*L+cQR%Jq74HJXHv~CwfUXiHg7X z?MqYuplx)wbGVPL2UV#wGK~1{D9%)7-!u3MmWktu+CpRYdmb^r1uvYNzeBVV&r zz_HqkVk%&Aw74mfzN+Qln90gz{4XA1r8s^Wa<(N^17krGS)53h`t3B~Zit0j$m9dI zSCkWW1;2*Ht+@_P?uD^iz=rr`k+Hy?Nf~bf>*^CWhTEIc$W;?Gt?%*YW1r&R;D8hO zI%79iEosOW-9PROIV)d|ILWEW5j5wSM>TdGQkorfBKLuNDwB~{tp$O>X&IdPH%hEm1g9BW)u?xzr9R|SQQcZ5I5~G74i4b4cHkT41PZ2IP(K}ncY8g#m z$MXR%z%Dye7g6-8=w*jAkF5UfF1E}moGyO_;8S&M#bRlu#!`kM~MCsgoAEbZm-IVrBRn?^RAGd@Jnu&w9#ZQ2(KJk7w5@j1e*|yd046fP=w# zDdjE14PaFv?1}OsZqE)RKbq;iTC=t5mmU6ClB>4)Y87bDoKtPqJ~#fj)9X%SO0^L8 z#nzRjzJH1U9`At~)}rBW#jb|pu^QPZRm}(6Y<;RdYTrw0uBjXO9|a^*=4&tPxEASb z>kF~215j2|@zad(LRq-vHf7Ur4h^&DO?6fv)^rR_aQi!&an~Av+kXZ-LLdWf6-iP> zNxZgAB4R~Wj>-$}2{nN>0#YK$#2eKzilXSl5TN2&W#u{71@0Z*y_(=4YWoi=;zK{aGz4AgYH)8|O5zI~Q zX_Y9lV|eodS5%ss!8hTNNjsjFyyw^j+M-5x`LxRUdR(VQh5)7%aXjX`0gfKkm(ZK)*KUXyC6vW zrtF<~jtKlP8!wonXl}yOk6k8A!%={zDs1CmdjTKw3XHmb9d^fSNk)@o#AAf({57)+ZV-T){V6WEIKv39gN=l^G zi_bAGmim`pTxVZ>dE_grM?i>P;Hz8SlL^cidr>)$yG3%s<)t(xZMG-B zSjKbwZ6c=FiG;icVrEYb@>|Gy*Q8`7c<>V)7>A=e^9;%&$q969PDY5((NDEXN!-$4 z4Ql4QhC{1&IXWLkU)Gn}@-63>AG08`2Cv$>pY}S; zGMxhGfpZ9WYegI@>;KZi&!qb28?|O1GPi0~a**z}Y^OW@Bm?eexR<4fmxoWP z3P-Jb0YKv?BHU@Km+S*wkJ_tVB z5b4AG7Eh#vo0&|iJsrD^Y5VfTe a{GMf+s;uo3@BW?=7Bi@oQKjKS^nU@hun`gf delta 87 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 avA=3REvKpZ_}a-o0x-}uff026MgIq74GrM{ delta 87 zcmX>qnK?lskdc{zfx%_|u`@u5Ilw2x_5c6>%a2H(0CE*QT^vI)8s8pl1acS-FZdZ8 g|BxY+5ySz5en#~Y2FC8L^D{wQPgg&ebxsLQ0LK*?cmMzZ diff --git a/tests/visual_tests/images/text-bengali-800-100-2.0-agg-reference.png b/tests/visual_tests/images/text-bengali-800-100-2.0-agg-reference.png index 78956a9429d7161808cf163cdf99b15b33e1e2c0..db197517f439a13a9691983d39c9192d771e0e80 100644 GIT binary patch literal 4642 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 diff --git a/tests/visual_tests/images/text-bengali-800-100-2.0-cairo-reference.png b/tests/visual_tests/images/text-bengali-800-100-2.0-cairo-reference.png index 78956a9429d7161808cf163cdf99b15b33e1e2c0..8560b271dc1aab6a72e5c075024b22ab32c2db4d 100644 GIT binary patch literal 4527 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 delta 87 zcmZ3loH;=vkdc{zfx%_|u`@u5Ilw2x_5c6>%a2H(0CE*QT^vI)8s8pl1acS-FZdZ8 g|BxY+5ySz5en#~Y2FC8L^D{wQPgg&ebxsLQ0K)egYybcN diff --git a/tests/visual_tests/images/text-malayalam-800-100-1.0-agg-reference.png b/tests/visual_tests/images/text-malayalam-800-100-1.0-agg-reference.png index 78956a9429d7161808cf163cdf99b15b33e1e2c0..447b26053b5f9823c6dae02352becfa584c119f3 100644 GIT binary patch literal 1172 zcmeAS@N?(olHy`uVBq!ia0y~yU{(OKQ#hD`q-Xz+74DnORv`+1uMYIXStxxp{ec`TF_>1_p+Og+)b0 z#l^)XB_*Y$rDbJh<>loS6&010l~q<&*45QDHa51kwRLuO_Vx8mm@r}L)Ty&)&t9@* z$*NVWwrtt5XV0F)hYz1Rb?VBME4Oal`v3p`vL~#%K$jl!ba4!+nDh45&7xZ#5^WFT z4>g?46H87=YPl)?^>2LK72P=&Cx0BCcge-7Vm|W~juo$pey$DUKEwE9!c<$v1*bSz z1O^^0i8%f>YkJ$kwCbOQ-@fd!Ydx6v^n6^|$!9U={(Nv{30hKm*XZJzrLy)f+Cu8= zJd^BSY?posv=MBr5dwy`7`Nx@FmX;ZI%*-Y;O1;`<+nn3Co9zv^RaGdeP2f_VaA;4- zt-XzRt@o=vY1|Q2CTW`e>~S2&lY{zlwbAMQFH1RB3VXB)dL$k*E6Gc{e~qbv8jIH5n6iIs_-m|mj*w4df z#Gl^LuwO8VV~IiW?cco~uVWSZZ|dzeKYv_t!t+{*-+McY@8`UkuTmC%tmLC6OVEtP zsp7%e|34^CNGm(IRpQBGffG78H#XmGxA*y+y}JA6zMh|tj5(HAD9={kxPSU@u@e{H zJn;*x`)tm#Y1WU2#||CaoBFf7H8y*?QG5+kqew>B=57ClHr(_$^f~NC5C6PFlLb7a zWDk8;wp$Rq%a2H(0CE*QT^vI)8s8pl1acS-FZdZ8 g|BxY+5ySz5en#~Y2FC8L^D{wQPgg&ebxsLQ0I?1lHvj+t diff --git a/tests/visual_tests/images/text-malayalam-800-100-1.0-cairo-reference.png b/tests/visual_tests/images/text-malayalam-800-100-1.0-cairo-reference.png index 78956a9429d7161808cf163cdf99b15b33e1e2c0..447b26053b5f9823c6dae02352becfa584c119f3 100644 GIT binary patch literal 1172 zcmeAS@N?(olHy`uVBq!ia0y~yU{(OKQ#hD`q-Xz+74DnORv`+1uMYIXStxxp{ec`TF_>1_p+Og+)b0 z#l^)XB_*Y$rDbJh<>loS6&010l~q<&*45QDHa51kwRLuO_Vx8mm@r}L)Ty&)&t9@* z$*NVWwrtt5XV0F)hYz1Rb?VBME4Oal`v3p`vL~#%K$jl!ba4!+nDh45&7xZ#5^WFT z4>g?46H87=YPl)?^>2LK72P=&Cx0BCcge-7Vm|W~juo$pey$DUKEwE9!c<$v1*bSz z1O^^0i8%f>YkJ$kwCbOQ-@fd!Ydx6v^n6^|$!9U={(Nv{30hKm*XZJzrLy)f+Cu8= zJd^BSY?posv=MBr5dwy`7`Nx@FmX;ZI%*-Y;O1;`<+nn3Co9zv^RaGdeP2f_VaA;4- zt-XzRt@o=vY1|Q2CTW`e>~S2&lY{zlwbAMQFH1RB3VXB)dL$k*E6Gc{e~qbv8jIH5n6iIs_-m|mj*w4df z#Gl^LuwO8VV~IiW?cco~uVWSZZ|dzeKYv_t!t+{*-+McY@8`UkuTmC%tmLC6OVEtP zsp7%e|34^CNGm(IRpQBGffG78H#XmGxA*y+y}JA6zMh|tj5(HAD9={kxPSU@u@e{H zJn;*x`)tm#Y1WU2#||CaoBFf7H8y*?QG5+kqew>B=57ClHr(_$^f~NC5C6PFlLb7a zWDk8;wp$Rq%a2H(0CE*QT^vI)8s8pl1acS-FZdZ8 g|BxY+5ySz5en#~Y2FC8L^D{wQPgg&ebxsLQ0I?1lHvj+t diff --git a/tests/visual_tests/images/text-malayalam-800-100-2.0-agg-reference.png b/tests/visual_tests/images/text-malayalam-800-100-2.0-agg-reference.png index 78956a9429d7161808cf163cdf99b15b33e1e2c0..706a920e4b2f2fadbeea636c2e4c4ab95a2dbe32 100644 GIT binary patch literal 2052 zcmcgt`#Td18{S4tg(1cgGkI&3S4Ku+qp?N~Z4O@!(VG&XOpC2-%W2MMdDn`|`IK|Y zTX{u74ZX_{a|n|X%2>{PyWaoc`{n!Pxu55`pXa`==lSJMaCXGY?}hCJ008oYb2uUZ zAO)A?eqbp{B%~F$NPz8p-o-|OGBPr9a&ig^3d+jLs;a6m7)(n`3xPoB>FFVnNPT^M z6bgk#qfehcZDCe4yUlNu(Y(aqN1X@y1JpE;nk~GZEbCxot-^BJv<(7aBxr{ z5KK=`&(F{A?(Sl~+&l&V$o@vaS-C_!S{M!RY;crfOBuiJd7%u6z{xOb^Lzq zS57N`g5@}>JfH(F>GeeLhPy3xus6+%ibV5inPIHCe{{^;O`WPZD{h6YmOJ(z$g58i zf5e1=&k+Rn8A=a)cJu4UM%exgT4zC3o$^I=V{TI4a$qAZb@8OB9TZrh4Mh5XiD}(x z=^Ey)jqv3DQd;y2Tl12Kkp-ue8%Uwo@4T3c|M}}U-t^6Y&i(;fc?~1+gV*yJx6SnR zE7HYu>Edj>4y?cVz-E8>r?gD+cF8f2L4~Y>!?sY^T5jrPg7fkB)poTpSSn@I*7P2Z zVe-?M*@lYR3CRde4AzXWDR39RE*hUd2#iR|FVDPT&~Xb%TCQ9@Q+~SR-g^XGtP9th zf3p|ffBsXYHRG|F?*1PCr}bcrLFU=#bEB@WC_g()9aF|tZ@ZAjn=Sr5Xwu5~&Bm40 zdIFJLomZbs%1f~x@6+6H2J+nR6lDp&Id~t5tn8`_roBsM@>7`y!XbaCo%eg$uF<(C zGLu@IDZK1{$eYuvM4`aap}Z8!mG(%*jqHju(N8deuF~JR=aU1DotE7)8rBBHeZo*%^{pE1S&E^!=68^n-`B|2w zGcp90UJ=B^Eeh9Il_$UZh9lcjf|qM z%M{}4f}BIA?y0PLM?@$uF2;Y1(2jk$bxhx#@t2S>g{Qhd|Jm#(SG-~H`qA~Rcu z0}gRgP)S5L=|UlF9g9pJI?fnm1h4wKex9ltF!3i$_hM3Ee9X*vTt@4?v*1E#LIkJ+lsZDO`hIUfKbdoi1cyy!p@I@9JGYu}QA z#V|PDD@ow9IH=NOpm98RK|BPv*B6vLzH|^oe8?CX!moUkY0PK|j(=7Y)WhtkDnsOj z+)s|FH#uD3c8KPGHetdBYq#EPK@a{=&rPB3lp-IMHQ(X@<;FE5+j9E4NX?-t!iuhE z?-HcS0YKz*pH^z;%!24^8GS;f+7!rUO8f9&;%gr#HwR6P!rb+X0*SHwXlC|Fu%`m2 zL61T;4g36a=f%m{i|aT2Jz#-)i(4y(TPP55)Yebdq;iVe^L<*Zx%Nvsf9_($7!+cLpncalDn_#<#^1}&tRkMBn;mi z4_gQU&ceRDJ<)E9=gVuh+Blk6=gkj&4wulsQjZ4iZjbeOzD0-9HmZw*K}0Bs*k1UM z*{!kMciaEzd(O)8U@S9xX)!W4IUgMVq#WfSa+(go;q8DMtKnZZ*XS Yzy7(D8}rvgiJb!oHjcO&Yu~8<0-(aH@Bjb+ delta 87 zcmZn>$ebV%$jHpVz~D0f*cl+j9N-h;`v3p`mdKI;Vst0Im2ME&u=k diff --git a/tests/visual_tests/images/text-malayalam-800-100-2.0-cairo-reference.png b/tests/visual_tests/images/text-malayalam-800-100-2.0-cairo-reference.png index 78956a9429d7161808cf163cdf99b15b33e1e2c0..a2783c652f9f18f9c0f7ed7e61eec9cb1bed4de0 100644 GIT binary patch literal 2092 zcmcgt`!^GeAKqrQ;cXU`H^L&9*X5NalZ+KMN@gtgg=}4>uUkbX*-Olb++GzaF(E7@ zg;2TQl7zHTglyWp%_WTOyYv1B-(SAJe4fuapXYO)bDr~@^Dtdqa61aWCg4kt%@ zHvm8mA=}ANIoWi&&1#lGiK{cwL5AD6ZP)Cj&L8H+a3N5{VQP6hx&`Lqb9>U%ng}85tcN z9UB`PA0MBTl$4T^lAfNPm6es7o12%HS5Q#EVzJ80%h_ypO-)UGeSJeiLrY6bTU%RS zU*FKs(CFwWhr^kgnwp!N@1hRy~U;jl1!2a(iX&b+aW2G$V841qF0WVIhhA-6GuCrFlILpo7DvtRa zd=;`$6iGY!_ff6ZqqqlU4<~<1*nD)72k-~P=pYgYnzUzsjZo0k`S{Tb6{}s$8$5EQ z!uE@#a4VYip~cfpgAVQ4vkWQrQ`)fq$I#3nznfF}q_C!@RXZZQv=3P`-;CD_ZO-F{ z+mh4O~s;N~l_1{5KN0v)U6lfkR4^G%ES(nGCo`DYCxQ9E{ zG5!3Hll+R8XTwSjttqx?|Gsx?H`?;&TbHttR|)>+9VgvHW$gJobu|CUM08bgRkYs= z-A&ZibPyM$D=%+LZOk--I?h^dIe_)wih~6DDA(pX%*3U2-eE04UA9YPnA+G@Ma5)F zaX3zooW09AcAb`|#r#*PJq(nz3UNT+EvR^q(Bkd}tYMsg=!`E4ioy|>beec4a*Ee9W=MBY zc@kl9 zGsZ`G#}Ugdv9H3nJ6}Duoc0N8u@^U& zp#pL{>>`z5dC4Qeb>Wr0A|OG>H=@Vs%Cp0D{?#B6)d80tg60?aNBT`yGx52Fh2~&# z+@dHVP5kB5#LXGGA}oz^NciIZpq_w$viu}*Nohu4Bf>?{99xh^WNu$=N7eI zO3P0IgOHxBSxw)+h)rCfz;S0|Zm>lh+T(y6|{RWw8d#auJ$-ZnGw%79U0 z9jvKL(LrqUQy`?ay&oneUdOO0%=@|zp_$$-EydeEM z0!SDW|NZ$#ii$WuCFAwd!2SrQ>pqL#UJH9mR!7mQC$N|lub#O_<39%|_Z7Pn@AcgE zO69cmA6zWo+k3h~{preN13K8Cyy1?{oPv=ZM!~zR3qY~S5*G^SWoE_`h%5FSt5Jn+ zyNv^Z+`jkj35w(TgUdhcR&u6KC8xkM;?K-{$nf|aYGa#vm)@>~=0yh0jW@%M5Jq@g zr!_Lf@YRQ<+nx3Yy}finZd}@Tjlq1{rTTo~7Y-ik1I+AmrEc|HDja=Rnm~#x7JL(+ z7Kiaqm4Sa4uW_lXEZWC&fv3yzZeG#m!W^&Z{Wj5S%s;+1I*gECVGlCIHeve_iIrj# z{L6`u!Ib-YJM8rkZ=z{*VUDRf!KOZLO`nLO@-`KFWhVSS#+|aXYR(VU5M{kfB7>9# zovnML*!i~#RWzjIrpR9P=UgSwqXS?Ty}@+zdr`%pX9DS|^B4alqu@A6ouuvzLd*El zu1&A&N+7q_4v}Yz&2LBIHA}P+Vqb5iketAe7tBX{Am5YX2ry8sZ9`{sf0y_{qJ*h( zWNt)KWC4=}68~=exu~t0QSA+$a%KlJ#Rd_7vOIbrL5i|a6=JWcpO0C4Q3^nbAnGFw z-B#^ixDe!f-)%Cz0abTI=gL^NFRMBj(9*i~`iB1Z=;0wf!C%WbB)%a2H(0CE*QT^vI)8s8pl1acS-FZdZ8 g|BxY+5ySz5en#~Y2FC8L^D{wQPgg&ebxsLQ0K1SHRsaA1 diff --git a/tests/visual_tests/styles/harfbuzz.xml b/tests/visual_tests/styles/harfbuzz.xml index 66c7bafb0..b1b9473b9 100644 --- a/tests/visual_tests/styles/harfbuzz.xml +++ b/tests/visual_tests/styles/harfbuzz.xml @@ -6,6 +6,7 @@ csv ../data/points.csv + -1,-1,1,1 @@ -16,23 +17,23 @@ - [nr] = "3" + [nr] = 3 "Ligature: fi" "mixed نامجو Text" - [nr] = "1" + [nr] = 1 "نامجو 17" "#519" - [nr] = "6" + [nr] = 6 "زنقة الملاح" "#1154" - [nr] = "9" + [nr] = 9 "أڭادير" "#1146" diff --git a/tests/visual_tests/styles/khmer.xml b/tests/visual_tests/styles/khmer.xml index 5439e101d..4d2eddc24 100644 --- a/tests/visual_tests/styles/khmer.xml +++ b/tests/visual_tests/styles/khmer.xml @@ -15,23 +15,23 @@ - [nr] = "1" + [nr] = 1 "ព្រះរាជាណាចក្រកម្ពុជា" - [nr] = "3" + [nr] = 3 "ស្ត្រី" - [nr] = "5" + [nr] = 5 "ផ្លូវ ១២៣" - [nr] = "7" + [nr] = 7 "ផផ្ទះសំណាក់​សណ្ឋាគារ​មាស" - [nr] = "9" + [nr] = 9 "ផ្លូវ១២៣" diff --git a/tests/visual_tests/styles/text-bengali.xml b/tests/visual_tests/styles/text-bengali.xml index d6a0abde4..23d5a5b23 100644 --- a/tests/visual_tests/styles/text-bengali.xml +++ b/tests/visual_tests/styles/text-bengali.xml @@ -10,21 +10,22 @@ My Style - csv - ../data/points.csv + csv + ../data/points.csv + -1,-1,1,1 diff --git a/tests/visual_tests/styles/text-malayalam.xml b/tests/visual_tests/styles/text-malayalam.xml index a0e760227..48b24c955 100644 --- a/tests/visual_tests/styles/text-malayalam.xml +++ b/tests/visual_tests/styles/text-malayalam.xml @@ -6,13 +6,14 @@ My Style - csv - ../data/points.csv + csv + ../data/points.csv + -1,-1,1,1