Quatro novos recursos internacionais do Módulo de texto do CSS nível 4 estão chegando ao Chrome. Esta postagem explica o que já foi enviado e o que será enviado em breve.
- No Chrome 119: quebra de linha de frase japonesa com
word-break: auto-phrase
. - Por trás de uma flag do Chrome 120: espaçamento entre scripts com a propriedade
text-autospace
. - Em desenvolvimento: espaçamento entre caracteres de pontuação em chinês, japonês e coreano (CJK) com a propriedade
text-spacing-trim
. - Tamanho mínimo da fonte consistente em todos os idiomas.
Quebra de linha de frase japonesa: word-break: auto-phrase
Esse recurso melhora a legibilidade do texto em japonês e está disponível no Chrome 119.
Alguns idiomas do leste asiático, como o chinês ou o japonês, não usam espaços para separar palavras, e as linhas podem ser quebradas em qualquer caractere, mesmo que esteja no meio de uma palavra. Esse é o comportamento normal de quebra de linha para esses idiomas, mas em textos curtos, como títulos ou poemas, é preferível ajustar as linhas nos limites naturais das frases. Em japonês, esse limite é chamado de "Bunsetsu".
O novo recurso do CSS word-break: auto-phrase
especifica que o ajuste deve ocorrer nesses limites.
<html lang="ja">
<style>
h1 {
word-break: auto-phrase;
}
</style>
<h1>窓ぎわのトットちゃん<h1>
A detecção de limites é realizada por um mecanismo de aprendizado de máquina e, portanto, pode não resultar no que você pretende. Se isso acontecer, você poderá ajustar manualmente os pontos de quebra. Uma tag <wbr>
ou espaço de largura zero (​
) impõe um ponto de quebra, e o combinador de largura zero (‍
) impede uma quebra.
窓ぎわの<wbr>トットちゃん
ユーザー<wbr>インターフェース
No momento, o Chrome oferece suporte a esse recurso apenas para o japonês, usando a porta BudouX C++ que usa a tecnologia de ML AdaBoost. Leia mais sobre isso em Google Developers Japan: BudouX: 読みやすい改行のための軽量な分かち書き器.
Planejamos oferecer suporte ao coreano e ao chinês em versões futuras do Chrome.
Espaçamento entre scripts: text-autospace
O recurso a seguir está atualmente atrás de uma flag no Chrome. Para testar, ative a flag Experimental Web Platform features (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 tipos de escrita, como Han, latim e dígitos ASCII, além de hiragana e katakana no caso do japonês. Espaços pequenos ao alternar entre scripts ideográficos não-Han geralmente ajudam na legibilidade.
O Chrome planeja começar a inserir 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.
Se você quiser desativar esse comportamento, a propriedade text-autospace
permite controlar a inserção dos espaços.
text-autospace: no-autospace;
Espaçamento entre caracteres de pontuação 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, a aplicação de espaçamento entre caracteres de pontuação melhora a legibilidade e produz uma tipografia mais agradável visualmente. A maioria dos materiais impressos e processadores de texto aplicam esse ajuste de espaçamento atualmente.
Por exemplo, os pontos e parênteses de fechamento do CJK geralmente são projetados para ter espaçamentos internos de glifos na metade direita dos espaços de glifos, para que cada caractere tenha um avanço constante.
No entanto, quando esses caracteres aparecem em uma linha, o espaçamento interno do glifo se torna excessivo. Nos dois exemplos a seguir, o segundo é a tipografia correta. A metade direita do período CJK precisa ser removida.
O comportamento padrão gera bons resultados em geral, mas os desenvolvedores podem usar a propriedade text-spacing-trim para escolher estilos diferentes ou desativá-la em alguns casos.
Tamanho mínimo da fonte consistente em todos os idiomas
Antes do Chrome 118, os tamanhos de fonte menores que 10 px não eram renderizados como especificados, mas arredondados para cima se o idioma fosse á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 removido para todos os idiomas, fazendo com que os sete idiomas correspondam aos demais. Essa mudança melhora a interoperabilidade com outros navegadores.
Engajamento e compartilhamento de feedback
Se você tiver algum feedback sobre esses recursos, registre um problema em crbug.com.