1. Προϊόντα
  2.   Aspose.Font
  3.   Aspose.Font FOSS for Python

Aspose.Font FOSS για Python

Ανοιχτού κώδικα Python βιβλιοθήκη για τη φόρτωση, την επιθεώρηση, τη μετατροπή και τη δημιουργία υποσυνόλων αρχείων γραμματοσειρών TTF, OTF, CFF, WOFF, WOFF2 και EOT.

Εργαστείτε με τις γραμματοσειρές προγραμματιστικά στο Python

Aspose.Font FOSS για Python είναι ένα καθαρό-Python εργαλείο για τη φόρτωση, επιθεώρηση, μετατροπή, υποσύνολο και προεπισκόπηση γραμματοσειρών σε μορφές TrueType, OpenType, CFF, Type 1, WOFF, WOFF2 και EOT. Η βιβλιοθήκη λειτουργεί σε Python 3.10 ή νεότερη και δεν απαιτεί εξωτερικές βιβλιοθήκες γραμματοσειρών του λειτουργικού συστήματος ή εγγενείς εξαρτήσεις.

Η βιβλιοθήκη εκθέτει ένα καθαρό API για τη φόρτωση γραμματοσειρών μέσω FontLoader, πρόσβαση σε γλύφους μέσω GlyphAccessor, μετατροπή μορφών μέσω FontConverter, βελτιστοποίηση για το web μέσω FontCleaner, υποσύνολο με επίγνωση κειμένου μέσω FontSubsetter, και animation μεταβλητών γραμματοσειρών μέσω AnimationPreviewBuilder. Τα μεταδεδομένα της γραμματοσειράς όπως το όνομα, η οικογένεια, το στυλ, ο αριθμός γλύφων, η κωδικοποίηση και οι μετρικές είναι προσβάσιμα μέσω της βασικής κλάσης Font χωρίς την ανάγκη ανάλυσης των δυαδικών πινάκων με το χέρι.

Aspose.Font FOSS είναι αδειοδοτημένο υπό την άδεια MIT και μπορεί να εγκατασταθεί από το PyPI με μία εντολή pip install. Είναι κατάλληλο για εργαλεία σχεδίασης γραμματοσειρών, αγωγούς web γραμματοσειρών, μηχανές απόδοσης γλύφων, και οποιαδήποτε εφαρμογή Python που χρειάζεται να διαβάσει, να μετασχηματίσει ή να παράγει αρχεία γραμματοσειρών. Για την οικογένεια προϊόντων επιχειρήσεων, δείτε Aspose.Font — Enterprise Product Family.

Φόρτωση Γραμματοσειρών και Ανίχνευση Μορφής

  • Φορτώστε γραμματοσειρές από διαδρομές αρχείων ή ακατέργαστα bytes με FontLoader.open() και FontLoader.load()
  • Αυτόματη ανίχνευση μορφής: TTF, OTF, CFF, WOFF, WOFF2, EOT, Type 1
  • Πρόσβαση σε μεταδεδομένα γραμματοσειράς μέσω της Font βασικής κλάσης: font_name, font_family, font_style, num_glyphs
  • Διαβάστε τους χάρτες κωδικοποίησης γλυφών με FontEncoding.unicode_to_gid() και get_all_codepoints()
  • Επιθεωρήστε τις μετρικές γραμματοσειράς με FontMetrics: ανύψωση, κατάβαση, διάστημα γραμμής, em-τετράγωνο

Τυπικές περιπτώσεις χρήσης

  • Διαδικασίες επαλήθευσης γραμματοσειρών και εξαγωγής μεταδεδομένων
  • Έλεγχοι CI/CD που επαληθεύουν το όνομα οικογένειας γραμματοσειράς και τον αριθμό των γλυφών
  • Υπηρεσίες λήψης γραμματοσειρών Web που δέχονται πολλαπλές μορφές εισόδου
  • Εργαλεία σχεδίασης γραμματοσειρών που εμφανίζουν μεταδεδομένα χωρίς desktop runtime

