From 0ad0fa5a0589b3dcd0838a18ff2202ad5a88c9e3 Mon Sep 17 00:00:00 2001 From: Laurenz Date: Sat, 20 Nov 2021 13:26:28 +0100 Subject: [PATCH] RTL tracking test --- src/library/text.rs | 6 +++--- tests/ref/text/tracking.png | Bin 2163 -> 2609 bytes tests/typ/text/tracking.typ | 4 ++++ 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/library/text.rs b/src/library/text.rs index f2c19516..cdcc7509 100644 --- a/src/library/text.rs +++ b/src/library/text.rs @@ -163,7 +163,7 @@ pub fn font(ctx: &mut EvalContext, args: &mut Args) -> TypResult { let fallback = args.named("fallback")?; let style = args.named("style")?; let weight = args.named("weight")?; - let tracking = args.named::("tracking")?; + let tracking = args.named("tracking")?; let stretch = args.named("stretch")?; let size = args.named::("size")?.or_else(|| args.find()); let top_edge = args.named("top-edge")?; @@ -264,7 +264,7 @@ pub fn shape<'a>( ); } - track_segment(&mut glyphs, style.tracking); + track(&mut glyphs, style.tracking); let (size, baseline) = measure(ctx, &glyphs, style); ShapedText { @@ -563,7 +563,7 @@ fn shape_segment<'a>( } /// Apply tracking to a slice of shaped glyphs. -fn track_segment(glyphs: &mut [ShapedGlyph], tracking: Em) { +fn track(glyphs: &mut [ShapedGlyph], tracking: Em) { if tracking.is_zero() { return; } diff --git a/tests/ref/text/tracking.png b/tests/ref/text/tracking.png index 446fd981a25ddbef478f0cd11b9c4a777e89c015..43eb5e8a936e2ebbe0bbcd8d1234c580d2315b61 100644 GIT binary patch literal 2609 zcmZ`*c{J1u8=m2J?+jUHO18q-Wl4xIXoi`rxpvuxxwcf+W)g~_v1S=$Mi-4_Eo&v^B^p7)&RzxTY$6K`Q|$jvFt2?Bw*jg2r?AP^Wh zu4kdg2}I#yVnHB|ZDS1D=I-d?_;TQs4ve(A*t&Ea1Vpf#Hi^d!5(Ft^AB-G~WTB*s zfsB<#v2Qux{sZG6t>l%ZzE5UsY3R#6`qzq*;-bIfE%L#UgJ6{SkJt#bYf)nNQ-$yE z83D2qQ+gqUqvkc^v(s-@)DNB~q#H_@H9y~9uX?s8tu6GI13ueW&u=0xf*$~V(c2QP zyLHG?(o(DwU*0;;IbZd7Q~i_o~d`yxT(rLwZ;)dxqvV!6AfHfDNR zr~HZ_*I=*AOLzmWi3aBROLR5fd9gkbxy>8auHr}UR@K+tR8I^A+*}ox^PPY)$;iqNP718nTK==rZE`#QlAv`7299*kZ-IC?aMtLgw=p4y>i!{p zimy#sjR$T?Hl7MvE5r-N;5AJU$kZUQSH3kwJ2J6v3NY%tlau7JY7v~WLoiCO=rC~F zhUrg}n!QRVxm_jKQ$YT7zPfaBaYZwo#4XPWVcq%NFM1K9rETG6VUwdO`C9Q_%nOZpXZ{OU~E8v z#H9318b0l#0Pkbj4xa-=;=;fp$RkbYk08dSHp?t_eBJp`iG`HI(*9o6o_x>TGPeZK z270WJ*q6{Mr-o8WxTLgPu(E+i+V02$g-^?4U(-cq?l$o-3~X`b{^cc*)}b`Q~f1JR4o_I z-)(+&@*RhjEn5@Nb+zO^zRs$VU>&z^PFteLw@Ph5tBUC&;QHC65bKH)xXKAZ8^HPZ z`hmil+DFE4W>$Ya0TOC|vgzE>47A6W*eKOBG*T*<33@!jaAi0GM3xDH!VlFg15EzFa zsFBB<^HY)$hbmB&i&x`XFx&R4a==o}zK}lYLVid@BkJsCeL9>$q0Vp?9oz|%od0w~ z|EFWA^4#f|gMfuB<<98?y4GFfVk}`RtYQD~I*|8pvOw8c{6Mjsp~LxA(!I`0qopbH zUAtBZ5h;QT4a|5nDx+yK?KkK%m!o;LtrDYuzS?ZS!OQ5 zohOo01LRbt#^pG0^<32~dND%a)Z|6F%zN7?o9oTP8^oX@Eg|atM|BE=bX*=Cdu@}e zzbD4^>br8NX;AbY!1#^2e+XJ1y?zxNo(0O;vw7>;>0-iIBNZzCa>R*N#*Y6|arL7g zeTZ{Q%i4|{l5XG;WVm+1z9>Z{Uq^kU<(2e;HEV+Xy^z~J z@{>PBE|Wk$n;B1nbxFrE#g7MX1F+u4!gwwl4D|TLPh}ylJFX!C-&bCrnLXg*OF~8j z)}KZ-a;r{=Y*~`kSXJR%_vsRnD3&+s2KlpKcaoWK(Ge@PXqi5<)d$G`&t zc!?{U_?;wo9kRI-^!9AiR+9!SvvF%;&m_40q|5MN($iG$MNY9Zf_reC0ahP&F4}!m z16GkGffr~s2!A6bMaKl(RBKF*B`ic+lIh~C@H+w1rU+KudiWS>7A&R#T^)im_`zRi zi*U#jc&9lmOj|^-n*T%p38mZT8T^r|O+dRgLdI9Mlzz%Oke8@9MNKXVwTtBCNfbeS zQr`u+XtDpD_8FUH<~r^r;HbfD@p-(QJm4>*Z|a!th(R7DSWFZg1l%ke&QzJA$)3^e zZ?%atB985J&eDG-n3j1jLB-Hr;$+y=W>o{E!=SO}b%s7vTxX$p+mgH`;+MtFoheD% zk1#CWx9)!|_JE?=uOlC>&SrD@#?tnC*JmLEi?8dBS|snq{-32MUq)B{i*58i#2?4& U$dn>X!bl{`n6V_8h@r?9Dj7tU z$-WeMMPfwurVOHDBwowuoDb(**SW6q-XH$geSf$={(rw@ds}lMxGWq3fe2Yz;2j|l zDD3zC2>2b4(}2ir2n0Y|;<2Z%k1yvfMU*#*oh;+!K+tUpJqk0zR|Oh)hoLL6Bn%o< zcnr%d5MymZ*NhCNTTo+TQ?_rLTIGxHz8j)etIDQiTdQXD`sn6Z2TAPt>H_@jO46`+ zZ%~ko)%l-e_AI7>|M|eTYED`jWd@I*5D3^mW!hDyLdGkEznop^$)ZO)*ULkKM4& z)w!D=gf?m+3s0q1``o|HeQxSH`=H4ui!W)aH4rS?Fj;tw+g+E~LIDE7wr_xH3D;gE zZiL5T-{91>9VKy$X30TzwnOpzI*5S)WE`$4>e?$~QPOZyIHDOF9w6>xlGKKBL&2+C$!>PRWDLyj!ghhfBMC2E#* z!aYTFGFT2^`BwtT@>?Jl2Z0jORi;@ByRM#reURP0iW28c1_Vp*LBeBHJZ&F zL#r{eE(fez3H9ju&G&Qo!Uy3lfWOnC9BIkWma9ts^JA4&kZ01~RaEY$U8^k7#p+7J zuxzYTbyncTfT2g)0%jwujl83$yuth{$j7O$4*z-?PDcYmUZwrOW)Kd-F=PMYVJ}rr zZ6}s0Tjr{~t8>5OVA!orA*>(6A3;$R0o!VF52Z4$-2h;JQ$}8*5-mdhcFCm7cB5o$@hv|y!{=pX6~+}7nCF8W@&?scnhoX42UlTf85#Qw~U#-ak<$A9A9aMjh70Q=4{czq# z92P9YKiM|4F!N@gqccx4tjFfb1wx*Be63Rw*A^FUf$&a`q?{QZ5QdJ2Z8SZpkCh6P zi-$u;tN6xADW?vrQ;2JBxbT9P>73H-4BVOe5gF8ii|?oCTAjDDC}#H~a2PW^E=c`Y zHBn}yKI{4{U=nTPySmw~PMr3@sVA0C`^jkm9`SwZayn|?6o z{f5LJ+8I&e7^nATO=AIj1;`v>kA%69aF%mLB#zWSAc#Er`C=o>Y)cdtmL*|I>+G9b z-(S}@GNnN|M4I<+O#};~=l5KVq&s9~Lhl;Gyq~%FS|Txi_($)(RP@VhV3#xy0zeW;`Dfw+3Hy)!=@W{ykG`l>P(Y){Msfzrk<2(zXgP>pTC#n=v0GjJ3n> z33d>*hRij3zDom#^=*<`Dc>u(2Y`wFn|c70Y`3Gj@{|7UgsV{BHazy6z`8uB#pJogy$G2I^x=yNw-;{t6<4Ls1EOP=g zab`6-mBQ$uaSKp_LzlA6Vv5Kf*0JxS?(4Yjb1dBSsvqdB_~LVBz~M`sbqw0<1e{>3 zXH+Q=eMJ4G>6r|T2{jt4mc4-(3@AQ=*d+3hR-6#@L*eR{eZn?w4|fr;yjzhEy&hDZ zFe&HXIPPQstZ60ow47SEuXw1}s=*X)JHppakEI!k9)EiSU=~4VPv0sv5SWQy-eSZs-B%Wf#Ob7`arXHNGH~r8$9Ch>fJj z;pvLbOsZHbjIso?_cyE?Hfm&PO(-3Zurca%2;%q1iCZYpC@$9n(=LbFD?(=tQa5iP zX>yH$``)}De_34=*&s)H|F-p> qY)5GC|Fd@ty!~I2|LuD2xg8N1YRH<=^ECwI_gI?Q;u)si