laoyang
|
fb7c76b944
|
装订线虚线方向修正:横杠改回竖杠 #20
用户反馈:「这个装订线不行,得改,需要跟之前的模板保持一致。」
## 问题:整条装订线成了「梯子」
#20 把连字符虚线改成几何线画时,方向画反了。逐像素对比基线与修改后:
基线(18bp 连字符 rotate 90°):x 51.10~52.10(宽 1.10)、y 跨 4.30
改后(我画的水平线) :x 49.40~53.70(宽 4.30)、y 跨 1.00
即基线的每一笔是**竖着的短杠**,我画成了**横着的短杠**。一排横杠叠在
竖线位置上,视觉上就是一把梯子,与原卷完全不同。
## 根因:量数据时没分辨长宽各自对应哪个轴
上一轮 720dpi 扫描得到「长 4.40bp、粗 1.10bp、x 中心 51.60bp」,
三个数都对,但**装配时把「长」放到了 x 轴、「粗」放到了线宽**。
连字符经 rotate=90 后,字面长度落到**纵轴**、线粗落到**横轴**:
竖:y 跨 4.30bp(连字符的字面长度)
横:x 跨 1.10bp(连字符的笔画粗细)
中心 x = 51.60bp
## 修法
- \draw[line width=1.10bp] (49.40, -y) -- (53.70, -y); ← 水平线(错)
+ \draw[line width=1.10bp] (51.60, -y) -- (51.60, -y-4.30); ← 竖直线(对)
x 恒定在 51.60,y 跨 4.30bp。单笔画长度用 4.30(720dpi 实测的墨迹边界),
不是之前写的 4.40(那是含抗锯齿溢出的粗估值)。
## 验证:与基线逐像素同值
装订线区域(x 48~56, y 55~690)在 300dpi 下的墨迹像素数:
基线 7553 像素(8.40%)
新版 7553 像素(8.40%) ← 完全相同
逐段比对(720dpi 逐行扫描,过滤掉「装订线」三个汉字的干扰):
段 笔数 顶端 y 末笔底 y 单笔长 笔距
1 24 62.20 204.90 4.30 6.00
2 24 216.50 358.60 4.30 6.00
3 3 364.80 379.50 4.30 6.00
4 13 393.40 469.60 4.30 6.00
5 16 475.80 568.30 4.30 6.00
6 16 582.10 676.30 4.30 6.00
新版逐段同值,单笔长 4.20 vs 4.30 的 0.1bp 差异是抗锯齿边缘取整。
x 位置 51.00~52.00 vs 51.10~52.10 同样差 0.1bp(亚像素取整),肉眼不可见。
## 编译验证
Windows / TeX Live 2022 试卷 rc=0 err=0 over=0 6页
答案卷 rc=0 err=0 over=0 3页
WSL / TeX Live 2025 试卷 rc=0 err=0 over=0 6页
答案卷 rc=0 err=0 over=0 3页
答案卷不走装订线(\oucexam 的 shipout 钩子只属于试卷),未受影响。
涉及文件:试卷/oucexam.sty(仅 \ouc@dashseg 一个宏 + 注释)
|
2026-10-29 21:35:57 +08:00 |
|