Tôi tìm thấy một thư viện python, fonttools ( pypi ) có thể được sử dụng để làm điều đó với một chút kịch bản python.
Đây là một tập lệnh đơn giản liệt kê tất cả các phông chữ đã chỉ định glyph:
#!/usr/bin/env python3
from fontTools.ttLib import TTFont
import sys
char = int(sys.argv[1], base=0)
print("Looking for U+%X (%c)" % (char, chr(char)))
for arg in sys.argv[2:]:
try:
font = TTFont(arg)
for cmap in font['cmap'].tables:
if cmap.isUnicode():
if char in cmap.cmap:
print("Found in", arg)
break
except Exception as e:
print("Failed to read", arg)
print(e)
Đối số đầu tiên là codepoint (thập phân hoặc hexa với 0x) và phần còn lại là các tệp phông chữ cần xem.
Tôi đã không cố gắng làm cho nó hoạt động cho .ttc
các tập tin (nó đòi hỏi một số tham số bổ sung ở đâu đó).
Lưu ý: Lần đầu tiên tôi thử công cụ otfinfo, nhưng tôi chỉ có các ký tự mặt phẳng đa ngôn ngữ cơ bản (<= U + FFFF). Kịch bản python tìm thấy các ký tự máy bay mở rộng OK.