معرفی چهار ویژگی بین المللی جدید در CSS

جک جی
Jack J

چهار ویژگی جدید بین‌المللی CSS از ماژول متنی CSS سطح 4 به کروم می‌آیند. این پست توضیح می دهد که چه چیزی قبلاً ارسال شده است و چه چیزی به زودی ارائه می شود.

  • از Chrome 119: شکسته شدن خط عبارت ژاپنی با word-break: auto-phrase .
  • پشت پرچم کروم 120: فاصله بین اسکریپت با ویژگی text-autospace .
  • در حال توسعه: چینی، ژاپنی و کره ای (CJK) با ویژگی text-spacing-trim .
  • حداقل اندازه فونت ثابت در بین زبان ها.

شکستن خط عبارت ژاپنی: word-break: auto-phrase

این ویژگی خوانایی نوشتار ژاپنی را بهبود می بخشد و از کروم 119 در دسترس است

برخی از زبان‌های آسیای شرقی مانند چینی یا ژاپنی از فاصله برای جدا کردن کلمات استفاده نمی‌کنند و خطوط می‌توانند روی هر کاراکتری بپیچند، حتی اگر در وسط یک کلمه باشد. این رفتار طبیعی شکستن خط برای این زبان‌ها است، اما در متن‌های کوتاه مانند سرفصل‌ها یا اشعار، ترجیح داده می‌شود که خطوط را در مرزهای عبارت طبیعی قرار دهید (در ژاپنی به این مرز «Bunsetsu» می‌گویند).

ویژگی جدید CSS word-break: auto-phrase مشخص می کند که بسته بندی باید در چنین مرزهایی رخ دهد.

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

<h1>窓ぎわのトットちゃん<h1>
شکستن کلمه: عبارت خودکار خط را در مرز عبارت طبیعی می پیچد.
word-break: auto-phrase خط را در مرز عبارت طبیعی می پیچد.

تشخیص مرز توسط یک موتور یادگیری ماشین انجام می شود، و بنابراین ممکن است به چیزی که قصد دارید منجر نشود. اگر این اتفاق افتاد، می توانید نقاط شکستنی را به صورت دستی تنظیم کنید. تگ <wbr> یا فضای صفر عرض ( &ZeroWidthSpace; ) یک نقطه شکستنی را اعمال می کند و Zero Width Joiner ( &zwj; ) از شکستن جلوگیری می کند.

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

در حال حاضر، کروم با استفاده از درگاه BudouX C++ که از فناوری AdaBoost ML استفاده می کند، از این ویژگی فقط برای ژاپنی ها پشتیبانی می کند. بیشتر در مورد آن در Google Developers Japan بخوانید: BudouX: 読みやすい改行のための軽量な分かち書き器.

ما قصد داریم در نسخه های بعدی کروم از زبان های کره ای و چینی پشتیبانی کنیم.

فاصله بین اسکریپت: text-autospace

