mehdisadeghi / Noqte

A fun, minimalistic Persian pixel font.
SIL Open Font License 1.1
21 stars 3 forks source link

Opentype Features #1

Closed MDarvishi5124 closed 7 months ago

MDarvishi5124 commented 8 months ago

سلام مهدی جان متوجه شدم هنوز برای این فونت داری کار میکنی، پس گفتم که یه ایراد قدیمی از فونت نقطه رو برات بفرستم. یکی از مشکلات فونت نقطه نبود اسکریپت هست - به اصطلاح Opentype Features - 4564654 فیچر های medi & fina & init برای فونت های فارسی اجباریه تا به درستی توی اکثر محیط ها کار کنه. توی عکسی که فرستادم فونت استعداد رو می‌‌بینی که با داشتن این قابلیت ها، توی محیط های مختلف کار میکنه، ولی فونت نقطه اینطور نیست(مثال خیلی ساده‌ش نرم افزار Word، واقعیتش اینه که خیلی از نرم افزار ها وابسته به وجود این فیچر ها هستن).

حالا این فیچر ها چی هستن؟ این فیچر ها مشخص میکنن که حروف ابتدا، انتها و وسط مرتبط با چه حرفی هستن. مثلاً « ب‍ » مرتبط با « ب » هست و ما این موضوع رو توی اسکریپت فونت مشخص میکنیم تا زمانی که فونت میخواد توی برنامه‌ای اجرا بشه، بتونه درست فونت رو اجرا کنه.

البته فیچر های مختلف دیگه ای رو هم داریم، مثل rlig که برای ساخت ترکیبات اجباری استفاده میشه «لا» و...

حقیقتا تابحال با فونت فورج کار نکردم که بدونم چطوری باید این ویژگی رو پیاده کرد، ولی اگه کاری ازم بر بیاد حتما انجام میدم.

mehdisadeghi commented 8 months ago
سلام محمد جان، خیلی ممنون از گزارش ایراد مشروحت. من اطلاعی از این موضوع نداشتم، چون هم Harfbuzz و هم LibreOffice هر دو بدون مشکل فونت رو نمایش می‌دادن. البته در ویندوز امتحان نکرده بودم که حتما اینکار رو خواهم کرد. در مورد حالات ابتدایی و میانی و انتهایی و ایزوله، همگی در فونت تعریف شدند چون کد خودشون رو دارن. باید در مورد Open Type Features مطالعه کنم تا ببینم چطور می‌شه در فونت‌فورج پیاده‌سازی بکنمش. چیزی هم که بنام rlig اشاره کردی من به اسم ligature می‌شناسم که هنوز به فونت اضافه نکردم، چون بلد نبودم :) البته در تلاشم یاد بگیرم. فعلا در آخرین نسخه anchor ها رو به گلیف‌های لاتین اضافه کردم که قصد دارم به عربی هم اضافه کنم. در مورد کار با فونت‌فورج هم من خودم مبتدی هستم اما دستورات ساخت فونت رو در Makefile برنامه اضافه کردم که اگر در فونت‌فورج چیزی رو تغییر بدی فقط کافیه دوباره make رو اجرا کنی تا فونت‌ها دوباره ساخته بشن. همینکار رو هم برای ساخت عکس نمونه انجام دادم تا نیازی به تایپ دستورات نباشه. البته فقط روی آرچ لینوکس تست کردم. فونت یونیکسلت رو هم دیدم. بسیار زیباست.
MDarvishi5124 commented 8 months ago

البته فقط کد داشتن کافی نیست، نمیدونم چرا این موارد تو همۀ برنامه ها تعریف نمیشه تا نیاز به تنظیمش نباشه(شاید آزادی بیشتر) فونت های مختلفی مثل استعداد، اوپن‌تایپ فیچر ها رو دارن، بخاطر همین میتونی از اون ها برای نوشتن کد الگو بگیری

و ممنونم بابت محبتت، فونت تو خیلی بهتر از فونت تیکه پارۀ منه :)

mehdisadeghi commented 7 months ago
@MDarvishi5124 مشکل هنوز رفع نشده و من دارم روش کار می‌کنم. اگر مشکلی نیست این تیکت رو باز نگهداریم تا رفع کامل ایراد.
mehdisadeghi commented 7 months ago

@MDarvishi5124

من چهار جدول GSUB برای init و medi و fina و isol به فونت اضافه کردم. نسخه‌ای از فونت رو روی سایتم آپلود کردم اگر بتونی تستش بکنی خیلی عالی می‌شه. [noqte@latest](https://mehdix.org/~mx/noqte.ttf)
MDarvishi5124 commented 7 months ago

درود! مشکلش حل شده من تمام حروف زبان فارسی رو تست کردم. به درستی تنظیم شده بود

mehdisadeghi commented 7 months ago
ممنون بابت تست سریع! من یک ریلیز جدید منتشر کردم با آخرین تغییرات. اگر ایراد دیگری هم بود که هست ممنون می‌شم ثب بکنی.