UltKit

TTF یا OTF یا WOFF: کدام فرمت فونت برای نصب یا وب؟

TTF یا OTF را روی رایانهٔ خود نصب کنید و در وب‌سایت WOFF2 ارائه دهید. TrueType و OpenType فرمت‌های دسکتاپی هستند که همهٔ سیستم‌عامل‌ها می‌خوانند؛ WOFF و WOFF2 همان داده‌های فونت‌اند که برای دانلود فشرده شده‌اند، و مرورگرها WOFF2 را ترجیح می‌دهند، چون حدود 30% کم‌حجم‌تر است.

Jonas WeberJonas Weberسردبیر عملکرد وب
به‌روزرسانی 11 دقیقه مطالعه
قفسه‌ها و کشوهایی پر از حروف چوبی قدیمی چاپ سربی در اندازه‌ها و رنگ‌های گوناگون
Answer

از کدام فرمت فونت استفاده کنم: TTF، OTF، WOFF یا WOFF2؟

برای نصب روی کامپیوتر از TTF یا OTF استفاده کنید؛ هر دو روی ویندوز، macOS و لینوکس کار می‌کنند. برای وب‌سایت ابتدا WOFF2 را ارائه دهید و WOFF را فقط به‌عنوان جایگزین بگذارید. فایل‌های خام TTF یا OTF در صفحهٔ وب ۲ تا ۳ برابر سنگین‌تر از حد لازم‌اند.

TrueType، OpenType، WOFF و WOFF2 به زبان ساده

TrueType قدیمی‌ترین فرمت از این چهار فرمت است. اپل آن را سال 1991 همراه System 7 عرضه کرد و مایکروسافت سال بعد آن را برای Windows 3.1 پذیرفت. فونت TrueType هر حرف را با منحنی‌های درجه دو توصیف می‌کند؛ این منحنی‌ها برای هر قطعهٔ خمیده یک نقطهٔ کنترل دارند و روی سخت‌افزارهای اولیه ترسیمشان ارزان بود. این فرمت هینتینگ هم دارد: برنامه‌های کوچکی داخل فونت که ضخامت خطوط و منحنی‌ها را روی شبکهٔ پیکسل تنظیم می‌کنند تا متن روی صفحه‌های کم‌وضوح واضح بماند. پسوند .ttf هنوز نشانهٔ فونت‌هایی با همین خطوط درجه دو است.

OpenType که مایکروسافت و ادوبی در 1996 اعلام کردند، نوع تازه‌ای از خطوط نیست و یک پوشش (wrapper) است. می‌تواند خطوط TrueType یا خطوط PostScript ذخیره‌شده در جدول CFF را نگه دارد که از منحنی‌های درجه سه با دو نقطهٔ کنترل برای هر قطعه استفاده می‌کنند. در کنار این خطوط، جدول‌های چیدمان برای تایپوگرافی پیشرفته اضافه می‌شود: لیگاچرهای استاندارد و اختیاری، حروف کوچک بزرگ‌نما، ارقام قدیمی، مجموعه‌های سبکی، جایگزین‌های وابسته به بافت و کرنینگ. طبق قرارداد، فونت OpenType مبتنی بر CFF با پسوند .otf ذخیره می‌شود، اما OpenType با خطوط TrueType پسوند .ttf را نگه می‌دارد.

