1. Tuotteet
  2.   Aspose.Font
  3.   Aspose.Font FOSS for Python

Aspose.Font FOSS for Python

Avoimen lähdekoodin Python -kirjasto TTF-, OTF-, CFF-, WOFF-, WOFF2- ja EOT-fonttitiedostojen lataamiseen, tarkasteluun, muuntamiseen ja alijoukkojen luomiseen.

Työskenteleminen fonttien kanssa ohjelmoidusti Pythonissa

Aspose.Font FOSS for Python on puhdas-Python työkalupakki fonttien lataamiseen, tarkasteluun, muuntamiseen, alijoukkojen luomiseen ja esikatseluun TrueType-, OpenType-, CFF-, Type 1-, WOFF-, WOFF2- ja EOT-muodoissa. Kirjasto toimii Python 3.10:ssa tai uudemmassa ja ei vaadi ulkoisia käyttöjärjestelmän fonttikirjastoja tai natiiveja riippuvuuksia.

Kirjasto tarjoaa puhtaan API fonttien lataamiseen FontLoader kautta, glyyffien käyttöön GlyphAccessor kautta, formaatin muuntamiseen FontConverter kautta, web-optimointiin FontCleaner kautta, tekstiä huomioivaan alijoukkojen luomiseen FontSubsetter kautta, ja muuttuvan fontin animaatioon AnimationPreviewBuilder kautta. Fontin metatiedot, kuten nimi, perhe, tyyli, glyyffien määrä, koodaus ja mittasuhteet, ovat saatavilla Font perusluokan kautta ilman binääritaulukoiden manuaalista jäsentämistä.

Aspose.Font FOSS on MIT-lisensoitu ja asennettavissa PyPI:stä yhdellä pip install -komennolla. Se sopii fonttisuunnittelutyökaluihin, web-fonttiputkiin, glyyffien renderöintimoottoreihin ja mihin tahansa Python sovellukseen, joka tarvitsee lukea, muuntaa tai tuottaa fonttitiedostoja. Yritysversioiden tuoteryhmää varten katso Aspose.Font — Enterprise Product Family.

Kirjaimiston lataaminen ja muodon tunnistaminen

  • Lataa fontit tiedostopolkuista tai raaka-tavuista käyttäen FontLoader.open() ja FontLoader.load()
  • Tunnista formaatti automaattisesti: TTF, OTF, CFF, WOFF, WOFF2, EOT, Type 1
  • Pääse fontin metatietoihin Font perusluokan kautta: font_name, font_family, font_style, num_glyphs
  • Lue glyphien koodauskartat käyttäen FontEncoding.unicode_to_gid() ja get_all_codepoints()
  • Tarkastele fonttimetriikoita käyttäen FontMetrics: nousu, lasku, riviväli, em-neliö

Tyypilliset käyttötapaukset

  • Kirjaimiston validointi ja metatietojen poisto-ohjausjärjestelmät
  • CI/CD-tarkastukset, jotka vahvistavat fonttiperheen nimen ja glyfien lukumäärän.
  • Web-kirjaimistojen käyttöpalvelut, jotka hyväksyvät usean syöttömuodon
  • Kirjaimennetietojen suunnittelutyökalut, jotka näyttävät metatietoa ilman työpöydän käyttöaikaa.

Glyph-pääsy ja polun tarkastus

  • Hae glyphit ID:n tai Unicode:n avulla GlyphAccessor.get_glyph_by_id() ja get_glyph_by_unicode()
  • Ratkaise kaikki glyphit merkkijonolle GlyphAccessor.get_glyphs_for_text()
  • Tarkastele glyphin ääriviivoja kirjoitettuna komentoina: MoveTo, LineTo, QuadraticTo, CurveTo, ClosePath
  • Pääse glyphin raja-alueeseen, etäisyysleveyteen ja sivukantoihin Glyph ominaisuuksista
  • Lue kerning-parit KernPair tarkkoja tekstin asettelulaskelmia varten

Tyypilliset käyttötapaukset

  • Glyph-kattaus tarkistetaan monikielisen tekstin esittämisessä.
  • Suunnittelun poisto SVG-polku tai vektorigeneraatioon
  • Korostettavan taulukon validointi kirjoituslaatikkojen tarkastusvirtauksissa
  • Tekstin muotoilun tutkimus ja pienen tason suunnittelun kokeilu

Kirjaimeksiannon muuntaminen

  • Muunta TTF, OTF (T) CFF, WOFF (W), WOff2 (WoF2) EOT ja Type 1 FontConverter.convert() -muotoilla.
  • Sopeutetaan Bezier-käyrän tyyppejä CurveAdapter.quad_to_cubic() ja cubic_to_quads():llä.
  • Muunta glyfi polkuja neliö- ja kuutioiden välillä convert_path_quad_to_cubic():llä ja convert_path_cubic_to_quad()

Tyypilliset käyttötapaukset

  • Web-kirjaimistojen pipeline, joka muuntaa TTF:n pääkirjeet WOFF2:een jakelusta varten.
  • Tyyppinen valmiston työkalu, joka vie useisiin muotoihin yhdestä lähteestä.
  • Perintö EOT-muuntaminen taaksepäin yhteensopiville web-kirjaimistojen keräyksille
  • Automaattinen fonttimuodon normaalius jatkuvassa integroinnissa

