Thường xuyên hỏi câu hỏi

Thường xuyên hỏi câu hỏi

Giấy phép & Open Source

Mô hình giấy phép là gì?

Aspose.Font FOSS for Python is released under the Giấy phép MIT.Bạn có thể sử dụng, copy, sửa đổi, hợp nhất, xuất bản, phân phối, cấp phép hoặc bán các bản sao của phần mềm mà không có yêu cầu duy nhất là thông báo bản quyền và văn bản giấy phép là: bao gồm trong tất cả các bản sao hoặc phần quan trọng của phần mềm.

Tôi có thể sử dụng nó trong các sản phẩm thương mại?

Có. Giấy phép MIT cho phép sử dụng trong các sản phẩm nguồn đóng và thương mại. Không có nghĩa vụ tài chính hoặc phân bổ nào ngoài việc giữ bản quyền trên bản sao của thư viện.

Có phiên bản trả tiền với nhiều tính năng hơn không?

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.


Cài đặt & yêu cầu

Làm thế nào để cài đặt Aspose.Page FOSS cho Python?

Cài đặt gói từ PyPI (cần Python 3.10+):

pip install "aspose-font>=1.0.0"

Không cần thiết phải có sự phụ thuộc bản địa ở cấp hệ thống.

Phiên bản Python nào được hỗ trợ?

Thư viện chỉ sử dụng các tính năng thư viện tiêu chuẩn, vì vậy nó hoạt động trên triển khai CPython và PyPy hỗ trợ Python 3.10+.

Có bất kỳ phụ thuộc bản địa hoặc nền tảng nào không?

FOSS for Python không có phần mở rộng C, không phông chữ hệ thống và không APIs nền tảng. nó hoạt động giống nhau trên Windows, macOS và Linux.


Hỗ trợ định dạng

Các định dạng chữ cái nào có thể được đọc?

FontLoader.open() Có thể tải TTF, OTF (tự động), CFF (thường), Type 1, WOFF và EOT.

from aspose_font.loader import FontLoader

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

Các định dạng nào có thể được viết?

FontConverter.convert() hỗ trợ chuyển đổi sang TTF, CFF, WOFF và WofF2. font có thể được lưu thành byte hoặc một file stream.

WOFF2 decompression có được tích hợp không?

Có. WOFF2 Brotli nén và nứt nấm được thực hiện hoàn toàn trong thư viện. không cần gói nướng bên ngoài.


Sử dụng API

Làm thế nào để tải một phông chữ và kiểm tra metadata của nó?

Sử dụng FontLoader.open() Quay lại A Font Ví dụ: Đối với các phông chữ TTF/OTF được đưa vào TtfFont để truy cập các thuộc tính đặc biệt TTF:

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)

Làm thế nào để chuyển đổi TTF sang WOFF2?

tải font với FontLoader.open(),Sau đó, nó được chuyển đến FontConverter.convert() Khai tả FontType.WOFF2 mục tiêu. đối tượng được trả lại là một Woff2Font Các trường hợp sẵn sàng để phân tích:

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)

Làm thế nào để tôi đăng ký một phông chữ cho giao hàng web?

Sử dụng FontSubsetter.subset_by_text() để tạo ra một phông chữ mới chỉ bao gồm các glyphs cần thiết để thực hiện dòng văn bản cung cấp, giảm kích thước tệp cho trang web kết hợp:

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

Làm thế nào để truy cập glyphs cá nhân?

Sử dụng Font.glyph_accessor Những gì thực hiện GlyphAccessor.gọi điện get_glyph_by_unicode() với một điểm mã Unicode để lấy lại đối tượng glyph tương ứng và kiểm tra các đo hoặc chi tiết của nó:

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)

Các hạn chế đã biết

Font.to_bytes() có được thực hiện không?

Khóa học Abstract Base Class Font.to_bytes() Lớn lên NotImplementedError Nếu gọi trực tiếp. Tuy nhiên, tất cả các lớp chữ cụ thể - TtfFont, CffFont, WoffFont, Woff2Font, EotFont, và Type1Font - Thực hiện to_bytes() - Đặt một chữ cái với FontLoader.open() và gọi to_bytes() về cơ sở cụ thể đã trả lại. FontConverter.convert() cũng có thể tạo một phông chữ mới trong bất kỳ định dạng mục tiêu được hỗ trợ.

Tất cả các loại bảng trong TtfTableSet có được dân số không?

Chỉ có các bảng phổ biến (cái đầu, hhea, maxp, os2, tên, post, cmap, loca, Hmtx, kern) là: được đặt tên là bất động sản trên TtfTableSet.Các bảng khác có thể được đọc như byte nguyên chất. qua TtfFont.get_table_bytes(tag).

Thư viện có hỗ trợ các bản phông biến không?

Có . TtfFont.instantiate() Sản xuất một static TtfFont - Các định dạng axis cụ thể. Sử dụng TtfFont.is_variableTtfFont.axes Để phát hiện ax biến đổi đầu tiên.

See Also

 Tiếng Việt