shaping-join-002.html (1964B)
1 <!DOCTYPE html> 2 <meta charset="utf-8"> 3 <title>CSS Text level 3 Test: zwj and text-shaping, cross font, fallback</title> 4 <link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net/"> 5 <link rel="help" href="https://drafts.csswg.org/css-text-3/#text-encoding"> 6 <link rel="help" href="https://www.unicode.org/versions/Unicode11.0.0/ch23.pdf"> 7 <link rel="help" href="https://www.unicode.org/versions/Unicode11.0.0/ch09.pdf"> 8 <link rel="help" href="https://www.w3.org/TR/alreq/#h_joining_enforcement"> 9 <link rel="match" href="reference/shaping-join-001-ref.html"> 10 <meta name="assert" content="Arabic characters next to a ZERO WIDTH JOINER character must take their correct positional form, even if the ZWJ comes from a differnt font due to font fallback."> 11 <style> 12 table { 13 font-size: 3em; 14 border-spacing: 0 3px; 15 } 16 td { 17 padding: 0 0.5ch; 18 line-height: 1; 19 border: 1px solid; 20 } 21 @font-face { 22 font-family: 'primary'; 23 src: url('/fonts/noto/NotoNaskhArabic-regular.woff2') format('woff2'); 24 unicode-range: U+20; 25 } 26 @font-face { 27 font-family: 'joiners'; 28 src: url('/fonts/noto/noto-sans-v8-latin-regular.woff') format('woff'); 29 unicode-range: U+200C-200D; 30 } 31 @font-face { 32 font-family: 'csstest_noto'; 33 src: url('/fonts/noto/NotoNaskhArabic-regular.woff2') format('woff2'); 34 } 35 table { 36 /*using a primary font with just U+20 (space) to get the baseline right*/ 37 font-family: 'primary', 'joiners', 'csstest_noto'; 38 } 39 </style> 40 41 <p>Test passes if both halves of each of the pairs below are identical: 42 43 <table dir=rtl> 44 <tr><!-- alef, final form as it doesn't have a medial form --> 45 <td>‍ا‍ 46 <td>ﺎ 47 <tr><!-- alef, final form --> 48 <td>‍ا 49 <td>ﺎ 50 <tr><!-- beh, initial form --> 51 <td>ب‍ 52 <td>ﺑ 53 <tr><!-- beh, medial form --> 54 <td>‍ب‍ 55 <td>ﺒ 56 <tr><!-- beh, final form --> 57 <td>‍ب 58 <td>ﺐ 59 </table>