← ClaudeAtlas

13listed

一键生成可打印中文字帖与练习纸:米字格、田字格、回宫格、九宫格、四线三格等 13 种,支持汉字居中、自动换行、拼音标注。适合书法练字、小学语文作业、早教字卡,打印即用。
shuangying0001-beep/canvas-grid-engine · ★ 0 · AI & Automation · score 76
Install: claude install-skill shuangying0001-beep/canvas-grid-engine
# Canvas 学习纸网格渲染引擎 > 教备神器 · 工具模块。纯前端 Canvas 2D,零依赖,浏览器与微信小程序通用。 ## 这是什么(给人看) 做字帖、练习纸、可打印学习用纸时,最麻烦的是把"米字格/田字格/回宫格"等网格画准、把汉字居中、把拼音自动标好。本技能给你一套**开箱即用的网格引擎**:导入 `references/grid-engine.js`,调几个函数就能渲染任意网格 + 居中汉字,直接导出 PNG 或接 PDF。老师、教辅、国学机构做纸质练习必备。 - 已附 `minimal-grid.html`:浏览器打开即见效果(米字格 + 12 字)。 - 已附 `selftest.js`:Node 跑通布局/图元/排版数学自测,证明算法靠谱。 ## 何时使用 - "生成一张米字格字帖" / "做田字格练习纸" / "画 13 种网格" - 小程序里要把文字居中画进格子、自动标拼音 - 需要 A4 1240×1754 标准分辨率输出 ## 坐标系与令牌(AI 必读) - **A4 内部分辨率固定 1240×1754(150dpi)**,与 SVG 源 `viewBox 21000×29700` 对应,换算 `SVG→px ≈ 0.0590476`。 - **显示缩放用 `canvas.style.width/height`**,绝不改 `canvas.width/height`(否则导出模糊)。 - **设计令牌** `TOKENS`:`green #07C160`、`black #2C2C2C`、`red #CC1414`、`blue #2B5FD9`、`gridLine #BBBBBB`、`innerDash #CCCCCC`、`pinyin #999999`。 - **内部辅助线统一虚线** `setLineDash([6,4])`、线宽 1、色 `#CCCCCC`;外框线用实线。 ## 核心函数签名(AI 直接调用) ```javascript // 布局:返回 { startX, startY, cells:[{row,col,x,y,size}] },自动水平居中 GridEngine.computeLayout({ gridSize, cols, rows, margin, pageW?, pageH?, startY? }) // 单格网格图元(局部坐标):支持 mizi/tianzi/huigong/jiugong/fangge/ // hengxian/sixian/wuge/mizihuigong/tianzisidian/dianzhen/huangjinyuan GridEngine.gridSegments(type, size) // -> [{t:'line'|'dot'|'circle', ...}] // 绘制单格网格(需 2D ctx) GridEngine.drawGrid(ctx, type, cell, { color?, lineWidth? }) // 格内居中绘字(自动按宽度缩放,不溢出);可带拼音(格上 1/4 区) GridEngine.drawCharInCell(ctx, char, cell, { font?, color?, pinyin? }) // 字号自适应:不超过格短边 0.85 GridEngine.fitFontSize(char, cellSize, ctx, baseFont) // -> px // 逐字顺排:空