paper-burner/tests/README_TESTS.md

4.1 KiB
Raw Blame History

📚 Tests 目录

本目录包含所有与表格渲染修复相关的测试文件和文档。


📂 目录结构

🎯 核心文档(必读)

推荐测试页面

  1. test-table-fix-visual-comparison.html - 前后对比(最佳视觉效果)
  2. test-renderbatch-table-fix.html - 完整渲染流程测试
  3. test-fix-diagnostic.html - 诊断页面

📋 表格渲染测试

  • test-table-rendering.html - 基础表格渲染测试5个测试用例
  • test-compressed-table-fix.html - 压缩表格修复演示
  • test-compressed-debug.html - 压缩表格调试
  • test-table-debug.html - 表格调试页面

🔬 公式渲染测试

  • test-all-formula-fixes.html - 综合公式测试
  • test-formula-issues.html - 常见公式问题
  • test-brace-issue.html - 花括号公式
  • test-double-dollar.html - 块级公式
  • test-inline-formula-fix.html - 行内公式
  • test-specific-formulas.html - 特定公式案例

🧪 其他测试文件

本目录还包含项目其他部分的测试文件如注释、词汇表、AST 等)。


🚀 快速开始

从项目根目录运行测试

# Windows
start tests/test-table-fix-visual-comparison.html

# 或使用 macOS/Linux
open tests/test-table-fix-visual-comparison.html

查看文档

# 在 VSCode 中打开主文档
code tests/IMPLEMENTATION_COMPLETE.md

# 查看测试文件使用指南
code tests/TEST_FILES_GUIDE.md

验证修复效果

1. 打开推荐测试页面

start tests/test-table-fix-visual-comparison.html

2. 刷新实际应用

  • Ctrl + Shift + R 清除缓存并刷新
  • 打开包含表格的文档(如 Block #31

3. 检查控制台日志

F12 打开浏览器开发者工具,应该看到:

[renderBatch] 检测到 paragraph token 包含表格语法
[SubBlockSegmenter] 跳过分块以保持表格完整性
[renderBatch] 重新渲染表格成功

4. 验证表格渲染

  • 所有表格应显示为 <table> 元素(而非 <p>
  • 表格应有边框和表头背景色
  • 压缩表格已自动展开为多行格式

📖 详细说明

三层修复机制

  1. 第一层Token 类型检测与强制转换

    • 检测被误判为 paragraph 的表格
    • 强制修正 token 类型为 table
  2. 第二层:优先使用 AST 渲染器

    • MarkdownProcessorAST 支持压缩表格修复
    • 自动展开单行表格为多行格式
  3. 第三层:后验检查与重新渲染

    • 如果仍然是 <p> 则提取内容重新渲染
    • 兜底保护确保表格正确显示

修复的问题

  • 压缩表格自动修复(单行表格展开)
  • Sub-block 分割器保护表格(不分割)
  • 强制正确的 token 类型
  • 60+ LaTeX 公式错误自动修正
  • 表格中的公式正确渲染

🐛 故障排除

如果表格仍然无法正确显示:

  1. 清除缓存Ctrl + Shift + R
  2. 检查脚本加载:打开控制台,执行:
    console.log(typeof MarkdownProcessorAST); // 应该输出 'object'
    console.log(typeof FormulaPostProcessor); // 应该输出 'object'
    
  3. 启用调试模式
    localStorage.setItem('ENABLE_SUBBLOCK_DEBUG', 'true');
    
  4. 查看详细文档TEST_FILES_GUIDE.md 中有完整的故障排除指南

📞 更多信息


状态: 所有修复已完成并测试通过

最后更新: 2025-11-12