106 lines
3.6 KiB
Markdown
106 lines
3.6 KiB
Markdown
# SD Card Fonts
|
|
|
|
CrossPoint supports loading additional fonts from the SD card, including fonts
|
|
with extended Unicode coverage (CJK, Cyrillic, Greek, etc.).
|
|
|
|
## Installing Fonts
|
|
|
|
There are three ways to install fonts:
|
|
|
|
### Option 1: Download from device (recommended)
|
|
|
|
1. Connect your CrossPoint reader to WiFi
|
|
2. Go to **Settings > System > Manage Fonts**
|
|
3. Browse available font families and tap to download
|
|
4. Downloaded fonts appear immediately in **Settings > Reader > Font Family**
|
|
|
|
### Option 2: Upload via web browser
|
|
|
|
1. Connect your CrossPoint reader to WiFi
|
|
2. Open the web interface in your browser (shown on the WiFi screen)
|
|
3. Navigate to the **Fonts** tab
|
|
4. Upload `.cpfont` files using the upload form
|
|
|
|
### Option 3: Manual SD card copy
|
|
|
|
1. Download font files from the
|
|
[crosspoint-fonts repository](https://github.com/crosspoint-reader/crosspoint-fonts)
|
|
2. Copy font family folders to one of two locations on your SD card:
|
|
|
|
- `/.fonts/` — hidden directory (preferred; keeps the SD root tidy
|
|
when mounted on a desktop)
|
|
- `/fonts/` — visible directory (use this if your OS hides dot-files
|
|
and you'd rather see the folder in your file manager)
|
|
|
|
Both roots are always scanned at boot and the results are merged: a
|
|
family installed in `/fonts/` shows up even when `/.fonts/` also
|
|
exists, and vice versa. The two roots only collide if the same family
|
|
name appears in both — in that case the copy in `/.fonts/` wins and
|
|
the duplicate in `/fonts/` is ignored.
|
|
|
|
SD Card Root/
|
|
├── .fonts/ ← Hidden root (preferred)
|
|
│ └── Literata/
|
|
│ ├── Literata_12.cpfont
|
|
│ ├── Literata_14.cpfont
|
|
│ ├── Literata_16.cpfont
|
|
│ └── Literata_18.cpfont
|
|
└── fonts/ ← Visible root (equally valid)
|
|
└── Merriweather/
|
|
├── Merriweather_12.cpfont
|
|
└── ...
|
|
|
|
3. Insert the SD card and power on your CrossPoint reader
|
|
|
|
## Available Pre-Built Fonts
|
|
|
|
The current list of pre-built fonts is maintained in the
|
|
[crosspoint-fonts repository](https://github.com/crosspoint-reader/crosspoint-fonts).
|
|
|
|
## Converting Custom Fonts
|
|
|
|
To convert your own TrueType/OpenType fonts:
|
|
|
|
### Prerequisites
|
|
|
|
pip install freetype-py fonttools
|
|
|
|
### Single font (one style)
|
|
|
|
python3 lib/EpdFont/scripts/fontconvert_sdcard.py \
|
|
MyFont-Regular.ttf \
|
|
--intervals latin-ext \
|
|
--sizes 12,14,16,18 \
|
|
--style regular \
|
|
--name MyFont \
|
|
--output-dir ./MyFont/
|
|
|
|
### Multi-style font
|
|
|
|
python3 lib/EpdFont/scripts/fontconvert_sdcard.py \
|
|
--regular MyFont-Regular.ttf \
|
|
--bold MyFont-Bold.ttf \
|
|
--italic MyFont-Italic.ttf \
|
|
--bolditalic MyFont-BoldItalic.ttf \
|
|
--intervals latin-ext \
|
|
--sizes 12,14,16,18 \
|
|
--name MyFont \
|
|
--output-dir ./MyFont/
|
|
|
|
### Available Unicode interval presets
|
|
|
|
| Preset | Coverage |
|
|
|--------|----------|
|
|
| `ascii` | U+0020-U+007E (Basic Latin) |
|
|
| `latin-ext` | European languages (Latin + Extended-A/B) |
|
|
| `greek` | Greek + Extended Greek |
|
|
| `cyrillic` | Cyrillic + Supplement |
|
|
| `cjk` | CJK Unified Ideographs + Hiragana + Katakana + Fullwidth |
|
|
| `hangul` | Korean Hangul syllables |
|
|
| `reading` | Literary fiction coverage: Latin, Greek, Cyrillic, math/symbol blocks, supplemental punctuation, and CJK quote marks |
|
|
| `builtin` | Matches built-in Bookerly coverage exactly |
|
|
|
|
Combine presets with commas: `--intervals latin-ext,greek,cyrillic`
|
|
|
|
Install custom fonts via WiFi upload or manual SD card copy.
|