Files
ElyOffice/tasks/reviews/P-14-r1.md
T
2026-10-10 00:29:44 -04:00

4 lines
1.0 KiB
Markdown

FAIL
crates/ely-pdf-engine/shim/ely_text.c:320 — 字体名改用 `ely_json_string` 后,非 UTF-8 名称中的高位字节被原样写入 JSON,导致整页文字块读取失败,违反 PRD PDF-03。复现:单页 PDF 使用字体 `<< /Type /Font /Subtype /Type1 /BaseFont /Review#E9Font /Encoding /WinAnsiEncoding >>`,内容为 `BT /F1 24 Tf 72 700 Td (ABC) Tj ET`;真实 worker 的 `text` 正常返回 `ABC`,当前 `text_blocks` 报 `invalid unicode code point at line 1 column 71`。同一探针在旧 `%q` 实现下通过,返回文字 `ABC`、字体 `Review�Font`、`editable=true`。`ely_json_string` 按字节写出字体名中的 `0xE9`,使这类原本可编辑的页面无法取得文字块。修复方向:保证字体名经过明确的编码处理后产生有效 UTF-8,再进行包含控制字符的 JSON 转义;添加上述字体名称的真实 worker 回归测试。复现源码与前后日志:`/tmp/ely-p14-probe-source.log`、`/tmp/ely-p14-font-before.log`、`/tmp/ely-p14-probes.log`。