Skip to content

Repository files navigation

Font Coverage Inspector

English | 简体中文

A Python tool for inspecting .ttf font files, counting Unicode range coverage, and visualizing the results with a Tkinter GUI.

What it does

  • Inspect font metadata (copyright, family, version, etc.)
  • Count characters covered per Unicode block (CJK, emoji, Greek, Cyrillic, Arabic, Hebrew, Hindi, Bengali, and more)
  • Visualize coverage as bar charts, rendered using the selected font itself
  • Switch the report language between Chinese and English
  • Can be packaged as a standalone .exe with PyInstaller

Non-goals: this is a coverage-inspection tool, not a font editor — it does not modify or subset fonts.

Requirements

  • OS / runtime: any OS with Python 3.8+ and Tk support (Tkinter ships with the standard CPython installer on Windows/macOS; on Linux install your distro's python3-tk package)
  • Hardware: none beyond what Python itself needs
  • External services: none

Install

# Always clone a tag, not the default branch — the branch tip may be mid-work.
git clone --branch v0.2.0 --depth 1 https://github.com/CharlesGool/font-coverage-inspector.git font-coverage-inspector
cd font-coverage-inspector
pip install -r requirements.txt

Quick start

python gui.py

Verify it works

The GUI window titled "字体检查工具" (Font Check Tool) should open. Pick a .ttf file, choose a language, click "运行检查" (Run inspection) — a popup with a text report appears, followed by a matplotlib window with two bar charts (CJK block coverage and global-language block coverage).

Alternatively, download the prebuilt gui.exe from Releases and run it directly — no Python install required.

License

MIT — see LICENSE. This project bundles/depends on third-party libraries (fontTools, Matplotlib); see THIRD_PARTY_NOTICES.md for their license terms.

About

A Python tool for inspecting font files, counting Unicode coverage, and visualizing results with GUI.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages