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

Explore non-latin font scaling for Plex @font-faces #16537

Open
4 tasks
tay1orjones opened this issue May 21, 2024 · 2 comments
Open
4 tasks

Explore non-latin font scaling for Plex @font-faces #16537

tay1orjones opened this issue May 21, 2024 · 2 comments
Labels
adopter: external Work-stream that directly helps a team outside of IBM. adopter: PAL Work-stream that directly helps a Pattern & Asset Library. adopter: product Work-stream that directly helps a Product team. adopter: strategic-product Work-stream that directly effects the Product-led Growth initiative. proposal: accepted This request has gone through triaging and we are accepting PR's against it. role: dev 🤖 type: enhancement 💡

Comments

@tay1orjones
Copy link
Member

tay1orjones commented May 21, 2024

Background

Non-latin families, particularly Japanese and Chinese (there are others as well), utilize a full-cap height that make them appear visually larger than the latin alphabet. They instead want them to be visually equivalent as much as possible. So the idea is to modify the styling surrounding these non-latin families to match the visual weight of latin. A common recommendation is to reduce font sizes by a certain amount

In this case they want to reduce the size of Plex Japanese/etc. by 5%.

Scope

This issue is for investigating and researching the best way to do this without impacting the rest of the system. I don't think we can modify font-size because it would impact the root value/sizing for em/rem units and would make every component in the system 5% smaller.

Potential solution

There are some new font-face descriptors that seem promising: https://web.dev/articles/css-size-adjust Some of the fine-grained descriptors aren't supported in safari yet. It could be a case of progressive enhancement, where we optimize for the three browsers that support them and just do the best we can for Safari.

Open questions

  • Out of the font families that we support through carbon, what families need this treatment?
  • Is 5% reduction the % we're aiming for or is it 10%?
    • A: Again, based on the IDL page it's 5%.

Adjusted scale

While the default language for communication is US English, the IBM Plex font also has been created in multiple languages. Some alphabets have taller ascenders and longer descenders than others, necessitating an adjusted scale. Based on the particularities of each alphabet, we established two main categories.

Default scale

For Latin, Cyrillic, Hebrew and Greek experiences, use the IBM type scales.

Adjusted scale

For Chinese, Japanese, Korean, Thai, Devanagari and Arabic experiences, decrease the type’s point size to 95% while keeping the same line height as in the default scale.

Relevant internal slack convo

Tasks

Preview Give feedback
@github-project-automation github-project-automation bot moved this to Triage in Roadmap Jul 24, 2024
@tay1orjones tay1orjones added the proposal: open This request has gone through triaging. We're determining whether we take this on or not. label Jul 24, 2024
Copy link
Contributor

Thank you for submitting a feature request. Your proposal is open and will soon be triaged by the Carbon team.

If your proposal is accepted and the Carbon team has bandwidth they will take on the issue, or else request you or other volunteers from the community to work on this issue.

@tay1orjones tay1orjones added proposal: accepted This request has gone through triaging and we are accepting PR's against it. adopter: PAL Work-stream that directly helps a Pattern & Asset Library. adopter: product Work-stream that directly helps a Product team. adopter: external Work-stream that directly helps a team outside of IBM. adopter: strategic-product Work-stream that directly effects the Product-led Growth initiative. and removed proposal: open This request has gone through triaging. We're determining whether we take this on or not. status: needs more info labels Jul 25, 2024
@tay1orjones tay1orjones moved this from Triage to Now in Roadmap Jul 25, 2024
@tay1orjones tay1orjones added this to the 2024 Q3 milestone Jul 25, 2024
@tay1orjones tay1orjones moved this to ⏱ Backlog in Design System Jul 25, 2024
@tay1orjones tay1orjones moved this from ⏱ Backlog to 🪆 Needs Refined in Design System Jul 25, 2024
@tay1orjones tay1orjones moved this from Now to Triage in Roadmap Jul 25, 2024
@tay1orjones tay1orjones removed this from the 2024 Q3 milestone Jul 25, 2024
@laurenmrice laurenmrice moved this from Triage to Later in Roadmap Aug 19, 2024
@DianaStanciulescu
Copy link
Contributor

hi @tay1orjones ! any chance you had time to look into this or will do so soon?

@sstrubberg sstrubberg moved this from Later to Icebox 🧊 in Roadmap Sep 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
adopter: external Work-stream that directly helps a team outside of IBM. adopter: PAL Work-stream that directly helps a Pattern & Asset Library. adopter: product Work-stream that directly helps a Product team. adopter: strategic-product Work-stream that directly effects the Product-led Growth initiative. proposal: accepted This request has gone through triaging and we are accepting PR's against it. role: dev 🤖 type: enhancement 💡
Projects
Status: 🪆 Needs Refined
Status: Later 🧊
Development

No branches or pull requests

2 participants