Kirjaimeksiannon asettaminen

  • Unicoden tekstin alla olevia fontteja, joissa on FontSubsetter.subset_by_text()
  • Alajoukko glyfin tunnistelijaluettelolla, jossa on FontSubsetter.subset_by_gids()
  • Tuoda verkkoptimoitu alajoukkoja FontSubsetter.subset_for_web():llä
  • Sovella nimetty ennalta asetettuja profiileja FontSubsetter.subset_by_presets() ja available_presets()
  • Analysoida osa-joukkojen kattavuus FontSubsetter.analyze_coverage() ja analyze_web_coverage():llä.

Tyypilliset käyttötapaukset

  • WOFF2-käyttöisän koko pienentäminen verkkosivustoilla, joissa on rajoitettuja merkkijoukkoja
  • Kieli-erityisten fonttien alajoukkojen tuottaminen i18n -asennuksiin
  • Työsuojeluvirrat, jotka jakavat sivujen joukon alajoukkoja
  • Mobiiliverkkosovellusten suorituskyvyn optimointi

Verkkoptimointi ja muuttuva fonttiesiintyminen

  • Poista taulukot ja Mac-nimilistat FontCleaner.clean_for_web(): llä.
  • Tarkista fonttiakselin yhteensopivuus CompatibilityChecker.compare_fonts() ja compare_variable_instances() -muuttujiin.
  • Luodaan animaatio APNG-akseliä pyyhkivät kanssa AnimationPreviewBuilder.build_axis_sweep()
  • Rakenna monivaiheiset animaatiopetokset AnimationPreviewBuilder.build_path() -ohjelmalla.

Tyypilliset käyttötapaukset

  • Tyyppivalmistajien fontti-näytteen sivut ja interaktiiviset akseliohjaimet
  • CI-johdot, jotka tarkistavat muuttuvan kirjoitusmuodon ennen jakelua
  • Web-tuotannon johdonmukaiset ohjausjärjestelmät, joissa ei ole välttämättömiä binäärisiä taulukoita.
  • Kirjaimiston hallintaohjelmien fonttiesiintymäpiirteet

Kirjaimiston lataaminen

Avaa TrueType- tai OpenTypen -kirjaimisto tiedostotieltä ja lue sen perusmetatiedot.

from aspose_font.loader import FontLoader
font = FontLoader.open("Roboto-Regular.ttf")
print(font.font_name)    # e.g. "Roboto"
print(font.font_family)  # e.g. "Roboto"
print(font.num_glyphs)   # e.g. 1294

Access- glyfiä tekstiviivaan

Ratkaise kaikki Unicode-koodin glyfiit ja tarkista niiden piirteet.

from aspose_font.loader import FontLoader
font = FontLoader.open("OpenSans-Regular.otf")
glyph_id = font.encoding.unicode_to_gid(0x41)  # Unicode for A
glyph = font.glyph_accessor.get_glyph_by_id(glyph_id)
for cmd in glyph.path.commands:
    print(type(cmd).__name__, cmd)

Luoda muuttuva kirjaimen akseli pyyhki animatio

Luodaan animaatio APNG, joka pyyhkii muuttuvan fonttiakselin alusta loppuun.

from aspose_font.loader import FontLoader
from aspose_font.animation import AnimationPreviewBuilder

font = FontLoader.open("Roboto-VariableFont_wdth,wght.ttf")

asset = AnimationPreviewBuilder.build_axis_sweep(
    font,
    axis_tag="wdth",
    start_val=75.0,
    end_val=100.0,
    frames=3,
    fps=10,
    text="A",
    size=10.0,
    bounce=True,
)

asset.write_to("roboto-sweep-wdth.png")

Puhdista fontti verkkosivujen käyttöönotossa

Poista vanhat taulukot ja Mac-nimilistat binäärisen kokoen vähentämiseksi ennen verkkopalvelua.

from aspose_font.loader import FontLoader
from aspose_font.cleaner import FontCleaner
font = FontLoader.open("Roboto-Regular.ttf")
cleaned = FontCleaner.clean_for_web(font)
# DSIG, FFTM, meta tables removed; Mac platform name records stripped

Usein kysytyt kysymykset

Mikä on Aspose.Font FOSS Python:lle?

Se on ilmainen, MIT-lisenssillä puhdas Python -kirjasto ladattaessa, tarkastella, muuntaa ja asentaa fontteja TTF, OTF , CFF, Type 1, WOFF , WOff2 ja EOT muodoissa. Ei ole tarpeen alkuperäisiä riippuvuuksia .

Miten asennan Aspose.Font FOSS:n Pythoniin?

Suorita pip install "aspose-font>=1.0.0". Järjestelmätason riippuvuuksia ei tarvita. Kirjasto toimii Windowsissa, macOSissa ja Linuxissa Python 3.10 tai uudemmalla.

Mitkä fonttimuodot tuetaan?

FontLoader.open() lukee TTF, OTF ja CFF. FontConverter.convert() kirjoittaa TFT, Cff, WOFF ja WOF2. EOT on luettavissa vain.

Onko Font.to_bytes ((() saatavilla?

Ei. Font.to_bytes() ei ole toteutettu perusluokassa. Käytä FontConverter.convert() tuottaa uusi Font haluttuun muotoon.

Voinko asettaa fontin verkkotunnukselle?

Kyllä. FontSubsetter.subset_by_text(font, text) palauttaa uuden Font, joka sisältää vain annetun tekstin vaatimat glyphit. FontSubsetter.subset(font, codepoints) ja subset_by_gids(font, gids) antavat tarkemman hallinnan.

  

Tuki- ja oppimisresurssit

 Suomi