Memperkenalkan empat fitur internasional baru di CSS

Jack J
Jack J

Empat fitur CSS internasional baru dari CSS Text Module Level 4 akan hadir di Chrome. Postingan ini menjelaskan apa yang sudah dikirimkan, dan apa yang akan segera hadir.

  • Dari Chrome 119: Pemisahan baris frasa Jepang dengan word-break: auto-phrase.
  • Di belakang flag dari Chrome 120: Spasi antar-skrip dengan properti text-autospace.
  • Sedang dalam pengembangan: Kerning tanda baca China, Jepang, dan Korea (CJK) dengan properti text-spacing-trim.
  • Ukuran font minimum yang konsisten di seluruh bahasa.

Pergantian baris frasa Jepang: word-break: auto-phrase

Fitur ini meningkatkan keterbacaan teks Jepang, dan tersedia mulai Chrome 119

Beberapa bahasa Asia Timur seperti bahasa China atau Jepang tidak menggunakan spasi untuk memisahkan kata, dan garis dapat menggabungkan karakter apa pun, bahkan jika itu berada di tengah kata. Ini adalah perilaku pemisahan baris normal untuk bahasa ini, tetapi dalam teks singkat seperti judul atau puisi, sebaiknya gabungkan baris pada batas frasa alami (Dalam bahasa Jepang, batas ini disebut "Bunsetsu").

Fitur CSS baru word-break: auto-phrase menentukan bahwa penggabungan harus terjadi pada batas tersebut.

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

<h1>窓ぎわのトットちゃん<h1>
word-break: auto-phrase menggabungkan baris pada batas frasa alami.
word-break: auto-phrase menggabungkan baris pada batas frasa alami.

Deteksi batas dilakukan oleh mesin machine learning, sehingga mungkin tidak menghasilkan hasil yang Anda inginkan. Jika hal ini terjadi, Anda dapat menyesuaikan titik yang dapat dipecah secara manual. Tag <wbr> atau Spasi Lebar Nol (&ZeroWidthSpace;) menerapkan titik yang dapat dipecah, dan Penyambungkan Lebar Nol (&zwj;) mencegah pemisahan.

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

Saat ini, Chrome hanya mendukung fitur ini untuk bahasa Jepang, menggunakan port C++ BudouX yang menggunakan teknologi ML AdaBoost. Baca selengkapnya di Google Developers Japan: BudouX: 読みやすい改行のための軽量な分かち書き器.

Kami berencana mendukung bahasa Korea dan China di Chrome versi mendatang.

Spasi antar-skrip: text-autospace

Fitur berikut saat ini berada di balik tanda di Chrome. Untuk mengujinya, aktifkan tanda Fitur Platform Web Eksperimental (terdapat di chrome://flags/#enable-experimental-web-platform-features) di Chrome 120 atau yang lebih baru.

China dan Jepang memadukan beberapa skrip, Han, Latin, dan angka ASCII serta Hiragana dan Katakana untuk bahasa Jepang. Spasi kecil saat beralih dari dan ke skrip ideografik non-Han sering kali membantu keterbacaan.

Chrome berencana mulai menyisipkan spasi antar-skrip secara default. Fitur ini menghadirkan praktik umum, yang banyak digunakan dalam materi cetak untuk meningkatkan keterbacaan di web.

Default baru menerapkan spasi kecil untuk keterbacaan yang lebih baik yang dapat dikontrol dengan spasi otomatis teks.
Default baru menerapkan spasi kecil untuk keterbacaan yang lebih baik yang dapat dikontrol dengan text-autospace.

Jika ingin menonaktifkan perilaku ini, properti text-autospace memungkinkan Anda mengontrol penyisipan spasi.

text-autospace: no-autospace;

Kerning tanda baca CJK: text-spacing-trim

Fitur berikut sedang dalam pengembangan, dengan tujuan agar fitur tersebut diaktifkan secara default di Chrome.

Dalam bahasa China, Jepang, dan Korea, menerapkan kerning di antara karakter tanda baca akan meningkatkan keterbacaan dan menghasilkan tipografi yang lebih menarik secara visual. Sebagian besar materi cetak dan pengolah kata menerapkan kerning ini saat ini.

Misalnya, periode CJK dan tanda kurung tutup CJK biasanya dirancang untuk memiliki spasi internal glyph di bagian kanan ruang glyph, sehingga setiap karakter memiliki kemajuan yang konstan.

Namun, jika karakter tanda baca ini muncul dalam satu baris, spasi internal glyph ini akan menjadi berlebihan. Dalam dua contoh berikut, contoh kedua adalah tipografi yang benar; paruh kanan periode CJK harus dihapus.

Jika karakter tanda baca muncul dalam baris, bagian kanan titik CJK harus dihapus.
Saat karakter tanda baca muncul dalam satu baris, separuh kanan titik CJK harus dihapus.

Perilaku default memberikan hasil yang baik secara umum, tetapi developer dapat menggunakan properti text-spacing-trim untuk memilih gaya yang berbeda, atau menonaktifkannya dalam beberapa kasus.

Ukuran font minimum yang konsisten di seluruh bahasa

Sebelum Chrome 118, ukuran font yang lebih kecil dari 10 piksel atau lebih tidak dirender seperti yang ditentukan, tetapi dibulatkan jika bahasanya adalah bahasa Arab, Persia, Jepang, Korea, Thai, China Aksara Sederhana atau Tradisional. Developer memerlukan solusi untuk merender teks kecil, misalnya dengan menggunakan properti transform.

Mulai Chrome 118, batas ini dicabut untuk semua bahasa, sehingga tujuh bahasa tersebut cocok dengan bahasa lainnya. Perubahan ini meningkatkan interoperabilitas dengan browser lain.

Mulai Chrome 118, batasan bahwa ukuran font yang lebih kecil dari 10 piksel atau lebih tidak dirender seperti yang ditentukan akan dihapus untuk bahasa Arab, Persia, Jepang, Korea, Thai, China Aksara Sederhana, atau China Aksara Tradisional.
Mulai Chrome 118, batasan ukuran font yang lebih kecil dari 10 piksel atau lebih tidak dirender seperti yang ditentukan akan dihapus untuk bahasa Arab, Persia, Jepang, Korea, Thai, China Aksara Sederhana, atau Tradisional.

Berinteraksi dan memberikan masukan

Jika Anda memiliki masukan tentang fitur ini, harap laporkan masalah di crbug.com.