فتوف میز بازرسی
فتوف میز بازرسی
این راهنمای نشان می دهد که چگونه برای خواندن ویژگی های جدول نامیده شده، به دست آوردن داده های دایره دوگانه خام و نوشتن بایت های تغییر یافته از جدول به یک فونت TrueType.
فونت های TrueType و OpenTYpe از جدول های باینری تشکیل شده اند که هر کدام با یک برچسب 4 بت مشخص می شوند. TtfTableSet در این مقاله به ویژگی های Python برای جدول های رایج اشاره می کنیم و… TtfFont ارائه می دهد بایت خام برای دسترسی به تمام جدول ها.
خواندن نام های جدول
TtfTableSet نمایش سر، hhea، maxp، os2، نام، پست، cmap، loca، Hmtx و جدول هسته ای.
from aspose_font.loader import FontLoader
from aspose_font.ttf.font import TtfFont
ttf_font: TtfFont = FontLoader.open("Roboto-Regular.ttf")
tables = ttf_font.ttf_tables
print("head table:", tables.head is not None)
print("kern table:", tables.kern is not None)خواندن برچسب های ارشیو
TtfFont.get_table_bytes(tag) بازگرداندن محتوای دوگانه کامل هر جدول شناسایی شده توسط برچسب چهار کاراکتر آن، اجازه می دهد تا سطح پایین بررسی و یا پارس سفارشی.
ttf_font: TtfFont = FontLoader.open(“Roboto-Regular.ttf”) raw_name = ttf_font.get_table_bytes(“name”) print(f"name table: {len(raw_name)} bytes")
---
### نوشتن بایت های جدول اصلاح شده
`TtfFont.set_table_bytes(tag, data)` جایگزین محتوای باینری یک جدول، اجازه می دهد تا تغییرات سفارشی جدول مانند تنظیم قوانین GSUB و یا به روز رسانی سوابق نام.
ttf_font: TtfFont = FontLoader.open("Roboto-Regular.ttf")
modified_bytes = b"..." # your modified table
ttf_font.set_table_bytes("GSUB", modified_bytes)راهنمایی ها و بهترین شیوه ها
- Check
tables.kern is not Noneقبل از دسترسی به اطلاعات TtfTableSet.get_raw(tag)وset_raw(tag, data)آلیاس برایget_table_bytes/set_table_bytes- استفاده از
FontCleaner.clean_for_web()به جای حذف دستی جدول برای جلوگیری از مشکلات سازگاری
API خلاصه ای از ارجاعات
| کلاس / روش | Description |
|---|---|
TtfFont.ttf_tables | دسترسی به ویژگی های میز نامیده می شود |
TtfFont.get_table_bytes(tag) | مطالعه داده های جدول دوگانه خام |
TtfFont.set_table_bytes(tag, data) | نوشتن داده های جدول اصلاح شده |
TtfTableSet.get_raw(tag) | بایگانی برچسب ها: get_table_bytes |
TtfTableSet.set_raw(tag, data) | بایگانی برچسب ها: set_table_bytes |