الأسئلة المتكررة
مجاناً ومصدر مفتوح
ما هو نموذج الترخيص؟?
Aspose.Font FOSS for Python is released under the ترخيص MIT.يمكنك استخدام، نسخة،, تعديل، دمج، نشر، توزيع أو ترخيص فرعي، أو بيع نسخ من البرنامج دون المطلب الوحيد هو أن يكون إشعار حقوق الطبع والنشر ونص الترخيص واضحين. يتم تضمينها في جميع النسخ أو أجزاء كبيرة من البرنامج.
هل يمكنني استخدامه في المنتجات التجارية؟?
نعم، ترخيص MIT يسمح باستخدامها في المنتجات المصدر المغلق والتجارية. لا توجد أي التزامات بالملكيات أو الإسناد ما عدا الاحتفاظ برأس حقوق الطبع والنشر في نسخك من المكتبة نفسها.
هل هناك نسخة مدفوعة مع المزيد من الميزات؟?
Aspose.Font FOSS is the open-source edition. The FOSS edition covers TTF, OTF, CFF, Type 1, WOFF, WOFF2, and EOT — which covers the majority of real-world font work.
التثبيت و المتطلبات
كيف أثبت Aspose.Font FOSS لـ Python؟?
تثبيت الحزمة من PyPI (تطلب Python 3.10+):
pip install "aspose-font>=1.0.0"لا حاجة إلى اعتمادات طبيعية على مستوى النظام.
ما هي الإصدارات التي تدعمها Python؟?
بايثون 3.10 وما بعد. المكتبة تستخدم ميزات مكتبة قياسية فقط، لذلك تعمل على تنفيذات CPython و PyPy التي تدعم Python 3.10.+ .
هل هناك أي اعتمادات أصلية أو منصة؟?
لا. Aspose.Font FOSS لـ Python ليس لديه إضافات C ، ولا أنواع النصوص ، و لا API للمنصة. يعمل بشكل متطابق على Windows و macOS و Linux .
شكل الدعم
ما هي شكل الخطوط التي يمكن قراءتها؟?
FontLoader.open() يمكن تحميل TTF، OTF ، CFF (المتحده) ، النوع 1 ، WOFF ،WOFF2 و EOT.
from aspose_font.loader import FontLoader
font = FontLoader.open("MyFont.ttf")ما هي الصيغ التي يمكن كتابتها؟?
FontConverter.convert() يدعم التحويل إلى TTF، CFF، WOFF وWOFF2. يمكن حفظ النمط إلى بايت أو تيار ملف.
هل تم تدمير عملية فك الضغط من الـ (WOFF2) ؟?
نعم. يتم تنفيذ ضغط و فك الضغط WOFF2 Brotli بالكامل داخل المكتبة. لا حاجة إلى حزمة brotli خارجية.
استخدام النار
كيف أُحمل الخط وأفحص بياناته؟?
استخدام FontLoader.open() والتي تعيد a Font مثال. لخطوط TTF/OTF التي تم إلقاءها على TtfFont للوصول إلى خصائص خاصة بتقنية التداول:
from aspose_font.loader import FontLoader
from aspose_font.ttf.font import TtfFont
ttf_font: TtfFont = FontLoader.open("Roboto-Regular.ttf")
print(ttf_font.font_name)
print(ttf_font.num_glyphs)كيف أُحول TTF إلى WOFF2؟?
احمل الخط مع FontLoader.open(),ثم نقله إلى FontConverter.convert() تحديد FontType.WOFF2 كالهدف. الكائن الذي يعود هو Woff2Font مثال جاهز للتسلسله:
from aspose_font.loader import FontLoader
from aspose_font.converter import FontConverter
from aspose_font import FontType
font = FontLoader.open("Roboto-Regular.ttf")
woff2 = FontConverter.convert(font, FontType.WOFF2)كيف أضع شفرة لتحويل المعلومات عبر الإنترنت؟?
استخدام FontSubsetter.subset_by_text() لإنتاج خط جديد يحتوي فقط على الخطوط اللازمة لعرض سلسلة النص المقدمة، مما يقلل من حجم الملفات لتضمين الصفحة:
from aspose_font.loader import FontLoader
from aspose_font.subsetter import FontSubsetter
font = FontLoader.open("Roboto-Regular.ttf")
subset = FontSubsetter.subset_by_text(font, "Hello World")كيف يمكنني الوصول إلى كل علامة؟?
استخدام Font.glyph_accessor الذي ينفذ GlyphAccessor.اتصل بي get_glyph_by_unicode() مع نقطة رمز يونيكود لاسترداد الكائن النمطية المقابلة وتفتيش مقاييسها أو ملامحها:
from aspose_font.loader import FontLoader
font = FontLoader.open("Roboto-Regular.ttf")
glyph = font.glyph_accessor.get_glyph_by_unicode(0x0041) # 'A'
print(glyph.glyph_id)الحد المعروف
هل تم تنفيذ Font.to_bytes ((() ؟?
الفئة الأساسية المجردة Font.to_bytes() يرفع NotImplementedError إذا اتصلت مباشرة. ومع ذلك، جميع فئات الخط الملموسة TtfFont, CffFont, WoffFont, Woff2Font, EotFont,، و Type1Font تنفيذها to_bytes() كاملة. تحميل الخط مع FontLoader.open() و اتصل به to_bytes() على المثال الملموس الذي تم إرجاعه. FontConverter.convert() يمكن أيضاً إنتاج خط جديد في أي تنسيق مستهدف مدعوم.
هل تم تعبئة جميع أنواع الجداول في TtfTableSet؟?
الجداول المشتركة فقط (head, hhea, maxp, os2, name, post, cmap, loca, hmtx, kern) هي: عرضت كخصائص مسمّية على TtfTableSet.الجداول الأخرى يمكن قراءتها باستخدام البايتات الخام . عبر TtfFont.get_table_bytes(tag).
هل تدعم المكتبة مثالية الخط المتغير؟?
نعم، أنا كذلك. TtfFont.instantiate() ينتج حركة ثابتة TtfFont في إحداثيات المحور المحددة. استخدام TtfFont.is_variable و TtfFont.axes للكشف عن محور التغير أولاً.