Veelgestelde vragen

Veelgestelde vragen

Licenties & Open Source

Wat is het licentiemodel?

Aspose.Font FOSS voor Python wordt uitgebracht onder de MIT License. Je kunt de software gebruiken, kopiëren, wijzigen, samenvoegen, publiceren, distribueren, sublicentiëren of kopieën van de software verkopen zonder beperking. De enige voorwaarde is dat de auteursrechtvermelding en de licentietekst zijn opgenomen in alle kopieën of substantiële delen van de software.

Kan ik het gebruiken in commerciële producten?

Ja. De MIT-licentie staat gebruik toe in closed‑source en commerciële producten. Er zijn geen royalty‑ of naamsvermeldingsverplichtingen, behalve het behouden van de auteursrechtheader in uw kopieën van de bibliotheek zelf. Opmerking: de CffFont class is bijgewerkt (API_MODIFIED); bestaande code kan kleine aanpassingen vereisen.

Is er een betaalde versie met meer functies?Aspose.Font FOSS is de open-source editie. De FOSS-editie dekt TTF, OTF, CFF,

Type 1, WOFF, WOFF2 en EOT — wat de meerderheid van het werk met lettertypen in de praktijk dekt.


Installatie & vereisten

Hoe installeer ik Aspose.Font FOSS voor Python?

Installeer het bijgewerkte pakket (vereist Python 3.10+):

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

Het lettertype API is aangepast (API_MODIFIED). Er zijn geen native afhankelijkheden op systeemniveau vereist.

Welke Python-versies worden ondersteund?

Python 3.10 en later. De bibliotheek gebruikt alleen standaardbibliotheekfuncties, dus hij werkt op CPython en PyPy implementaties die Python 3.10+ ondersteunen.

Zijn er native- of platformafhankelijkheden?

Nr. Aspose.Font FOSS voor Python heeft geen C-extensies, geen systeemlettertypen en geen platform-API’s. Het werkt identiek op Windows, macOS en Linux.


Formaatondersteuning

Welke lettertypeformaten kunnen worden gelezen?

FontLoader.open() kan TTF, OTF, CFF (standalone), Type 1, WOFF, WOFF2 en EOT laden.

from aspose_font import FontLoader

font = FontLoader.open("MyFont.ttf")

Welke formaten kunnen worden geschreven?

FontConverter.convert() ondersteunt conversie naar TTF, CFF, WOFF en WOFF2. Het uitvoerlettertype kan worden opgeslagen als bytes of een bestandsstroom.

Is WOFF2-decompressie ingebouwd?

Ja. WOFF2 Brotli-compressie en -decompressie zijn volledig geïmplementeerd binnen de bibliotheek. Er is geen extern brotli-pakket vereist.


API Usage

Hoe laad ik een lettertype en inspecteer ik de metadata?

Gebruik FontLoader.open() die een Font instantie retourneert. Voor TTF/OTF lettertypen cast naar TtfFont om TTF-specifieke eigenschappen te benaderen:

from aspose_font import FontLoader
from aspose_font import TtfFont

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

Hoe converteer ik een TTF naar WOFF2?

Laad het lettertype met FontLoader.open(), geef het vervolgens door aan FontConverter.convert() met FontType.WOFF2 als doel. Het geretourneerde object is een Woff2Font instantie klaar om te serialiseren:

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)

Hoe maak ik een subset van een lettertype voor weblevering?

Gebruik FontSubsetter.subset_by_text() om een nieuw lettertype te produceren dat alleen de glyphs bevat die nodig zijn om de opgegeven tekstreeks weer te geven, waardoor de bestandsgrootte voor het insluiten in een webpagina wordt verminderd:

from aspose_font import FontLoader
from aspose_font import FontSubsetter

font = FontLoader.open("Roboto-Regular.ttf")
subset = FontSubsetter.subset_by_text(font, "Hello World")

Hoe krijg ik toegang tot individuele glyphs?

Gebruik Font.glyph_accessor die GlyphAccessor implementeert. Roep get_glyph_by_unicode() aan met een Unicode-codepunt om het overeenkomstige glyph-object op te halen en de metrische gegevens of de omtrek te inspecteren:

from aspose_font import FontLoader

font = FontLoader.open("Roboto-Regular.ttf")
glyph = font.glyph_accessor.get_glyph_by_unicode(0x0041)  # 'A'
print(glyph.glyph_id)

Bekende beperkingen

Is Font.to_bytes() geïmplementeerd?

De abstracte basisklasse Font.to_bytes(font_type) werpt NotImplementedError op wanneer deze rechtstreeks wordt aangeroepen. Echter, alle concrete lettertypeklassen — TtfFont, CffFont, WoffFont, Woff2Font, EotFont en Type1Font — implementeren to_bytes() volledig. Laad een lettertype met FontLoader.open() en roep to_bytes() aan op de verkregen concrete instantie. FontConverter.convert() kan ook een nieuw lettertype genereren in elk ondersteund doelformaat.

Zijn alle tabeltypes in TtfTableSet gevuld?

Alleen veelvoorkomende tabellen (head, hhea, maxp, os2, name, post, cmap, loca, hmtx, kern) worden blootgesteld als benoemde eigenschappen op TtfTableSet. Andere tabellen kunnen als ruwe bytes gelezen worden via TtfFont.get_table_bytes(tag).

Ondersteunt de bibliotheek het instantiëren van variabele fonts?

Ja. TtfFont.instantiate(coordinates) genereert een statische TtfFont op opgegeven ascoördinaten. Gebruik TtfFont.is_variable en TtfFont.axes om eerst de variatie-assen te detecteren.

Zie ook

 Nederlands