Πρόσβαση σε Γλύφους και Επιθεώρηση Διαδρομής

  • Ανακτήστε γλύφους με ID ή Unicode χρησιμοποιώντας το GlyphAccessor.get_glyph_by_id() και το get_glyph_by_unicode()
  • Επιλύστε όλα τα γλύφους για μια συμβολοσειρά με GlyphAccessor.get_glyphs_for_text()
  • Εξετάστε τις διαδρομές περιγράμματος γλύφου ως πληκτρολογημένες εντολές: MoveTo, LineTo, QuadraticTo, CurveTo, ClosePath
  • Πρόσβαση στο πλαίσιο περιγράμματος του γλύφου, στο πλάτος προόδου και στις πλευρικές εσοχές από τις ιδιότητες Glyph ιδιότητες
  • Διαβάστε τα ζεύγη κερνίνγκ από το KernPair για ακριβείς υπολογισμούς διάταξης κειμένου

Τυπικές περιπτώσεις χρήσης

  • Έλεγχοι κάλυψης γλύφων για πολυγλωσσική απόδοση κειμένου
  • Εξαγωγή περιγράμματος για διαδρομή SVG ή δημιουργία διανύσματος
  • Επικύρωση πίνακα kerning σε ροές εργασίας QA γραμματοσειρών
  • Έρευνα διαμόρφωσης κειμένου και πειραματισμός χαμηλού επιπέδου διάταξης

Μετατροπή Γραμματοσειρών

  • Μετατρέψτε μεταξύ TTF, OTF, CFF, WOFF, WOFF2, EOT και Type 1 με FontConverter.convert()
  • Προσαρμόστε τους τύπους καμπύλης Bezier με CurveAdapter.quad_to_cubic() και cubic_to_quads()
  • Μετατρέψτε τις διαδρομές γλύφων μεταξύ τετραγωνικών και κυβικών με convert_path_quad_to_cubic() και convert_path_cubic_to_quad()

Τυπικές περιπτώσεις χρήσης

  • Διαδικασίες γραμματοσειρών Web που μετατρέπουν τις κύριες γραμματοσειρές TTF σε WOFF2 για διανομή
  • Εργαλεία τυπογραφείου που εξάγουν σε πολλαπλούς προορισμούς μορφής από μία πηγή
  • Μετατροπή Legacy EOT για στοίβες γραμματοσειρών web με συμβατότητα προς τα πίσω
  • Αυτοματοποιημένη κανονικοποίηση μορφής γραμματοσειράς σε συνεχή ενσωμάτωση

Υποσυνολο γραμματοσειρών

  • Υποσύνολο γραμματοσειρών με κείμενο Unicode με FontSubsetter.subset_by_text()
  • Υποσύνολο με λίστα ID γλυφών με FontSubsetter.subset_by_gids()
  • Δημιουργήστε υποσύνολα βελτιστοποιημένα για το web με FontSubsetter.subset_for_web()
  • Εφαρμόστε προεπιλεγμένα προφίλ με FontSubsetter.subset_by_presets() και available_presets()
  • Αναλύστε την κάλυψη υποσυνόλου με FontSubsetter.analyze_coverage() και analyze_web_coverage()

Τυπικές περιπτώσεις χρήσης

  • Μείωση του μεγέθους του φορτίου WOFF2 για ιστοσελίδες με περιορισμένα σύνολα χαρακτήρων
  • Δημιουργία υποσυνόλων γραμματοσειρών ανά γλώσσα για αναπτύξεις i18n
  • Ροές εργασίας αδειοδότησης γραμματοσειρών που διανέμουν υποσύνολα ανά σετ σελίδων
  • Βελτιστοποίηση απόδοσης για κινητές web εφαρμογές

Βελτιστοποίηση ιστού και προεπισκοπήσεις μεταβλητών γραμματοσειρών

  • Αφαιρέστε τους παλαιούς πίνακες και τις εγγραφές ονομάτων Mac με FontCleaner.clean_for_web()
  • Ελέγξτε τη συμβατότητα του άξονα μεταβλητής γραμματοσειράς με CompatibilityChecker.compare_fonts() και compare_variable_instances()
  • Δημιουργήστε κινούμενα APNG sweeps του άξονα με AnimationPreviewBuilder.build_axis_sweep()
  • Δημιουργήστε διαδρομές animation πολλαπλών βημάτων με AnimationPreviewBuilder.build_path()

