Често задавани въпроси

Често задавани въпроси

Лицензиране и отворен код

Какъв е моделът на лицензиране?

Aspose.Font FOSS for Python is released under the Лицензия MIT.Можеш да използваш, копирай., да модифицират, обединяват, публикуват или разпространявали софтуера без лиценз; Единственото изискване е съобщението за авторските права и текста на лиценза да са в съответствие с изискванията, посочени в член 2, параграф 1. включени във всички копия или значителни части от софтуера.

Мога ли да го използвам в търговски продукти?

Лицензът на 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 са поддържани?

Python 3.10 и по-нови. Библиотеката използва само стандартни библиотечни функции, така че работи на CPython и PyPy реализации, които поддържат Python 3.0+.

Има ли някакви местни или платформен зависимости?

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.


Използване на API

Как да заредим шрифт и да проверя метаданните му?

Използване на: 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() с 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 за да се открият първо оси на вариация.

Вижте също:

 Български