Python में TTF फ़ॉन्ट्स के साथ कैसे काम करें

Python में TTF फ़ॉन्ट्स के साथ कैसे काम करें

यह गाइड दिखाता है कि TTF फ़ॉन्ट्स को कैसे लोड करें, जांचें TtfFont गुण, पढ़ने तालिकाओं, त्वरित परिवर्तनीय फ़ॉन्ट्स, और अन्य प्रारूपों में रूपांतरण का उपयोग करके Aspose.Font FOSS के लिए Python. TrueType फ़ोन्ट (.ttf) सबसे आम फ़ॉन्ट प्रारूप हैं. Aspose.Font FOSS उन्हें लोड करता है जैसे कि TtfFont उदाहरण, तालिकाओं तक पहुंच प्रदान करते हैं, परिवर्तनीय फ़ॉन्ट एश, ग्लिफ डेटा और रूपांतरण उपकरण।.

कदम-दर-चरण गाइड

चरण 1: पैकेज स्थापित करें

नीचे दिए गए पाइप कमांड का उपयोग करके PyPI से Aspose.Font FOSS पैकेज स्थापित करें:

pip install "aspose-font>=1.0.0"

चरण 2: आवश्यक कक्षाओं का आयात

Import FontLoader और TtfFont एक TTF फ़ॉन्ट लोड करने और इसके टाइप किए गए गुणों तक पहुंचने के लिए:

from aspose_font.loader import FontLoader
from aspose_font.ttf.font import TtfFont

चरण 3: एक TTF फ़ॉन्ट लोड करें और जांचें

TTF फ़ाइल का उपयोग करें FontLoader.open() और मूल गुणों जैसे नाम, परिवार, और ग्लिफ गिनती पढ़ें:

ttf_font: TtfFont = FontLoader.open("Roboto-Regular.ttf")
print(ttf_font.font_name)
print(ttf_font.font_family)
print(ttf_font.num_glyphs)

चरण 4: कोर टेबल पढ़ें

पहुंच के लिए ttf_tables संपत्ति और नाम के आधार पर कोर तालिका की उपस्थिति की जांच करें:

ttf_font: TtfFont = FontLoader.open("Roboto-Regular.ttf")
kern = ttf_font.ttf_tables.kern
print("kern present:", kern is not None)

चरण 5: एक परिवर्तनीय फ़ॉन्ट को स्थापित करें

एक परिवर्तनीय फ़ॉन्ट फ़ाइल लोड करें, जांचें is_variable,और कॉल करें instantiate() एक आकस्मिक उदाहरण बनाने के लिए एक एक्स शब्दकोश के साथ:

from aspose_font.loader import FontLoader
from aspose_font.ttf.font import TtfFont

ttf_font: TtfFont = FontLoader.open("Roboto-VariableFont_wdth,wght.ttf")
if ttf_font.is_variable:
    static = ttf_font.instantiate({"wght": 700.0})
    print("Instantiated:", static.font_name)

चरण 6: WOFF2 में परिवर्तित करें

एक लोड TTF फ़ॉन्ट को WOFF2 प्रारूप में परिवर्तित करें FontType.WOFF2 के लिए FontConverter.convert():

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)

सामान्य समस्याएं और सुधार

AttributeError: Font has no attribute ttf_tables उपयोग करें ttf_font: TtfFont = FontLoader.open(...). के लिए ttf_tables संपत्ति पर है TtfFont,आधार नहीं है। Font.

is_variable एक परिवर्तनीय फ़ॉन्ट पर गलत है कुछ परिवर्तनीय फ़ॉन्ट एक गैर-मानक का उपयोग करते हैं fvar टेबल फॉर्मेट. चेक करें ttf_font.fvar is not None एक विकल्प के रूप में।.

instantiate() उठाए KeyError - एसिस टैग एक पंजीकृत 4 चार्ज टैब होना चाहिए (जैसा कि जी।. "wght", "wdth") जांच करें ttf_font.axes उपलब्ध टैग के लिए।.

अक्सर पूछे जाने वाले प्रश्न

TTF और OTF के बीच क्या अंतर है?

OTF और TTF एक ही बाइनरी कंटेनर (SFNT) साझा करते हैं. OTf फ़ॉन्ट्स आमतौर पर CFF आउटलिंग का उपयोग करते है जबकि TTF फ़ॉन्ट TrueType क्वाड्रैक्टिक कोर का उपयोग करते हैं. दोनों लोड किए जाते हैं FontLoader.open().

क्या मैं एक TTF फ़ॉन्ट से कोर जोड़े प्राप्त कर सकता हूं?

हाँ, उपयोग करें TtfFont.get_kern_pairs() एक सूची प्राप्त करने के लिए KernPair वस्तुओं का।.

क्या पुस्तकालय फ़ॉन्ट संग्रह (.ttc) का समर्थन करता है?

हाँ, उपयोग करें FontLoader.open(source, collection_index=N) एक विशेष फ़ॉन्ट का चयन करें TTC संग्रह फ़ाइल।.

See Also

 हिन्दी