rastikerdar / vazirmatn

Vazirmatn is a Persian/Arabic font. وزیرمتن یک فونت فارسی/عربی است
https://rastikerdar.github.io/vazirmatn/
SIL Open Font License 1.1
2.48k stars 176 forks source link

عدم نمایش بعضی از نویسه‌ها در خروجی پی‌دی‌اف #269

Closed salmanmp closed 2 years ago

salmanmp commented 2 years ago

سلام من برای استفاده از این فونت، نیاز دارم که با ابزار ttf2ufm به فرمت دیگری تبدیلش کنم. در زمان تبدیل، هشدارهایی به این شرح نمایش داده می‌شود:

Warning: glyph uni06DE needs hint stack depth 129
  (limit 128): removed the substituted hints from it
Warning: glyph uniFFFC needs hint stack depth 303
  (limit 128): removed the substituted hints from it
Warning: glyph won needs hint stack depth 261
  (limit 128): removed the substituted hints from it

که البته این هشدارها در نسخه‌های مختلف فونت کمی متفاوتند.

پس از تبدیل، از فونت در ایجاد خروجی پی‌دی‌اف استفاده می‌شود که متاسفانه بعضی از نویسه‌ها در خروجی وجود ندارند. این مورد برای نسخه‌های مختلف متفاوت است. نکته‌ی آزاردهنده این بود که در نسخه‌ی آخر ۳۲.۱۰۲ تقریبا هیچ نویسه‌ای وجود نداشت در حالی‌که در نسخه وزیر ۳۰.۱.۰ غیر از «ـو» (واو چسبیده) باقی نویسه‌ها به درستی نمایش داده شده‌اند. من سه نسخه را برای نمونه قرار می‌دهم تا ببینید آیا امکان برطرف کردن مشکل وجود دارد یا خیر. پیشاپیش متشکر

نمونه اول. نسخه Vazir-30.1.0 image

نمونه دوم. نسخه Vazirmatn-32.101

image

نمونه سوم. نسخه Vazirmatn-32.102 image

rastikerdar commented 2 years ago

سلام به نظر میاد این مشکل از نبود هینتینگ باشه. چون در نسخه ۳۲.۱۰۲ هینتینگ به طور کلی از فونت حذف شد. آیا این مشکل رو با دیگر فونت‌های فارسی که هینتینگ ندارند هم دارید؟ مثل میترا و نازنین و ... یا فونت‌های تجاری. اگر با فونت‌های فارسی دیگر هم این مشکل رو دارید پس اشکال از خود ابزار ttf2ufm هست که نمیتونه بدون هینتینگ کار کنه در غیر اینصورت ایراد از خود وزیرمتن هست.

salmanmp commented 2 years ago

تقریبا فونتی پیدا نکردم که به کاملی صمیم و وزیر (نسخه‌های قبل) باشه. با توجه به این‌که ttf2ufm ابزار قدیمی‌ای هست، امکان اضافه کردن هینتینگ در یک برنچ مجزا (یا حتی دایرکتوری مجزا) برای مصارف توسعه نرم‌افزار وجود داره؟ سوال دیگه این‌که آیا برای شما امکان ایجاد فایل ufm (Universal printer driver Font Metrics) وجود داره؟

rastikerdar commented 2 years ago

به این صفحه بروید و این برنامه رو دانلود کنید: https://freetype.org/ttfautohint/#download بهش هر فونت فارسی که می‌خواهید استفاده کنید رو به عنوان ورودی بدهید و با همان فرمت به صورت هینتینگ دار خروجی بگیرید. اینطوری مشکلتون حل میشه.

salmanmp commented 2 years ago

متشکر از پیش‌نهادت اون برنامه خوب کار نکرد. اما در عوض FontForge همین امکان AutoHint رو داره و اوضاع خیلی باهاش به‌تره. فقط در حروف فا و قاف و نیم‌فاصله الان مشکل داره. باز هم ممنون