WOFF و WOFF2 پوشش‌هایی هستند که برای وب ساخته شده‌اند. WOFF در 2009 پیش‌نویس شد و در 2012 به توصیهٔ W3C تبدیل شد؛ هر جدول فونت را با zlib فشرده می‌کند. WOFF2 در 2018 توصیهٔ W3C شد، به Brotli روی آورد و داده‌های گلیف را ابتدا پیش‌پردازش می‌کند، و معمولاً حدود 30% کوچک‌تر از WOFF می‌شود. سه فرمت جانبی تصویر را کامل می‌کنند. EOT فرمت وب اختصاصی Internet Explorer بود، فونت‌های SVG راه‌حل موقت اولیه فقط برای Safari بودند، و فونت‌های متغیر که در 2016 با OpenType 1.8 اضافه شدند، طیفی از وزن‌ها یا عرض‌ها را در یک فایل جا می‌دهند.

  1. 1991

    TrueType

    اپل خطوط درجه دو و هینتینگ را با System 7 عرضه می‌کند؛ Windows 3.1 در 1992 دنبال می‌کند.

  2. 1996

    OpenType

    مایکروسافت و ادوبی یک قالب واحد برای خطوط TrueType یا CFF، به‌علاوهٔ ویژگی‌های چیدمان، اعلام می‌کنند.

  3. 2012

    WOFF 1.0

    در 2009 پیش‌نویس می‌شود و به توصیهٔ W3C تبدیل می‌شود: همان جدول‌ها، فشرده‌شده با zlib.

  4. 2016

    فونت‌های متغیر

    OpenType 1.8 اجازه می‌دهد یک فایل محورهای پیوستهٔ وزن، عرض یا شیب را نگه دارد.

  5. 2018

    WOFF2

    توصیهٔ W3C با استفاده از Brotli؛ معمولاً حدود 30% کوچک‌تر از WOFF.

کدام فرمت فونت را روی رایانه نصب کنیم

TTF یا OTF را نصب کنید و نگران انتخاب میان آن‌ها نباشید. ویندوز 10 و 11 هر دو را با کلیک راست و Install نصب می‌کنند، macOS هر دو را در Font Book باز می‌کند، و دسکتاپ‌های لینوکس پس از به‌روزرسانی حافظهٔ نهان فونت، آن‌ها را از ~/.local/share/fonts برمی‌دارند. Word، Photoshop، نسخهٔ دسکتاپ Figma، Affinity و LibreOffice هر دو را می‌خوانند. اگر طراح یک خانواده را در هر دو نوع برایتان فرستاد، معمولاً OTF نسخه‌ای است که طراح فونت اصل را در آن کشیده و TTF تبدیلی برای نرم‌افزارهای قدیمی‌تر است.

مواردی که تفاوت اهمیت پیدا می‌کند محدودند. برخی برنامه‌های دستگاه برش و گلدوزی، موتورهای بازی و کتابخانه‌های نمایش میکروکنترلر فقط خطوط TrueType را می‌فهمند، پس OTF مبتنی بر CFF آنجا خراب دیده می‌شود و باید تبدیل OTF به TTF انجام شود. در جهت دیگر، هیچ چیز روی دسکتاپ WOFF یا WOFF2 را مستقیم نصب نمی‌کند: این فایل‌ها برای مرورگرها بسته‌بندی شده‌اند. از هر خانواده فقط یک نسخه نصب کنید، زیرا TTF و OTF با نام داخلی یکسان منوی فونت را دچار اشتباه می‌کنند و ممکن است برنامه‌ها نسخهٔ نادرست را برگزینند.

TrueType Collection.ttc · مجموعهٔ فونت · .otc
یک فایل واحد که چند فونت را نگه می‌دارد، معمولاً سبک‌ها یا گونه‌های زبانی یک خانواده، و اجازه می‌دهد گلیف‌های یکسان را برای صرفه‌جویی در فضا به اشتراک بگذارند. ویندوز و macOS همهٔ فونت‌های داخل آن را یک‌جا نصب می‌کنند؛ خانواده‌های CJK سیستمی مانند Noto Sans CJK اغلب این‌گونه توزیع می‌شوند. مجموعه‌های مبتنی بر خطوط CFF گاهی از پسوند .otc استفاده می‌کنند.
ردیف‌هایی از حروف سربی فلزی که در خانه‌های کوچک کشوی چوبی حروف‌چینی چیده شده‌اند
عکس: Unsplash

کدام فرمت فونت را در وب‌سایت به کار ببریم

