Jak pracovat s Core Font Management v Python

Jak pracovat s Core Font Management v Python

Aspose.Font FOSS pro Python poskytuje FontLoader jako hlavní vstupní bod pro načítání fontů z cest k souborům, bajtových polí nebo streamů. Vrácený objekt Font vystavuje metadata jako název, rodinu, styl, počet glifů a mapu kódování.

Průvodce krok za krokem

Krok 1: Nainstalujte balíček

git clone https://github.com/aspose-font-foss/Aspose.Font-FOSS-for-Python.git
cd Aspose.Font-FOSS-for-Python
pip install -e .

Krok 2: Naimportujte požadované třídy

from aspose_font import FontLoader
from aspose_font import TtfFont

Krok 3: Načtěte font z cesty k souboru

Zavolejte FontLoader.open() s cestou k souboru písma. Metoda automaticky detekuje formát a vrátí odpovídající podtřídu Font (TtfFont, CffFont atd.):

font = FontLoader.open("Roboto-Regular.ttf")
print(font.font_name)
print(font.num_glyphs)

Krok 4: Přístup k metrikám písma

Vlastnost Font.metrics vrací objekt FontMetrics, který obsahuje ascender, descender, line gap, cap height a další typografické měření pro písmo:

from aspose_font import FontLoader

font = FontLoader.open("Roboto-Regular.ttf")
metrics = font.metrics
print(metrics)

Krok 5: Převod do jiného formátu

Předávejte načtené písmo do FontConverter.convert() s požadovaným cílem FontType. Metoda vrátí nový objekt písma v požadovaném formátu, aniž by upravila originál:

from aspose_font import FontLoader
from aspose_font.converter import FontConverter  # internal API — may change between releases
from aspose_font import FontType

font = FontLoader.open("Roboto-Regular.ttf")
woff2 = FontConverter.convert(font, FontType.WOFF2)

Časté problémy a opravy

FontType nenalezeno — Import FontType z nejvyšší úrovně aspose_font balíček: from aspose_font import FontType.

Font has no attribute font_name — Ujistěte se, že používáte Font instanci vrácenou FontLoader.open(), ne surový objekt bajtů.

Chyby kódování na Windows cestách — Předávejte cesty jako surové řetězce: r"C:\Fonts\MyFont.ttf".

Často kladené otázky

Jaké formáty písem FontLoader podporuje?

FontLoader.open() podporuje TTF, OTF, CFF, Type 1, WOFF, WOFF2 a EOT.

Mohu načíst písmo z bytes?

Ano. FontLoader.open() přijímá řetězec s cestou k souboru, bytes nebo objekt proudu prostřednictvím argumentu source spolu s explicitním parametrem font_type.

Je Font.to_bytes() k dispozici?

Č. Font.to_bytes(font_type) není implementováno v základní třídě. Použijte FontConverter.convert() pro změnu formátu, pak použijte metody ukládání podtřídy.

Viz také:

 Čeština