LGTM1 On Fri, May 2, 2025, 1:00 AM 'Sejal Anand' via blink-dev < blink-dev@chromium.org> wrote:
> Hi Yoav , Vladimir, > The Web Platform Tests pull request is currently under review. I will > update the chrome entry with the relevant WPT links and share it with the > group once finalized. Please find my inline response below. > Have you investigated some sites that may be impacted by that? I think the > rendering is certainly more correct for regular speech, but say one was > labeling columns by letters with letter spacing. I feel like this would be > negatively impacted by the change. I don't image that's common, but having > some examples of how letter spacing is currently used with cursive scripts > may be a good investigation > Although I could not find above mentioned specific example, the spec > advises authors to avoid applying letter-spacing to cursive scripts unless > they are prepared to accept non-interoperable results. This recommendation > highlights that modifying letter-spacing in cursive scripts can lead to > inconsistent rendering, potentially disrupting the natural connections > between letters. WPTs and web tests have been added to cover few scenarios > involving both cursive and non-cursive scripts. > On WPTs, what would it take to add the test? I think it's important that > these changes that affect certain scripts are tested in WPT. Is it possible > to add the required fonts to the fonts directory? > I have submitted the WPT pull request for the css/css-text/letter-spacing > directory, and it is currently under review. > Thank you, > Sejal > > ------------------------------ > *From:* Yoav Weiss (@Shopify) <yoavwe...@chromium.org> > *Sent:* Wednesday, April 30, 2025 6:04 PM > *To:* blink-dev <blink-dev@chromium.org> > *Cc:* Sejal Anand <sejalan...@microsoft.com>; blin...@chromium.org < > blink-dev@chromium.org>; Ragvesh Sharma's Organization (FTE) < > ragvesh_org_...@microsoft.com>; Chris Harrelson <chris...@chromium.org>; > Mike Taylor <miketa...@chromium.org> > *Subject:* Re: [EXTERNAL] Re: [blink-dev] Intent to Ship: Ignore Letter > Spacing in Cursive Scripts > > Hey Sejal! Thanks for working on this, as that seems super important! > Would you be able to address Vlad's questions regarding the potential > compat impact? > > On Wednesday, April 23, 2025 at 6:17:38 PM UTC+2 sejal...@microsoft.com > wrote: > > Hi Chris <chris...@chromium.org>, > > This change will result in second 'OK' example mentioned in Spec. > > > Thank you, > Sejal > ------------------------------ > *From:* Chris Harrelson <chris...@chromium.org> > *Sent:* Wednesday, April 23, 2025 8:51 PM > *To:* Mike Taylor <miketa...@chromium.org> > *Cc:* Sejal Anand <sejalan...@microsoft.com>; blink-dev@chromium.org < > blink-dev@chromium.org>; Ragvesh Sharma's Organization (FTE) < > ragvesh_org_...@microsoft.com> > *Subject:* [EXTERNAL] Re: [blink-dev] Intent to Ship: Ignore Letter > Spacing in Cursive Scripts > > Hi, could you clarify which of the renderings in the example 27 table > <https://www.w3.org/TR/css-text-3/#cursive-tracking> will result? Is it > the first "good" one or the second? > > On Tue, Apr 22, 2025 at 11:18 AM Mike Taylor <miketa...@chromium.org> > wrote: > > On 4/21/25 11:20 PM, 'Sejal Anand' via blink-dev wrote: > > Contact emails > sejalan...@microsoft.com > > Explainer > None > > Specification > https://www.w3.org/TR/css-text-3/#cursive-tracking > > Summary > This feature adds logic to ignore the letter-spacing setting for cursive > scripts as specified by the web author, in line with the spec, to ensure > that letter spacing does not disrupt word structure and aims to produce > better user experience for users relying on cursive scripts. > The spec suggests that the UA may apply letter spacing to cursive scripts > by translating the total extra space into cursive elongation or > compression. Otherwise, if the UA cannot expand text from a cursive script > without breaking its cursive connections, it must not apply spacing between > any pair of that script’s typographic letter units at all. > Ignoring letter spacing altogether for cursive scripts is simpler and > helps avoid performance issues as handling spacing for such scripts > requires complex calculations to maintain cursive connections and account > for script-specific factors like elongation glyphs, typefaces, and > calligraphy preferences. With this feature, Chromium ensures that cursive > scripts will be readable and properly spaced, even if the fonts don’t have > advanced typographic features. > The scripts that we are proposing to apply this to in Chromium are Arabic, > Hanifi Rohingya, Mandaic, Mongolian, N’Ko, Phags Pa, and Syriac as these > scripts are considered cursive as per spec. > > > Blink component > Blink>Fonts > <https://issues.chromium.org/issues?q=customfield1222907:%22Blink%3EFonts%22> > > TAG review > None > > TAG review status > Not applicable > > Can you say why? > > > Risks > > > Interoperability and Compatibility > Other browsers currently do not support this feature, as there are open > bugs for handling letter-spacing settings in cursive scripts. Our > implementation introduces a behavior change that aligns with the spec by > ignoring letter-spacing settings to preserve script integrity, prioritizing > readability. > Since this behavior diverges from other browsers, there are > interoperability differences. With this change, letter spacing will no > longer be applied to cursive scripts, even if specified by web authors. > It’s important to note that this could affect sites relying on > letter-spacing for cursive scripts. > > Can you please say a little more here? Is this going to strictly improve > readability, or will there be cases where a site appears "broken" to users > or authors as a result of this change? > > > > *Gecko*: No signal (https://bugzilla.mozilla.org/show_bug.cgi?id=1342835) > > *WebKit*: No signal (https://bugs.webkit.org/show_bug.cgi?id=195745) > > Can you file formal position requests? Open bugs aren't quite the same > thing. > > > *Web developers*: Positive ( > https://github.com/harfbuzz/harfbuzz/issues/358) Three users have noted > they are impacted by the CRBug. > > *Other signals*: > > WebView application risks > *Does this intent deprecate or change behavior of existing APIs, such that > it has potentially high risk for Android WebView-based applications?* > None > > > Debuggability > > If I'm trying to figure out why my site is now different between > Chromium-based browsers and Firefox, is there anything that DevTools can do > to help me? > > > Will this feature be supported on all six Blink platforms (Windows, Mac, > Linux, ChromeOS, Android, and Android WebView)? > Yes > > Is this feature fully tested by web-platform-tests > <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md> > ? > No > No, WPT tests were not added because the > third_party/blink/web_tests/external/wpt/fonts directory only contains > auxiliary font files used by other tests. However, there is an internal web > test for this feature: > https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/fonts/letter-spacing.html > There are few impacted tests where letter spacing is applied on Arabic > texts, these are being replaced with Hebrew - > https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/external/wpt/html/canvas/element/text/2d.text.measure.selection-rects-baselines.tentative.html > https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/web_tests/svg/text/textpath-connected-glyphs-expected.png > > > Flag name on about://flags > None > > Finch feature name > IgnoreLetterSpacingInCursiveScripts > > Rollout plan > Will ship enabled for all users > > Requires code in //chrome? > False > > Tracking bug > https://issues.chromium.org/issues/40618336 > > Estimated milestones > Shipping on desktop > 137 > Shipping on Android > 137 > Shipping on WebView > 137 > Shipping on iOS > 137 > > > Anticipated spec changes > *Open questions about a feature may be a source of future web compat or > interop issues. Please list open issues (e.g. links to known github issues > in the project for the feature specification) whose resolution may > introduce web compat/interop risk (e.g., changing to naming or structure of > the API in a non-backward-compatible way).* > None > > Link to entry on the Chrome Platform Status > https://chromestatus.com/feature/4885407109742592?gate=6206904659083264 > > This intent message was generated by Chrome Platform Status > <https://chromestatus.com/>. > > -- > You received this message because you are subscribed to the Google Groups > "blink-dev" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to blink-dev+unsubscr...@chromium.org. > To view this discussion visit > https://groups.google.com/a/chromium.org/d/msgid/blink-dev/KUXP153MB1400FE8EC556E78C1D98DCB4D4BB2%40KUXP153MB1400.APCP153.PROD.OUTLOOK.COM > <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/KUXP153MB1400FE8EC556E78C1D98DCB4D4BB2%40KUXP153MB1400.APCP153.PROD.OUTLOOK.COM?utm_medium=email&utm_source=footer> > . > > -- > You received this message because you are subscribed to the Google Groups > "blink-dev" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to blink-dev+unsubscr...@chromium.org. > To view this discussion visit > https://groups.google.com/a/chromium.org/d/msgid/blink-dev/4bb27d17-9a02-4a9b-a517-e746c0d25577%40chromium.org > <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/4bb27d17-9a02-4a9b-a517-e746c0d25577%40chromium.org?utm_medium=email&utm_source=footer> > . > > -- > You received this message because you are subscribed to the Google Groups > "blink-dev" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to blink-dev+unsubscr...@chromium.org. > To view this discussion visit > https://groups.google.com/a/chromium.org/d/msgid/blink-dev/KUXP153MB1400EF4CF7EE768FA9553C7AD48D2%40KUXP153MB1400.APCP153.PROD.OUTLOOK.COM > <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/KUXP153MB1400EF4CF7EE768FA9553C7AD48D2%40KUXP153MB1400.APCP153.PROD.OUTLOOK.COM?utm_medium=email&utm_source=footer> > . > -- You received this message because you are subscribed to the Google Groups "blink-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscr...@chromium.org. To view this discussion visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw8VRTMZRiMgyk%2B0jwmyPV9Op6-%3Dgt_gv3Ghqhjj9rYcfg%40mail.gmail.com.