Panosifier هو تطبيق سطر أوامر Python 3.6+ الذي يقوم بتحرير بيانات Panose في الخطوط. تقوم الأداة بتحرير حقول Panose Opentype Opentype OS/2.
في كثير من الحالات ، يمكنك تحديد هذه القيم في ملفات مصدر التصميم الخاصة بك والاعتماد على مترجم الخط لكتابة هذه القيم في مثيلات الخط. ومع ذلك ، هناك مواقف لا يتم فيها تحديد هذا السلوك جيدًا ويختلف عبر مجمعي الخطوط.
مثال على ذلك هو النهج المتمثل في كتابة بيانات Panose في ملفات تنسيق الخط المتغير. في هذه الحالة ، تكون مواصفات OpenType غامضة ، والبيئات التي تكون فيها هذه البيانات ضرورية غير محددة جيدًا ، ويتعامل المجمعون مع بيانات Panose المحددة بشكل مختلف.
تتيح لك هذه الأداة تعديل قرارات وقت البناء في هذه الحالات.
pip install panosifier--panose -أو بشكل فردي مع خيارات حقل Opentype Panose المتوفرة العشرة (انظر panosifier --help للحصول على قائمة بالخيارات المتاحة)راجع الوثائق أدناه للحصول على تفاصيل إضافية.
يتطلب هذا المشروع مترجم بيثون 3.6+.
نوصي بالتثبيت في بيئة افتراضية Python3.
استخدم أي من أساليب التثبيت التالية:
$ pip3 install panosifier
$ git clone https://github.com/source-foundry/panosifier.git
$ cd panosifier
$ pip3 install -r requirements.txt .
يقوم النهج التالي بتثبيت المشروع وتبعيات المطورين الاختيارية المرتبطة بها بحيث تتوفر تغييرات المصدر دون الحاجة إلى إعادة التثبيت.
$ git clone https://github.com/source-foundry/panosifier.git
$ cd panosifier
$ pip3 install --ignore-installed -r requirements.txt -e ".[dev]"
يدعم Panosifier نهجين سطر الأوامر لتحرير بيانات Panose في مسارات خط أو أكثر من سطر الأوامر:
--panoseيمكنك تحديد جميع حقول Panose في وقت واحد مع قائمة مرتبة ، مفصلية من جميع القيم البانوسية العشرة. يجب أن تكون هذه قيم عدد صحيح.
ترتيب الميدان هو:
تمثل الصورة التالية هذا الترتيب في تعبير تعريف خيار --panose . لاحظ أن القيم الموجودة في هذا المثال لا تهدف إلى أن تكون صالحة لخط ، بل توضح كيفية قيام التعريف بترتيب خرائط لحقول التعريف.

هناك عشرة تعريفات متوفرة للبانوز. كل حقل panose له خيار مماثل في أداة panosifier. تتيح لك هذه الخيارات تحديد كل حقل بشكل فردي وجعل تعريفات Panose صريحة في سير عمل Build. تحديد هذه الخيارات مع قيم عدد صحيح.
يعدل المثال أدناه كتابة بيانات Panose في قسم القائمة المخصصة أعلاه مع قيم FamilyType ونسبة النسبة من 2 و 9 ، على التوالي:

استخدم panosifier --help لعرض جميع الخيارات المتاحة.
ملاحظة : لا تقوم هذه الأداة بفحوصات التعقل على تعريفاتك ويمكن استخدامها لكتابة تعريفات غير صالحة في الخطوط. تفترض الأداة أنك تفهم كيفية تعيين هذه القيم البانووز. يرجى الرجوع إلى وثائق Panose للحصول على خلفية مفصلة.
تقارير Panosifier تعريفات بيانات Panose في دفق الإخراج القياسي في نهاية التنفيذ.
المساهمات ترحب بحرارة. يمكن تثبيت بيئة التبعية للتطوير في وضع قابل للتحرير مع وثائق تثبيت المطور أعلاه.
يرجى استخدام نهج طلب سحب GitHub القياسي لاقتراح تغييرات المصدر.
نحن نبرد ملفات مصدر Python مع flake8 . راجع هدف test-lint للحصول على التفاصيل.
يتم إجراء اختبار التكامل المستمر على خدمة إجراءات GitHub باستخدام أدوات pytest . توجد وحدات الاختبار في دليل tests للمستودع.
قم بإجراء اختبار إصدار مترجم Python المحلي مع الأمر التالي الذي تم تنفيذه من جذر المستودع:
$ tox -e [PYTHON INTERPRETER VERSION]
يرجى الاطلاع على وثائق tox للحصول على تفاصيل إضافية.
نقوم بإجراء اختبار تغطية اختبار الوحدة باستخدام أداة coverage . راجع هدف Makefile test-coverage للحصول على التفاصيل.
تم تصميم Panosifier مع مكتبة Fonttools المجانية الرائعة.
ترخيص Apache v2.0