همهٔ نسخه‌های فعلی Chrome، Edge، Firefox و Safari فرمت WOFF2 را می‌خوانند، پس باید اولین و اغلب تنها منبع در قاعدهٔ @font-face شما باشد. فقط اگر آمار بازدیدتان هنوز مرورگرهای پیش از حدود 2016 را نشان می‌دهد، مثل WebViewهای قدیمی Android یا مرورگرهای تلویزیون، خطی برای WOFF بعد از آن اضافه کنید. مرورگر فهرست src را به‌ترتیب می‌گردد و اولین فرمت پشتیبانی‌شده را دانلود می‌کند؛ یعنی جایگزین هیچ هزینه‌ای برای بازدیدکنندگان مدرن ندارد. اگر فایل TrueType دسکتاپ را دارید، TTF به WOFF همان جایگزین را یک‌جا می‌سازد.

از ارائهٔ TTF یا OTF خام در سایت خودداری کنید، مگر اینکه پلتفرمی شما را مجبور کند، مثل برخی سازنده‌های ایمیل و سیستم‌های مدیریت محتوای قدیمی. مرورگرها آن‌ها را درست نمایش می‌دهند، اما فایل‌ها بدون فشرده‌سازی منتقل می‌شوند مگر سرور شما فونت‌ها را gzip کند، و به هر کسی نسخهٔ آمادهٔ نصب دسکتاپ را می‌دهند. خط font-display: swap در پایین به مرورگر می‌گوید متن را فوراً با فونت جایگزین نشان دهد و پس از رسیدن فونت شما آن را عوض کند، به‌جای اینکه تا 3 ثانیه متن را پنهان نگه دارد.

تا جای ممکن فایل‌ها را روی دامنهٔ خودتان میزبانی کنید. Chrome، Safari و Firefox اکنون حافظهٔ نهان را بر اساس سایت جدا می‌کنند، پس فونتی که از یک CDN مشترک گرفته شده دیگر میان وب‌سایت‌ها دوباره استفاده نمی‌شود، و میزبانی شخصی یک جست‌وجوی DNS و یک اتصال را صرفه‌جویی می‌کند. <link rel="preload"> را فقط برای یک یا دو وزنی که بالای صفحه استفاده می‌شوند اضافه کنید؛ پیش‌بارگذاری همهٔ سبک‌ها با تصاویر شما بر سر پهنای باند رقابت می‌کند.

