Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

text-transform: full-size-kana & text-transform: full-width #558

Closed
2 of 3 tasks
jensimmons opened this issue Oct 6, 2023 · 5 comments
Closed
2 of 3 tasks

text-transform: full-size-kana & text-transform: full-width #558

jensimmons opened this issue Oct 6, 2023 · 5 comments
Labels
focus-area-proposal Focus Area Proposal

Comments

@jensimmons
Copy link
Contributor

Description

text-transform: full-width transforms all the characters in the text to be “full-width” — to match the width of characters defined in an East Asian script like Chinese, Japanese, or Korean (CJK). It’s especially useful when typesetting vertical text or wanting to provide consistency in sizing when mixing CJK with Latin or other scripts.

text-transform: full-size-kana transforms the size of small Kana characters in Japanese to look like their full-size counterparts — a technique sometimes used to make ruby text more legible at small sizes.

Also having support for declaring more than one text-transform value is important, so that these values can be combined. For example text-transform: uppercase full-width will transform characters in a Latin script to be both all capital letters and the same width as the CJK characters in the font.

Specification

https://www.w3.org/TR/css-text-3/#text-transform-property

Open Issues

This is the only open issue. Should not affect this proposal:
w3c/csswg-drafts#8442

Tests

https://wpt.fyi/results/css/css-text/text-transform?label=master&label=experimental&aligned&q=full-size-kana

https://wpt.fyi/results/css/css-text/text-transform?label=master&label=experimental&aligned&q=fullwidth

Current Implementations

  • Blink
  • Gecko
  • WebKit

Standards Positions

No response

Browser bug reports

No response

Developer discussions

No response

Polls & Surveys

Most polls and surveys we conduct are in English, or are promoted within a North American & European audience. These two values affect CJK typesetting. Let's not continue biasing Latin scripts over others.

Existing Usage

No response

Workarounds

No response

Accessibility Impact

Poorly spaced text can be harder to read and understand.

Privacy Impact

There is no privacy impact.

Other

No response

@jensimmons jensimmons added the focus-area-proposal Focus Area Proposal label Oct 6, 2023
@foolip
Copy link
Member

foolip commented Oct 17, 2023

Can the effect of text-transform: full-size-kana also be achieved using font-variant-east-asian: ruby?

Does anyone have feedback from CJK language users that text-transform: full-width is important?

cc @kojiishi

@stubbornella
Copy link

I don't have strong developer signals for this API. @jensimmons do you have anything you can share?

@jensimmons
Copy link
Contributor Author

From our article about Safari 17.0:

Safari 17.0 adds support for text-transform: full-width and text-transform: full-size-kana.

The full-width value transforms all the characters in your text to be “full-width” — to match the width of characters defined in an East Asian script like Chinese, Japanese, or Korean (CJK). It’s especially useful when typesetting vertical text or wanting to provide consistency in sizing when mixing CJK with Latin or other scripts.

The full-size-kana value transforms the size of small Kana characters in Japanese to look like their full-size counterparts — a technique sometimes used to make ruby text more legible at small sizes.

Safari 17.0 also adds support for declaring more than one text-transform value, so that these values can be combined. For example text-transform: uppercase full-width will transform characters in a Latin script to be both all capital letters and the same width as the CJK characters in the font.

font-variant-east-asian: ruby is quite different. From MDN:

This keyword forces the use of special glyphs for ruby characters. As these are usually smaller, font creators often designs specific forms, usually slightly bolder to improve the contrast. This keyword corresponds to the OpenType values ruby.

@kojiishi
Copy link

Thank you @jensimmons, right, full-width and full-size-kana are for different purposes. Let me clarify our question a bit more.

For full-size-kana, as the Safari article says, they're for the same purposes, they are both "to make ruby text more legible at small sizes." Some font experts we talked to say font-variant-east-asian: ruby is more correct, so it's interoperable. We're interested in what cases text-transform: full-size-kana is more useful than font-variant-east-asian: ruby and how it's used.

For full-width, the use case in the Safari article looks clear, thanks. Do you have any any data or feedback from authors you can share about in what cases they want "consistency in sizing"? The Unicode Standard Chapter 18 says:

These characters are included in the Unicode Standard for compatibility with older standards.

If it's used for making Latin characters in vertical flow upright, we have text-orientation: upright and it's interoperable. Do you have any data or feedback indicating full-size-kana is still important?

@nairnandu
Copy link
Contributor

Thank you for proposing text-transform: full-size-kana & text-transform: full-width for inclusion in Interop 2024.

We wanted to let you know that this proposal was not selected to be part of Interop 2024. This is because we got many more proposals than we could include in this year's project. Note that individual vendors may nevertheless choose to advance work in this area during the forthcoming year. We would welcome this proposal being resubmitted again next year, if necessary.

For an overview of our process, see proposal selection. Thank you again for contributing to Interop 2024!

Posted on behalf of the Interop team.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
focus-area-proposal Focus Area Proposal
Projects
Status: Done
Development

No branches or pull requests

5 participants