ワンクリックで
epub-font-coverage-analyzer
用于 EPUB 出现生僻字、方块字、跨阅读器字形不一致、Kindle 字体回退失败,或需要验证嵌入字体、子集字体和候选大字库是否覆盖全书字符时。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
用于 EPUB 出现生僻字、方块字、跨阅读器字形不一致、Kindle 字体回退失败,或需要验证嵌入字体、子集字体和候选大字库是否覆盖全书字符时。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
优化中文/CJK EPUB 排版,包括正文节奏、font-family 链、嵌入字体、生僻字 fallback、标题字体、中西文混排和阅读器安全段落间距。用于文字拥挤、裁切、跨阅读器字体不一致或字体规则需要清理时。
将 EPUB 封面式页面、卷首、章首或海报页转换为项目的 A-lite 可重排全页方案,同时保留原有图文叠加构图、文字、图片和资源。
重构和维护 EPUB CSS 分层。用于 CSS 规则重复、放错文件、层级边界不清,或新增正文、弹注、文字效果、文学结构、图片混排、竖排、A-lite 海报等样式时。
优化英文 EPUB 书籍排版,包括书籍类型判断、英语语言标记、serif 字体链、段落缩进、标题层级、插图、断字、引用/诗歌/信件、Kindle/Readest/Apple Books 大字号回归。用于英文小说、散文、非虚构或英文为主的 EPUB 需要形成可重排、可验证的排版方案时。
优化 EPUB 图片版式、figure 环绕、图注、栅格格式、封面声明与阅读器兼容性。用于图片过小、裁切、Kindle 空白、图文环绕差、缺图注,或封面/海报图片处理需要 EPUB 安全规则时。
检查 EPUB 的 Kindle/KDP 兼容风险,包括图片格式、封面 metadata、nav + NCX、MathML properties、CSS fallback、文字裁切、表格/代码溢出和转换日志 warning。用于 Kindle 交付前或 Kindle Previewer/App 与其他阅读器表现不一致时。
| name | epub-font-coverage-analyzer |
| description | 用于 EPUB 出现生僻字、方块字、跨阅读器字形不一致、Kindle 字体回退失败,或需要验证嵌入字体、子集字体和候选大字库是否覆盖全书字符时。 |
先区分“字体里没有字形”和“字形存在但阅读器没有走到回退字体”。本 skill 只读,不嵌入、不子集化、不包裹 span。
先运行 EPUB preflight;发现真实加密资源时停止。
运行公开入口:
python3 scripts/epub_font_coverage_adapter.py book.epub --format json > work/font-coverage.json
查看:
summary.by_profile_risk:不同 reader profile 的 ok/risk/fail。char_inventory:问题字、出现位置、覆盖位置和原因。unresolved:无法解析的 CSS;非零时结论不完整。chain_health:字体链顺序、缺失资源和回退风险。p。当前分析器不会采集 quotes、content 等 CSS 生成字符;须从 CSS 另行枚举,加入子集工具的 extraCodepoints,并对写出字体的 cmap 人工复核。按原因分派:
true-missing:链上没有字体覆盖,寻找大字库或造字。fallback-not-reached:调整链首或改用 .rare 专用类,不先造字。subset-cut:检查子集输入字符和 fontspec。only-non-embedded:属于阅读器依赖,只能结合目标 reader 实测。字体链或 class 修改交给 epub-typography-optimizer;正文角色不确定时先用 epub-content-analyzer。
| 目标 | 建议 |
|---|---|
| 普通正文无缺字 | 保持自由模式,不为“锁字体”额外嵌入 |
| 少量生僻字 | .rare + 专用补字字体 |
| 设计要求锁定正文,或全书必须统一特定字形,且正文角色覆盖完整 | 评估 C1-body、体积和 reader matrix |
| Kindle 只在后备字体有字 | 不依赖逐字回退;调整链或拆专用类 |
| CSS unresolved | 先修解析边界或人工检查,不声称全覆盖 |
若 Apple Books 正常而 Kindle 显示方块,报告显示问题字只在 later-embedded 命中,应判断为回退未到达;把同一字体再重复塞进链中不会解决问题。
中文标点或数字样式异常时,先核对源码码位,再核对实际命中的字体角色及其 cmap,最后才判断阅读器渲染。“”(U+201C/U+201D)与 ASCII 引号、〇(U+3007)与 ○(U+25CB)都不是可由子集化流程互换的字符。
python3 scripts/test_epub_font_coverage_adapter.py
cd tools-font/coverage-detector && uv run pytest -q