@font-face با WOFF2 در ابتدا، جایگزین WOFF و swap
@font-face {
  font-family: "Source Serif";
  src: url("/fonts/source-serif-regular.woff2") format("woff2"),
       url("/fonts/source-serif-regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+2013-2014, U+2018-201E, U+20AC;
}

حجم معمول فایل‌های فونت و اهمیت زیرمجموعه‌سازی

یک وزن متنی لاتین که به‌صورت WOFF2 ذخیره شود معمولاً 20–60 KB حجم دارد. همان فونت به‌صورت TTF فشرده‌نشده اغلب دو تا سه برابر بزرگ‌تر است، و خانواده‌ای که یونانی، سیریلیک و ویتنامی را هم پوشش دهد می‌تواند برای هر سبک از 200 KB بگذرد. فونت‌های چینی، ژاپنی و کره‌ای مقیاس دیگری دارند: یک وزن کامل CJK ده‌ها هزار گلیف دارد و حتی پس از فشرده‌سازی WOFF2 معمولاً به چند مگابایت می‌رسد، که برای بارگذاری پیش از نمایش متن صفحه بسیار زیاد است.

زیرمجموعه‌سازی (subsetting) نویسه‌هایی را که صفحه هرگز استفاده نمی‌کند حذف می‌کند، و unicode-range به مرورگر می‌گوید هر فایل کدام نویسه‌ها را پوشش می‌دهد تا فقط وقتی صفحه واقعاً آن‌ها را داشته باشد فایل را دانلود کند. Google Fonts دقیقاً همین را برای CJK به کار می‌برد و هر خانواده را به برش‌های کوچک بسیاری تقسیم می‌کند که در صورت نیاز بارگذاری می‌شوند. برای فونت‌های خودتان، گزینهٔ نویسه‌های حفظ‌شونده در مبدل فونت فایل را پیش از رسیدن به سرور شما به Latin + accents یا فقط نویسه‌هایی که تایپ می‌کنم کاهش می‌دهد؛ برای هر چیزی که روی کامپیوتر نصب می‌کنید همه نویسه‌ها را نگه دارید.

وزن متنی لاتین معمولی به‌صورت WOFF2
20–60 KB
کاهش حجم معمول WOFF2 نسبت به WOFF
≈ 30%
وزن کامل CJK معمولی، حتی به‌صورت WOFF2
چند MB

تبدیل فرمت فونت و آنچه از دست می‌رود

تبدیل TTF به OTF و برعکس برای فونت‌های از نوع TrueType فقط تغییر قالب است: جدول خطوط، متریک‌ها و ویژگی‌های چیدمان دست‌نخورده منتقل می‌شوند. مورد جالب، تبدیل OTF مبتنی بر CFF به TTF است. منحنی‌های درجه سه را نمی‌توان در فرمت خطوط درجه دو کپی کرد، پس هر منحنی با یک یا چند قطعهٔ درجه دو و با تلورانسی بسیار کمتر از یک پیکسل دوباره کشیده می‌شود. هینت‌های PostScript هم قابل ترجمه نیستند، به همین دلیل ابزار OTF به TTF گزینهٔ هینتینگ را به‌صورت حفظ، حذف یا هینت خودکار عرضه می‌کند.

بازگشت از وب به دسکتاپ رایج‌ترین تبدیل است. یک قالب یا بستهٔ طراحی دانلود می‌کنید، فقط فایل‌های .woff یا .woff2 پیدا می‌کنید و فونت را در Word یا Figma لازم دارید. WOFF به TTF فشرده‌سازی را برمی‌دارد و جدول‌های اصلی را دوباره می‌نویسد، پس گلیف‌ها، کرنینگ و ویژگی‌ها همان‌طور که وارد شدند خارج می‌شوند. آنچه بازیابی نمی‌شود هر چیزی است که نسخهٔ وب پیش‌تر حذف کرده، مانند نویسه‌های حذف‌شده با زیرمجموعه‌سازی یا هینت‌هایی که برای صرفه‌جویی در بایت برداشته شده‌اند.

بیشتر مشکلات تبدیل به سه چیز برمی‌گردد: هینتینگ، ویژگی‌های چیدمان و محورهای متغیر. فهرست زیر نشانه‌هایی را که احتمالاً پس از تبدیل می‌بینید و علت معمول هر کدام را پوشش می‌دهد.

  • متن کوچک پس از تبدیل روی ویندوز تار یا ناهموار دیده می‌شود

    هینت‌های اصلی حذف شده یا منتقل نشده‌اند. دوباره تبدیل کنید و هینتینگ را روی هینت خودکار بگذارید؛ روی صفحه‌های Retina و گوشی تفاوت به‌ندرت دیده می‌شود.

  • لیگاچرها، حروف کوچک بزرگ‌نما یا مجموعه‌های سبکی از کار افتاده‌اند

    شاید برنامه ویژگی‌های OpenType را نشان نمی‌دهد، یا مرحلهٔ زیرمجموعه‌سازی گلیف‌های جایگزینی را که این ویژگی‌ها به آن‌ها اشاره می‌کنند حذف کرده است. فایل اصلی را با همه نویسه‌ها تبدیل کنید و ببینید برنامه‌تان پنل تایپوگرافی یا OpenType دارد یا نه.

  • فونت متغیر اکنون فقط یک وزن نشان می‌دهد

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

  • فونت تبدیل‌شده دو بار در منوی فونت دیده می‌شود

    هر دو نسخه نام خانوادهٔ داخلی یکسان دارند. فایل قدیمی را حذف کنید، یا پیش از تبدیل در تنظیمات پیشرفته یک نام خانواده جدید تعیین کنید.

بررسی فونت پیش از استفاده یا تبدیل

فایل فونت یک پایگاه دادهٔ کوچک است و سه بخش آن به بیشتر پرسش‌ها پاسخ می‌دهد. جدول name نام خانواده، نام سبک، نسخه، خط حق نشر و اغلب نشانی مجوز را دارد؛ Font Book در macOS آن را در نمای اطلاعات نشان می‌دهد و پیش‌نمایش فونت ویندوز چند خط اول را نمایش می‌دهد. پوشش گلیف می‌گوید فونت چه زبان‌هایی را می‌تواند حروف‌چینی کند: فونت فقط لاتین برای نویسه‌های لهستانی، ترکی یا ویتنامی که ندارد بی‌صدا به فونت دیگری برمی‌گردد. در فونت متغیر، جدول fvar محورهایش را فهرست می‌کند، مثل وزن از 100 تا 900 یا عرض از 75 تا 125.

پیش از اینکه چیزی آنلاین شود، مجوز ارزش یک نگاه را دارد. ریخته‌گری‌های تجاری اغلب مجوزهای جداگانهٔ دسکتاپ، وب و اپلیکیشن می‌فروشند، و مجوز دسکتاپ معمولاً نصب روی تعداد معینی کامپیوتر را پوشش می‌دهد، نه ارائهٔ فایل به بازدیدکنندگان وب‌سایت یا گنجاندن آن در اپ موبایل. تبدیل فونت فرمت فایل را عوض می‌کند، نه مجوز را؛ پس WOFF2 ساخته‌شده از TTF دسکتاپ همان شرایط TTF را دارد. فونت‌های تحت SIL Open Font License، که بیشتر Google Fonts را شامل می‌شود، می‌توانند تبدیل، زیرمجموعه‌سازی و میزبانی شخصی شوند.

  • نام خانواده و سبک در جدول name درست خوانده می‌شود
  • شمارهٔ نسخه با انتشاری که قصد استفاده‌اش را دارید مطابقت دارد
  • هر زبانی که متن شما استفاده می‌کند نویسه‌های اعرابی و خاص خود را دارد
  • فونت متغیر هنوز محورهای وزن یا عرض را فهرست می‌کند
  • مجوز آن کاربرد را پوشش می‌دهد: دسکتاپ، وب‌سایت، اپ یا جاسازی در اسناد

جدول تصمیم‌گیری: فرمت فونت مناسب برای هر کار

بیشتر پرسش‌های فونت به این برمی‌گردد که فایل کجا قرار می‌گیرد. اگر روی کامپیوتر نصب می‌شود یا در یک اپ بسته‌بندی می‌شود، TrueType یا OpenType را بردارید؛ اگر مرورگر آن را دانلود می‌کند، از پوشش‌های فشردهٔ وب استفاده کنید. جدول کارهای رایج را به فرمت مناسب و تبدیلی که شما را به آن می‌رساند نگاشت می‌کند، پس می‌توانید تاریخچه را رد کنید و سراغ فایل موردنیازتان بروید.

دو کار میان این دسته‌ها قرار می‌گیرند. EPUB 3 فرمت‌های TTF، OTF و WOFF را می‌پذیرد، پس کتاب‌های الکترونیکی می‌توانند از هر دو خانوادهٔ فرمت‌ها استفاده کنند، و فایل‌های فونت SVG هم‌تبار گرافیک‌های برداری هستند اما امروز بیشتر برای برخی نرم‌افزارهای پلاتر و حکاکی اهمیت دارند، نه مرورگرها.

انتخاب فرمت فونت بر اساس کار
کارفرمت مناسباگر فقط این را داریدتبدیل
نصب روی ویندوز، macOS یا لینوکسTTF یا OTFWOFF یا WOFF2WOFF ← TTF
نرم‌افزاری که OTF شما را نمی‌پذیردTTFOTF مبتنی بر CFFOTF ← TTF
فونت وب‌سایت با میزبانی شخصیWOFF2TTF یا OTFTTF ← WOFF2
جایگزین برای مرورگرهای بسیار قدیمیWOFFTTFTTF ← WOFF
سایت چینی، ژاپنی یا کره‌ایبرش‌های WOFF2 زیرمجموعه‌شدهTTF یا OTF کاملزیرمجموعه‌سازی، سپس WOFF2
چند وزن در یک فایلTTF یا WOFF2 متغیرTTF متغیرحفظ محورها هنگام تبدیل
کتاب الکترونیکی (EPUB 3)TTF، OTF یا WOFFWOFF2WOFF2 ← TTF

نکات کلیدی

  • TTF یا OTF را روی کامپیوتر نصب کنید؛ هر دو در ویندوز، macOS و لینوکس کار می‌کنند.
  • در وب‌سایت ابتدا WOFF2 را ارائه دهید، WOFF را فقط برای مرورگرهای خیلی قدیمی اضافه کنید و font-display: swap را تنظیم کنید.
  • WOFF و WOFF2 پوشش‌های فشرده‌اند؛ بنابراین تبدیل به آن‌ها حجم دانلود را تغییر می‌دهد، نه شکل حروف را.
  • فونت را بر اساس خط و unicode-range زیرمجموعه‌سازی کنید؛ این کار برای فونت‌های CJK که چند مگابایت حجم دارند از همه مهم‌تر است.
  • تبدیل فقط فرمت فایل را تغییر می‌دهد، نه مجوز آن را، و اگر دقت نکنید ممکن است hinting یا محورهای متغیر از بین بروند.
اشتراک‌گذاریXFacebookWhatsAppTelegram

پرسش‌های متداول

آیا کیفیت OTF از TTF بهتر است؟

در اندازه‌های معمولی تفاوتی که دیده شود وجود ندارد. منحنی‌های درجه سه و درجه دو می‌توانند شکل یکسانی از حروف بسازند و هر دو فرمت قابلیت‌های OpenType یکسانی دارند. فایل‌های OTF اغلب طرح اصلی طراح هستند و تنها دلیل عملی ترجیح دادن آن‌ها همین است.

چرا فونت دانلودشده به‌صورت فایل ZIP حاوی TTF، WOFF و WOFF2 است؟

ارائه‌دهنده برای هر کار یک فایل جداگانه به شما می‌دهد. TTF را روی کامپیوتر خود نصب کنید و WOFF2 را، به‌همراه WOFF اگر جایگزین می‌خواهید، در وب‌سایتتان بارگذاری کنید.

آیا WOFF2 در ایمیل کار می‌کند؟

فقط تا حدی. Apple Mail و iOS Mail فونت‌های وب را از استایل‌شیت لینک‌شده بارگذاری می‌کنند، اما Gmail و Outlook در ویندوز فونت‌های سفارشی را نادیده می‌گیرند و فونت جایگزین را نشان می‌دهند؛ پس همیشه فهرست font-family را با یک فونت امن سیستمی تمام کنید.

آیا می‌توان از فایل TTC در وب‌سایت استفاده کرد؟

مستقیم نه. مرورگرها برای هر فایل یک فونت انتظار دارند؛ پس فونت‌ها را یکی‌یکی از مجموعه استخراج کنید و هر کدام را به WOFF2 تبدیل کنید.

آیا فونت‌های متغیر جای فایل‌های جداگانهٔ هر وزن را می‌گیرند؟

اغلب بله. یک WOFF2 متغیر که وزن‌های 100 تا 900 را پوشش می‌دهد معمولاً از مجموع چهار وزن ثابت یا بیشتر کوچک‌تر است و همهٔ مرورگرهای امروزی از آن پشتیبانی می‌کنند. اگر فقط یک یا دو وزن استفاده می‌کنید، فایل‌های ثابت ممکن است سبک‌تر باشند.

آیا هنوز ساختن فونت‌های EOT و SVG ارزشی دارد؟

به‌ندرت. EOT فقط برای Internet Explorer 8 و قدیمی‌تر مهم است و فونت‌های SVG در Chrome و Firefox امروزی نادیده گرفته می‌شوند؛ پس ساختنشان فقط برای سیستم‌های قدیمی یا نرم‌افزارهایی که آن‌ها را می‌خوانند ارزش دارد.

ادامه مطالعه