英语单词字帖生成器|四线三格·描红·音标·PDF
面向小学英语、英语初学者家长与教师的单词书写练习生成工具。输入单词表,用内置脚本 scripts/make_english_copybook.py 确定性生成可直接打印的四线三格 PDF。
每个单词占一行,从左到右:
┌─────┬─────┬─────┬─────┐
│ cat │ cat │ cat │ │ ← 示范(深色)+ 描红(浅灰)+ 空临写
└─────┴─────┴─────┴─────┘
/kæt/ 猫 ← 音标 + 中文释义(可选)
用的是真正的四线三格,不是方框。 四条线把一行分成三格,小写字母按 x 高度、上伸、下伸各归其位——这是英语书写练习与中文田字格最本质的区别,也是本工具与「把英文硬塞进方格」的通用模板的核心差异。
适用场景
用户出现以下任一意图时使用本技能:
- 给英语单词生成四线三格字帖 / 描红字帖 / 抄写纸
- 要带音标、带中文释义的单词练习纸
- 按主题出单词练习(动物、颜色、数字、天气……)
- 期末 / 单元单词默写、听写前的书写复习
- 练习衡水体 / 手写印刷体(意大利斜体、连笔不在范围内)
- 教师为全班生成同一套单词的书写作业
触发词:英语字帖、四线格、四线三格、三线格、单词字帖、英语描红、英语练字、单词抄写、单词默写纸、英语书写练习、音标字帖、衡水体、手写印刷体、打印英语字帖。
不适用场景
- 中文 / 汉字字帖(用
xiaoxue-zitie,那是田字格 + 笔顺) - 意大利斜体 / 连笔(cursive):本工具出的是手写印刷体,不做连笔教学
- 笔顺动画 / 视频:只出静态 PDF
- 生成图片格式(只出 PDF,打印质量优于图片)
- 音标需要自动生成:本工具不猜音标,音标与释义必须由词表提供(避免标错误人子弟)
依赖与字体
pip install reportlab # 必需,生成 PDF
pip install pillow # 可选,用于精确测量字形;缺失时退回经验比例
字体按优先级自动查找,无需配置:
| 用途 | 优先级 | 说明 |
|---|---|---|
| 单词 | Ink Free → Comic Sans → Segoe Script → Verdana → Arial → Calibri | Ink Free 是 Windows 10+ 自带英文手写体,笔画简洁无衬线,最接近国内小学英语的手写印刷体 |
| 音标 | Lucida Sans Unicode → Segoe UI → Calibri → Arial → DejaVu | reportlab 内置 Helvetica 只有 WinAnsi 编码,画 IPA 会变黑块,必须换 Unicode 字体 |
| 中文释义 | 黑体 → 微软雅黑 → 宋体 → 等线 → Noto Sans CJK | 与音标分开绘制,否则中文同样变黑块 |
找不到字体时用 --font 指定本地 ttf 路径。Linux 无系统字体时提示用户先安装(如 fonts-dejavu + 任一 CJK 字体)。
工作流程
字帖进度:
- [ ] 1. 收集单词表(用户提供 / 用内置分类词表)
- [ ] 2. 确认选项:格高、描红数、空格数、是否要音标释义、标题
- [ ] 3. 运行 scripts/make_english_copybook.py 生成 PDF
- [ ] 4. 目检(字母是否居中坐格、是否越格、音标中文是否为黑块)
- [ ] 5. 交付 PDF + 打印建议
第 1 步 收词:用户给词直接用;说「动物单词」这类主题需求时用 --preset(内置 10 类);说「三年级单词」这类模糊需求时,明确告知以课本单词表为准,可先出一份内置词表样张给用户看效果。
第 2 步 确认选项(都有默认值,可全部跳过):格高(默认 14mm)、描红(默认 3)、空格(默认 3)、音标释义(默认关,需词表提供)、标题。
第 3 步 生成:
python scripts/make_english_copybook.py --words "cat,dog,apple" --out 字帖.pdf
# FromFile:词表每行 单词,音标,中文释义
python scripts/make_english_copybook.py --file words.csv --phonetic --meaning \
--title "Unit 1 单词" --out 字帖.pdf
# 内置词表 / 大格(低年级)/ 单线格 / 纯默写表
python scripts/make_english_copybook.py --preset animals --out 字帖.pdf
python scripts/make_english_copybook.py --preset colors --cell-h 18 --trace 4 --out 字帖.pdf
python scripts/make_english_copybook.py --file words.csv --grid single --out 字帖.pdf
python scripts/make_english_copybook.py --file words.csv --trace 0 --blank 0 --out 默写表.pdf
第 4 步 目检:打开 PDF 确认——字母是否坐在基线上、上伸字母(b d h k l)是否顶到上线、下伸字母(g p q y)是否落到底线、描红字是否浅且可描、音标与中文是否显示正常。
无法打开 PDF 时,可用 pypdf 提取文本核对:pip install pypdf,然后数一下每个单词出现次数是否等于 1 + --trace(示范 1 次 + 描红 N 次,空格无文本);音标行是否原样出现(若变成空或方框,说明字体缺失)。这是判断渲染是否正确的可靠办法。
第 5 步 交付:PDF 交给用户,附打印建议(见 四线三格规范)。
交付物
英语单词字帖.pdf(文件名用「内容+字帖+日期」,如「六上Unit1单词字帖-2026-09-14.pdf」)。默认输出到用户指定目录;未指定时先询问。如用户还要改(换词 / 调格高 / 加音标),改参数重新生成,不手改 PDF。
使用示例
示例一:家长给一课单词
输入:「这课单词是 cat、dog、apple、banana,做个四线格字帖。」
动作:--words "cat,dog,apple,banana" → 默认参数生成(四线三格、1 示范 3 描红 3 空格)→ 目检 → 交付。
输出:PDF + 打印建议。
示例二:单元词表带音标释义
输入:「按这个表做,带音标和中文。」(附 Unit 1 词表)
动作:整理成 CSV(word,音标,释义)→ --file words.csv --phonetic --meaning --title "Unit 1 单词" → 生成 → 用 pypdf 核对音标未变黑块 → 交付。
输出:PDF。回复中点明:音标来自用户词表,工具不做音标推断,请对照课本/词典核对。
示例三:低年级大格描红
输入:「一年级,格大一点,多描几遍。」
动作:--preset animals --cell-h 18 --trace 4 --blank 2 → 生成 → 交付并提示一年级建议 16–18mm 格高、用 HB 铅笔。
输出:PDF(格高 18mm,字号随之自动放大到约 41pt)。
示例四:期末默写表(只要示范)
输入:「出一张单词默写纸,只要单词,不要描红。」
动作:--file words.csv --trace 0 --blank 0 → 每行多个单词的纯示范表 → 交付。
输出:PDF,一页可放 20+ 词。
审核口径
- 音标与释义必须由用户提供,工具不推断。用户给的词表没有音标时,明确说明并询问是否补充,不要自己造音标。
- 生成后必须目检:字母是否越格(换字体后尤其要查)、音标/中文是否为黑块(字体缺失的典型症状)。
- 词表里有超长单词(如
internationalization)时会自动缩字号,需确认缩小后是否仍然清晰;极端长词建议拆音节或换短词。 - 单词大小写按用户词表原样输出,工具不改写(如
Monday的首字母大写会被保留)。 - 缺字体时脚本会退回 Helvetica(此时 IPA 与中文会出问题),应在交付前确认日志里的「音标字体 / 中文字体」不是
Helvetica。
限制与注意事项
- 生成结果依赖系统字体,不同机器字形略有差异,属正常;字号自适应会按实际字体重新计算,因此不越格这一点在任何机器上都有保证。
- 只出静态 PDF,不做动画 / 视频 / 交互式练习。
- 意大利斜体(连笔)不在范围内;如需连笔字帖应另找专用资源。
- 批量生成超过 60 个单词时建议分单元出多份(单份页数过多不利于打印管理)。
- PDF 是练习工具,握笔姿势与运笔仍需家长 / 教师现场指导。
四线三格的规格、字母占格表、字号自适应算法与打印建议详见 四线三格规范;内置词表与词表准备说明详见 词表参考。