Apresentamos quatro novos recursos internacionais no CSS

Jack J
Jack J

Quatro novos recursos internacionais de CSS do módulo de texto CSS nível 4 serão lançados no Chrome. Esta postagem explica o que já foi enviado e o que será enviado em breve.

  • No Chrome 119: quebra de linha de frase em japonês com word-break: auto-phrase.
  • Atrás de uma sinalização do Chrome 120: espaçamento entre scripts com a propriedade text-autospace.
  • Em desenvolvimento: kerning de pontuação chinês, japonês e coreano (CJK) com a propriedade text-spacing-trim.
  • tamanho mínimo e consistente de fonte em todos os idiomas.

Quebra de linha de frase em japonês: word-break: auto-phrase

Esse recurso melhora a legibilidade do texto em japonês e está disponível a partir do Chrome 119

Alguns idiomas do leste asiático, como chinês ou japonês, não usam espaços para separar palavras, e as linhas podem ser quebradas em qualquer caractere, mesmo que seja no meio de uma palavra. Esse é um comportamento normal de quebra de linha para esses idiomas, mas em textos curtos, como títulos ou poemas, é preferível colocar linhas em limites de frases naturais (em japonês, esse limite é chamado de "bunsetsu").

O novo recurso CSS word-break: auto-phrase especifica que o ajuste precisa ocorrer nesses limites.

<html lang="ja">
<style>
h1 {
  word-break: auto-phrase;
}
</style>

<h1>窓ぎわのトットちゃん<h1>
quebra de palavra: a frase automática quebra a linha no limite natural da frase.
word-break: auto-phrase envolve a linha no limite da frase natural.

A detecção de limites é realizada por um mecanismo de aprendizado de máquina e, portanto, pode não resultar no resultado pretendido. Se isso acontecer, ajuste manualmente os pontos de quebra. Uma tag <wbr> ou um espaço de largura zero (&ZeroWidthSpace;) aplica um ponto quebrável, e o combinador de largura zero (&zwj;) evita uma quebra.

窓ぎわの<wbr>トットちゃん
ユーザー<wbr>インターフェース

Atualmente, o Chrome é compatível apenas com esse recurso em japonês, por meio da porta BudouX C++ que usa a tecnologia de ML do AdaBoost. Leia mais sobre isso no Google Developers do Japão: BudouX: 読やすの改]:[のめの軽量ち書ち器.

Planejamos oferecer compatibilidade com coreano e chinês em futuras versões do Chrome.

Espaçamento entre scripts: text-autospace

No momento, o recurso a seguir está atrás de uma sinalização no Chrome. Para testar, ative a sinalização de recursos experimentais da plataforma Web (encontrada em chrome://flags/#enable-experimental-web-platform-features) no Chrome 120 ou mais recente.

O chinês e o japonês misturam vários scripts, dígitos han, latinos e ASCII, além de hiragana e katakana no caso do japonês. Espaçamentos pequenos ao mudar de e para scripts ideográficos não Han geralmente facilitam a leitura.

O Chrome planeja começar a inserir o espaçamento entre scripts por padrão. Esse recurso traz para a Web uma prática comum, amplamente usada em materiais impressos para melhorar a legibilidade.

O novo padrão aplica espaçamentos pequenos para uma melhor legibilidade, que pode ser controlada com o espaço automático de texto.
O novo padrão aplica espaçamentos pequenos para melhorar a legibilidade, que podem ser controladas com text-autospace

Se você quiser desativar esse comportamento, use a propriedade text-autospace para controlar a inserção dos espaçamentos.

text-autospace: no-autospace;

kerning de pontuação do CJK: text-spacing-trim

O recurso a seguir está em desenvolvimento e será ativado por padrão no Chrome.

Em chinês, japonês e coreano, aplicar kerning entre caracteres de pontuação melhora a legibilidade e produz uma tipografia visualmente mais agradável. Atualmente, a maioria dos materiais impressos e processadores de texto aplica esse kerning.

Por exemplo, pontos e parênteses de fechamento CJK geralmente são projetados para ter espaçamentos internos de glifo na metade direita dos espaços de glifo, de modo que cada caractere tenha um avanço constante.

Mas, quando esses caracteres de pontuação aparecem em sequência, esses espaçamentos internos do glifo se tornam excessivos. Nos dois exemplos a seguir, o segundo é a tipografia correta; a metade direita do período da CJK deve ser removida.

Quando os caracteres de pontuação aparecerem em sequência, a metade direita do período CJK precisa ser removida.
Quando os caracteres de pontuação aparecerem em sequência, a metade direita do período CJK precisa ser removida.

Em geral, o comportamento padrão oferece bons resultados, mas os desenvolvedores podem usar a propriedade text-spacing-trim para escolher estilos diferentes ou desativá-la em alguns casos.

Tamanho mínimo e consistente da fonte em todos os idiomas

Antes do Chrome 118, fontes menores que 10 px ou mais não eram renderizadas conforme especificado, mas arredondados para cima quando o idioma era árabe, farsi, japonês, coreano, tailandês, chinês simplificado ou tradicional. Os desenvolvedores precisavam de soluções alternativas para renderizar textos pequenos, por exemplo, usando a propriedade transform.

A partir do Chrome 118, esse limite foi aumentado para todos os idiomas, fazendo com que eles correspondam aos demais. Essa mudança melhora a interoperabilidade com outros navegadores.

A partir do Chrome 118, a limitação de que tamanhos de fonte menores que 10 px ou mais não são renderizados conforme especificado foi removida para árabe, farsi, japonês, coreano, tailandês, chinês simplificado ou tradicional.
A partir do Chrome 118, a limitação de que tamanhos de fonte menores que 10 px ou mais não são renderizados conforme especificado foi removida para árabe, farsi, japonês, coreano, tailandês, chinês simplificado ou tradicional.

Interaja e compartilhe feedback

Se você tiver algum feedback sobre esses recursos, registre um problema em crbug.com.