Τυπικές περιπτώσεις χρήσης

  • Σελίδες δειγμάτων γραμματοσειρών και διαδραστικοί εξερευνητές αξόνων για εκδότες γραμματοσειρών
  • CI pipelines που επαληθεύουν τη συμπεριφορά των μεταβλητών γραμματοσειρών πριν από τη διανομή
  • Διαδρόμους απόδοσης ιστού που αφαιρούν μη‑απαραίτητα δυαδικά πίνακες
  • Μικρογραφίες προεπισκόπησης γραμματοσειρών για εφαρμογές διαχείρισης γραμματοσειρών

Φόρτωση αρχείου γραμματοσειράς

Ανοίξτε μια γραμματοσειρά TrueType ή OpenType από διαδρομή αρχείου και διαβάστε τα βασικά μεταδεδομένα της.

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

Πρόσβαση σε γλύφους για μια συμβολοσειρά κειμένου

Ανιχνεύστε όλους τους γλύφους για ένα σημείο κώδικα Unicode και ελέγξτε τις διαδρομές περιγράμματος τους.

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)

Δημιουργία κίνησης σάρωσης άξονα μεταβλητής γραμματοσειράς

Δημιουργήστε ένα κινούμενο APNG που διασχίζει έναν άξονα μεταβλητής γραμματοσειράς από την αρχική στην τελική τιμή.

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")

Καθαρισμός γραμματοσειράς για ανάπτυξη στο web

Αφαιρέστε τους παλαιούς πίνακες και τις εγγραφές ονομάτων Mac για να μειώσετε το μέγεθος του δυαδικού πριν από την εξυπηρέτηση στο web.

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

Συχνές Ερωτήσεις

Τι είναι το Aspose.Font FOSS για Python?;

Είναι μια δωρεάν, αδειοδοτημένη με MIT, καθαρή-Python βιβλιοθήκη για τη φόρτωση, επιθεώρηση, μετατροπή και δημιουργία υποσυνόλων γραμματοσειρών σε μορφές TTF, OTF, CFF, Type 1, WOFF, WOFF2 και EOT. Δεν απαιτούνται εγγενείς εξαρτήσεις.

Πώς εγκαθιστώ το Aspose.Font FOSS για Python?;

Εκτελέστε το pip install "aspose-font>=1.0.0". Δεν απαιτούνται εξαρτήσεις σε επίπεδο συστήματος. Η βιβλιοθήκη λειτουργεί σε Windows, macOS και Linux με Python 3.10 ή νεότερη έκδοση.

Ποιοι τύποι γραμματοσειρών υποστηρίζονται;

FontLoader.open() διαβάζει TTF, OTF, CFF, Type 1, WOFF, WOFF2 και EOT. FontConverter.convert() γράφει TTF, CFF, WOFF και WOFF2. Το EOT είναι μόνο για ανάγνωση.

Είναι διαθέσιμη η Font.to_bytes();

Όχι. Το Font.to_bytes() δεν έχει υλοποιηθεί στην βασική κλάση. Χρησιμοποιήστε το FontConverter.convert() για να δημιουργήσετε ένα νέο Font στην επιθυμητή μορφή.

Μπορώ να δημιουργήσω υποσύνολο μιας γραμματοσειράς για παράδοση στο web;

Ναι. Το FontSubsetter.subset_by_text(font, text) επιστρέφει ένα νέο Font που περιέχει μόνο τα γλύφους που απαιτούνται για το δεδομένο κείμενο. Τα FontSubsetter.subset(font, codepoints) και subset_by_gids(font, gids) παρέχουν πιο λεπτομερή έλεγχο.

  

Υποστήριξη και Πόροι Μάθησης

 Ελληνικά