ویژگی زیر در حال حاضر پشت پرچمی در کروم قرار دارد. برای آزمایش آن، پرچم ویژگی‌های پلتفرم وب آزمایشی (که در chrome://flags/#enable-experimental-web-platform-features موجود است) را در Chrome 120 یا جدیدتر فعال کنید.

چینی و ژاپنی چندین اسکریپت، ارقام هان، لاتین و اسکی و همچنین هیراگانا و کاتاکانا را در مورد ژاپنی مخلوط می کنند. فواصل کوچک هنگام تغییر از و به اسکریپت های ایدئوگرافیک غیر هان اغلب به خوانایی کمک می کند.

کروم در حال برنامه ریزی برای درج فاصله بین اسکریپت به صورت پیش فرض است. این ویژگی یک روش معمول را که به طور گسترده در مواد چاپی برای بهبود خوانایی استفاده می شود، به وب می آورد.

پیش‌فرض جدید، فاصله‌های کوچکی را برای خوانایی بهتر اعمال می‌کند که می‌تواند با متن خودکار کنترل شود.
پیش‌فرض جدید، فاصله‌های کوچکی را برای خوانایی بهتر اعمال می‌کند که می‌تواند با text-autospace کنترل شود.

اگر می‌خواهید این رفتار را غیرفعال کنید، ویژگی text-autospace به شما امکان می‌دهد تا فاصله‌ها را کنترل کنید.

text-autospace: no-autospace;

CJK نشانه گذاری: text-spacing-trim

ویژگی زیر در حال توسعه است، با این هدف که به طور پیش فرض در کروم فعال شود.

در زبان های چینی، ژاپنی و کره ای، به کار بردن خط میانی بین کاراکترهای نقطه گذاری، خوانایی را بهبود می بخشد و تایپوگرافی بصری دلپذیرتری تولید می کند. امروزه بیشتر مواد چاپی و واژه‌پردازها از این کرنینگ استفاده می‌کنند.

برای مثال، نقطه‌های CJK و پرانتزهای نزدیک CJK معمولاً به گونه‌ای طراحی می‌شوند که در نیمه سمت راست فاصله‌های گلیف، فاصله‌های گلیف داخلی داشته باشند، به طوری که هر کاراکتر دارای یک پیشرفت ثابت باشد.

اما وقتی این نویسه‌های نقطه‌گذاری در یک ردیف ظاهر می‌شوند، این فاصله‌های علامت‌گذاری داخلی بیش از حد می‌شود. در دو مثال زیر، نمونه دوم تایپوگرافی صحیح است. نیمه سمت راست دوره CJK باید حذف شود.

وقتی نویسه‌های نقطه‌گذاری در یک ردیف ظاهر می‌شوند، نیمه سمت راست نقطه CJK باید حذف شود.
وقتی نویسه‌های نقطه‌گذاری در یک ردیف ظاهر می‌شوند، نیمه سمت راست نقطه CJK باید حذف شود.

رفتار پیش فرض به طور کلی نتایج خوبی را ارائه می دهد، اما توسعه دهندگان می توانند از ویژگی text-spacing-trim برای انتخاب سبک های مختلف یا غیرفعال کردن آن در برخی موارد استفاده کنند.

حداقل اندازه فونت ثابت در بین زبان ها

قبل از Chrome 118، اندازه فونت‌های کوچک‌تر از 10 پیکسل یا بیشتر آن‌طور که مشخص شده بود ارائه نمی‌شد، اما اگر زبان عربی، فارسی، ژاپنی، کره‌ای، تایلندی، چینی ساده شده یا سنتی بود، به بالا گرد می‌شد. توسعه‌دهندگان به راه‌حل‌هایی برای ارائه متن کوچک نیاز داشتند، مثلاً با استفاده از ویژگی transform .

از Chrome 118، این محدودیت برای همه زبان‌ها برداشته می‌شود و باعث می‌شود این هفت زبان با بقیه مطابقت داشته باشند. این تغییر قابلیت همکاری با سایر مرورگرها را بهبود می بخشد.

از Chrome 118، این محدودیت که اندازه قلم‌های کوچک‌تر از 10 پیکسل یا بیشتر به‌طور مشخص ارائه نمی‌شوند، برای چینی‌های عربی، فارسی، ژاپنی، کره‌ای، تایلندی، ساده‌شده یا سنتی برداشته می‌شود.
از Chrome 118، این محدودیت که اندازه قلم‌های کوچک‌تر از 10 پیکسل یا بیشتر به‌طور مشخص ارائه نمی‌شوند، برای چینی‌های عربی، فارسی، ژاپنی، کره‌ای، تایلندی، ساده‌شده یا سنتی برداشته می‌شود.

مشارکت کنید و بازخورد را به اشتراک بگذارید

اگر درباره این ویژگی‌ها بازخوردی دارید، لطفاً یک مشکل را در crbug.com ثبت کنید.