rollcall-classroom-assets 1.0.3 → 1.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/zuoye-app.js +12 -5
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "rollcall-classroom-assets",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.5",
|
|
4
4
|
"description": "Static assets for the classroom workbench (roll-call): app JS, pinyin/xlsx/zxing engines and icons. Published only so they can be served from a China-friendly CDN.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"assets",
|
package/zuoye-app.js
CHANGED
|
@@ -8173,7 +8173,7 @@ const BC_MODE_KEY = 'rollcall_bc_mode';
|
|
|
8173
8173
|
const BC_TIP = {
|
|
8174
8174
|
thermal: '编号 = 班级号 + 姓氏拼音 A→Z 序号(35 班第 1 个 = 3501),全班固定不变。<b>热敏 50×20</b>:一张标签占一页,把打印机纸张设成 50×20 后直接连打,撕下贴作业本封面即可。',
|
|
8175
8175
|
'30x10': '编号 = 班级号 + 姓氏拼音 A→Z 序号(35 班第 1 个 = 3501),全班固定不变。<b>热敏 30×10</b>:便携标签机常用小纸,一张占一页;上行印「编号 + 姓名」、下行是条码,把打印机纸张设成 30×10 后直接连打,撕下贴作业本角即可。',
|
|
8176
|
-
a4: '编号 = 班级号 + 姓氏拼音 A→Z 序号(35 班第 1 个 = 3501),全班固定不变。<b>A4 拼版</b
|
|
8176
|
+
a4: '编号 = 班级号 + 姓氏拼音 A→Z 序号(35 班第 1 个 = 3501),全班固定不变。<b>A4 拼版</b>:一页 <b>4 列 × 14 行 = 56 格</b>(一个班 50 出头也能一页印完,不必跨页),打印后沿虚线剪开,贴作业本封面即可用扫码枪扫。',
|
|
8177
8177
|
a4one: '编号 = 班级号 + 姓氏拼音 A→Z 序号(35 班第 1 个 = 3501),全班固定不变。<b>A4 · 一生一版</b>:一个孩子一张纸,11 行 × 3 列 = 33 张 TA 自己的 50×20 标签;<b>条码带已加高到 12.8mm</b>(贴书脊竖着更好扫),格与格之间留 6mm 空当,落剪刀好裁。'
|
|
8178
8178
|
};
|
|
8179
8179
|
// 打印方式白名单:thermal = 50×20、30x10 = 便携小标签、a4 = 拼版、a4one = A4 一生一版(11×4 同名)。
|
|
@@ -8181,11 +8181,13 @@ const BC_TIP = {
|
|
|
8181
8181
|
const BC_MODES = ['thermal', '30x10', 'a4', 'a4one'];
|
|
8182
8182
|
function normBcMode(v) { return BC_MODES.indexOf(String(v)) >= 0 ? String(v) : 'thermal'; }
|
|
8183
8183
|
// @page 是**整篇文档级**规则,只能由 JS 按当前模式注入一条;三模式各自一张纸,集中在这里。
|
|
8184
|
-
// 热敏纸都不吃页边距(标签本身就是成品尺寸),A4
|
|
8184
|
+
// 热敏纸都不吃页边距(标签本身就是成品尺寸),A4 才要留边距走打印机不可打印区。
|
|
8185
8185
|
const BC_PAGE = {
|
|
8186
8186
|
thermal: '@page{size:50mm 20mm;margin:0}',
|
|
8187
8187
|
'30x10': '@page{size:30mm 10mm;margin:0}',
|
|
8188
|
-
|
|
8188
|
+
// 拼版:8mm → 5mm(第 177 轮,用户:一页要装下整个班,最多 53 人)。
|
|
8189
|
+
// 5mm 下可用 200×287mm → 4 列 × 14 行 = 56 格,一页放下整班;原来 8mm/12 行 = 48 格,53 人要跨页。
|
|
8190
|
+
a4: '@page{size:A4 portrait;margin:5mm}',
|
|
8189
8191
|
// 一生一版:5mm 页边距 → 可用宽 200mm = 4×50mm,正好贴满预裁标签纸
|
|
8190
8192
|
a4one: '@page{size:A4 portrait;margin:5mm}'
|
|
8191
8193
|
};
|
|
@@ -8230,9 +8232,14 @@ function renderBcSheet() {
|
|
|
8230
8232
|
// 出码 h=25(mw=2 → viewBox 12.5 模块高)→ 条码高 6.15mm;模块宽 30/61 = 0.492mm
|
|
8231
8233
|
// (Code128 下限 0.25mm 的 1.97 倍),左右几乎无白边(静止区只留 2 模块)。
|
|
8232
8234
|
// 上行 3mm + 0.15mm 间距 + 条码 6.15mm ≈ 9.3mm,10mm 纸内不跨页。
|
|
8233
|
-
// A4
|
|
8235
|
+
// A4 拼版 :姓名 / 条码 / 编号 三行,剪开即用。第 176 轮:**条码不再写死 35mm 宽**,
|
|
8236
|
+
// 改由 CSS width:100% 撑满格子(见 .mode-a4 .bc-svg),于是出码比例必须同步压扁。
|
|
8237
|
+
// 第 177 轮:一页要装下整班(4 列 × 14 行 = 56 格)→ 行高被压到 ≈18.4mm,
|
|
8238
|
+
// 出码再压一档 h 35 → 30(viewBox 17.5 → 15 模块高):格子内宽 ≈45.3mm 时
|
|
8239
|
+
// 条码高 ≈10.3mm、模块宽 0.69mm(下限 0.25mm 的 2.7 倍),扫得动。
|
|
8240
|
+
// 若沿用 h=35,条码 11.5mm 高 → 整格 ≈19.6mm,14 行 296mm 超一页。
|
|
8234
8241
|
sheet.innerHTML = items.map(x => bcMode === 'a4'
|
|
8235
|
-
? `<div class="bc-label"><div class="bc-nm" title="${esc(x.name)}">${esc(x.name)}</div>${code128Svg(x.code, { mw: 2, h:
|
|
8242
|
+
? `<div class="bc-label"><div class="bc-nm" title="${esc(x.name)}">${esc(x.name)}</div>${code128Svg(x.code, { mw: 2, h: 30 })}<div class="bc-no">${esc(x.code)}</div></div>`
|
|
8236
8243
|
: `<div class="bc-label"><div class="bc-hd"><span class="bc-no">${esc(x.code)}</span> <span class="bc-nm" title="${esc(x.name)}">${esc(x.name)}</span></div>${code128Svg(x.code, { mw: 2, h: bcMode === '30x10' ? 25 : 40, quiet: bcMode === '30x10' ? 2 : 10 })}</div>`
|
|
8237
8244
|
).join('');
|
|
8238
8245
|
applyBcPage();
|