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.
FontLoader.open() και FontLoader.load()Font βασικής κλάσης: font_name, font_family, font_style, num_glyphsFontEncoding.unicode_to_gid() και get_all_codepoints()FontMetrics: ανύψωση, κατάβαση, διάστημα γραμμής, em-τετράγωνοGlyphAccessor.get_glyph_by_id() και το get_glyph_by_unicode()GlyphAccessor.get_glyphs_for_text()MoveTo, LineTo, QuadraticTo, CurveTo, ClosePathGlyph ιδιότητεςKernPair για ακριβείς υπολογισμούς διάταξης κειμένουFontConverter.convert()CurveAdapter.quad_to_cubic() και cubic_to_quads()convert_path_quad_to_cubic() και convert_path_cubic_to_quad()FontSubsetter.subset_by_text()FontSubsetter.subset_by_gids()FontSubsetter.subset_for_web()FontSubsetter.subset_by_presets() και available_presets()FontSubsetter.analyze_coverage() και analyze_web_coverage()FontCleaner.clean_for_web()CompatibilityChecker.compare_fonts() και compare_variable_instances()AnimationPreviewBuilder.build_axis_sweep()AnimationPreviewBuilder.build_path()Ανοίξτε μια γραμματοσειρά 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")
Αφαιρέστε τους παλαιούς πίνακες και τις εγγραφές ονομάτων 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
Είναι μια δωρεάν, αδειοδοτημένη με MIT, καθαρή-Python βιβλιοθήκη για τη φόρτωση, επιθεώρηση, μετατροπή και δημιουργία υποσυνόλων γραμματοσειρών σε μορφές TTF, OTF, CFF, Type 1, WOFF, WOFF2 και EOT. Δεν απαιτούνται εγγενείς εξαρτήσεις.
Εκτελέστε το 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() δεν έχει υλοποιηθεί στην βασική κλάση. Χρησιμοποιήστε το FontConverter.convert() για να δημιουργήσετε ένα νέο Font στην επιθυμητή μορφή.
Ναι. Το FontSubsetter.subset_by_text(font, text) επιστρέφει ένα νέο Font που περιέχει μόνο τα γλύφους που απαιτούνται για το δεδομένο κείμενο. Τα FontSubsetter.subset(font, codepoints) και subset_by_gids(font, gids) παρέχουν πιο λεπτομερή έλεγχο.