论文

README

2026/05/24 25 min read 论文 我的论文 排版导出 README

毕业论文排版导出

本目录是论文 DOCX/PDF 成品的固定导出入口。论文正文面向评阅教师阅读,禁止出现本机绝对路径、localhost、自动化工具痕迹、临时证据包路径和“待测/待计算”占位。

Canonical Output

  • 源文档:..\刘高朋_毕业论文_生产级精修版_2026-05-16.md
  • DOCX 母版:build\刘高朋_毕业论文_排版终版_2026-05-24.docx
  • PDF 成品:build\刘高朋_毕业论文_排版终版_2026-05-24.pdf
  • 证据报告:evidence\刘高朋_毕业论文_排版终版_2026-05-24_layout_report.json

build\assets\build\*.paper.mdbuild\*.pandoc.mdbuild\*.raw.docx 是导出中间产物;最终交付以 DOCX/PDF 和 layout report 为准。LibreOffice 临时 profile 不保留,脚本结束时会自动清理。

Directory Boundary

  • 本目录只负责论文排版导出,不保存 KiCad 真源。
  • KiCad 论文图件真源在 E:\My Project\KiCad\_workspace\projects\STM32_CO2_Paper_Legacy\KiCad_Source
  • 论文插图输入只允许来自 E:\My Project\KiCad\_workspace\projects\STM32_CO2_Paper_Legacy\artifacts\thesis-assets\latest\07_paper_ready
  • build\assets 是本脚本复制出的当前 13 张图缓存,可以由脚本重建。
  • evidence\*_layout_report.jsonevidence\*_page_*.png 是排版审计证据,不是正文素材真源。
  • 不要从 Obsidian 旧图片目录、任意历史 run、KiCad KiCad_Source 内部截图或应用仓库截图路径直接插入正文。

Before Export

先生成论文图件资产:

& 'E:\My Project\KiCad\_workspace\runtime\Export-ThesisAssets.ps1' -ProjectRoot 'E:\My Project\KiCad\_workspace\projects\STM32_CO2_Paper_Legacy'

图件资产固定进入:

  • E:\My Project\KiCad\_workspace\projects\STM32_CO2_Paper_Legacy\artifacts\thesis-assets\latest

latest 只允许指向全部 gate 为 pass 的图件包。Export-ThesisAssets.ps1 遇到任一 gate 失败会退出非零,并且不会更新 latest。论文导出脚本会读取 latest\06_reports\THESIS_GATE_DECISION.csv,任一 gate 缺失或非 pass 时 直接拒绝生成 DOCX/PDF。

Export Command

python .\scripts\export_thesis.py

Format Contract

  • 纸张:A4。
  • 页边距:左 3.0 cm,右 2.5 cm,上 2.5 cm,下 2.5 cm。
  • 正文:宋体 12 pt,英文 Times New Roman,1.5 倍行距,首行缩进 2 字符。
  • 一级标题:黑体 16 pt,加粗,居中。
  • 二级标题:黑体 14 pt,加粗,左对齐。
  • 三级标题:黑体 12 pt,加粗,左对齐。
  • 图题、表题、公式题:宋体 10.5 pt,居中。
  • 表格:居中、三线表;仅保留表顶线、表头分隔线和表底线,不使用满格边框和灰底。
  • 图片:居中,最大宽度 14.5 cm,保持比例。
  • 页眉:华北水利水电大学毕业设计(论文),宋体小五居中。
  • PDF:只允许从最终 DOCX 通过 LibreOffice 导出,避免 DOCX 与 PDF 两套版式漂移。
  • PDF 成品必须保留渲染页证据,重点检查封面、目录、第 3 章 PCB/3D 图、第 5 章 App 图、第 6 章验证流程图和表格页。

Figure Standard

  • 系统框图、软件架构图、流程图必须优先采用专业制图源文件生成。当前 图2.1图2.2图6.1 的 canonical source 是 PlantUML .puml,由 PlantUML 渲染 SVG,再转论文 PNG;禁止把手写 SVG 或“改颜色的截图”当成主源。
  • 原理图和 PCB 图必须来自 KiCad 或 EDA 正式导出,不手绘替代工程图。
  • PCB 论文图分为正面装配图、背面装配图、顶层铜皮审阅图和 3D 图;禁止用正反铜层叠加 SVG 作为主图。
  • 3D 图只有在 OLED、SCD41、ESP8266 等模块具有真实实体外形、courtyard/keepout 和模块避让证据时,才能称为装配验证图;否则只能称为三维外观渲染图或布局审阅图。
  • DRC 通过不等于机械装配通过。论文正文必须明确区分电气规则检查、板级布局审阅、模块实体装配检查和 1:1 打印贴合检查。
  • 软件界面图使用手机端或页面截图,正文只写“登录页、监测总览页、趋势分析页”等名称,不写文件路径。
  • 图题放图下方,表题放表上方,编号按章节顺序。

Current Figure Toolchain

当前论文不是单一截图流,而是按“工程真源、论文表达图、排版成品图”三层管理。后续项目必须沿用这套分层,不允许把临时截图、手写 SVG 或本机路径直接塞进正文。

图件类型 当前图号 主工具 真源/中间层 论文成品层 使用原则
系统架构图、甘特图、验证流程图 图2.1、图2.2、图6.1 PlantUML + Java .puml 源文件和 .svg 渲染文件 07_paper_ready/*.png,必要时由 export_thesis.py 再裁白边 适合流程、架构、计划类图;必须保留 .puml/.svg/.png 三层,不允许只留 PNG
论文级系统原理图、接口分配图 图3.1、图3.3 draw.io CLI .drawio 源文件,导出 .svg/.pdf/.png figure_01_system_principle_schematic.pngfigure_02_pre_bluepill_schematic.png 用于给评阅者读的解释图;不能替代 KiCad 电气真源
KiCad 原理图证据 附件和审阅导出 KiCad CLI .kicad_pro/.kicad_sch/.kicad_sym/sym-lib-table 02_review_exports/schematic/*.pdf/*.svg 电气连接、ERC 和工程可追溯以 KiCad 为准
PCB 审阅图 图3.4 相关源图、审阅附件 KiCad CLI + ImageMagick front/back assembly SVG、top/bottom copper SVG、1:1 assembly PDF figure_03_pre_bluepill_pcb.png 及审阅 PNG 正反面、铜层、装配审阅必须分开;禁止把正反铜层叠在一张图里冒充专业 PCB 图
PCB 三维图 图3.5 kicad-cli pcb render .kicad_pcb 和 3D render PNG figure_04_pre_bluepill_pcb_3d.png 只能说明外观/布局;缺少真实模块实体时不得称为装配证明
仿真曲线图 图3.2、图3.6 deterministic CSV + SVG + ImageMagick,ngspice 作 smoke evidence CSV、SPICE netlist/log、SVG figure_05_adc_to_co2_simulation.pngfigure_06_i2c_pullup_rise_time.png CSV 是数据证据,SVG/PNG 是展示层;不能只有图片没有数据
手机软件界面图 图5.1 至图5.4 React Native/Expo App 截图 + ImageMagick App 截图源文件 统一画布后的 figure_10figure_13 必须来自真实界面,进入论文前统一比例和白底,避免长图缩到不可读
中文流程替代图 图6.1 最终论文图 Pillow/ImageDraw export script 内部绘制逻辑 build/assets/figure_09_validation_process.png PlantUML 中文渲染异常时才允许脚本绘制;必须固定字体、画布和版式

Figure Pipeline Lessons

  • 一张图必须先回答“它证明什么”:架构图证明模块关系,原理图证明电气连接,PCB 图证明布局,3D 图证明外观,仿真图证明参数趋势,App 图证明交互结果。
  • 工程真源和论文表达图不能混淆。KiCad 是电气/PCB 真源;draw.io 和 PlantUML 是论文表达层;ImageMagick/Pillow 只做转制、裁剪、统一画布,不拥有工程事实。
  • 论文正文只引用 build/assets/<filename>.png,这些图片必须从 artifacts/thesis-assets/latest/07_paper_ready 复制生成。正文不得引用 Obsidian 旧图、本机截图路径、历史 run 路径或 App 仓库路径。
  • 线稿图优先保留矢量源。凡是系统框图、流程图、甘特图、曲线图,至少保留源文件和 SVG,再导出 PNG 进入 DOCX。
  • 位图进入论文前必须裁白边、统一画布、居中,并通过 PDF 页面渲染复核。图 2.1 曾因源图大白边和插入位置错误导致单页空白,后续必须把“裁白边 + 页面目检”作为固定门槛。
  • 图片大小不是越大越好。普通架构图不应单独占满一页;PCB 或原理图可以更大,但必须让读者在 PDF 页面中看清关键文字、焊盘、模块边界和图题。
  • 表达图可以美化,但不能篡改工程事实。手册参数、器件型号、接口关系、网络名和验证结果必须来自 KiCad、仿真 CSV、报告或代码事实。
  • 每次导出必须检查图片数量、图号、题注、首次引用、页内留白、图题位置和黑白打印可读性。文件存在不等于图可用。

Production Lessons From 2026-05-24 Export

这些经验必须进入后续导出脚本和 Dify 工作流的验收条件,不能靠人工记忆补救。

  • DOCX 内嵌图片数量必须等于论文图清单数量。本次目标是 13 张,验证项为 embedded_images == referenced_images == 13
  • Pandoc 不能直接依赖带空格的本机绝对路径。论文图片必须先复制到 build\assets\,正文 Markdown 只引用 assets/<filename>.png
  • missing_images 必须硬失败,不能只打印 WARNING。图片没嵌进去的 DOCX/PDF 不能交付。
  • PCB 论文图不能直接使用 KiCad 小尺寸 SVG 转 PNG。必须经过 trim、白边、固定画布和页面渲染复核,当前论文版 PCB 为 1600 x 1080。
  • 3D 图必须由 kicad-cli pcb render.kicad_pcb 生成,不能用示意图替代。
  • 3D 图缺少模块实体时,报告必须记录 mechanical_evidence.status,正文不得把该图称为“装配证明”或“可直接打样证明”。
  • 仿真图必须同时保留数据表和图像:CSV 是证据源,PNG/SVG 是论文展示层。
  • 软件截图要用真实应用页面截图,不能用空白 UI 或手画 mock。手机长图进入论文前要统一画布,避免缩放后文字不可读。
  • 最终 PDF 必须由最终 DOCX 导出;验证顺序是 DOCX 统计、PDF 文本乱码检查、关键图号搜索、关键页截图目检。
  • 旧 Obsidian 图片、旧流程图、旧本机路径只能从最终论文链路剔除,不物理删除论文原始资料。
  • 专业图不能只改颜色。figure_07_system_architecturefigure_08_project_ganttfigure_09_validation_process 必须保留 .puml 源、.svg 渲染图和 .png 论文图三层产物。
  • PlantUML 渲染失败必须硬失败,不能允许缺失 7/8/9 图的半包成为 latest
  • latest gate CSV 是论文图件进入正文的执行入口,不允许手改 CSV 或把历史失败 run 目录直接作为 THESIS_ASSETS

World-Class Benchmark

对标一流论文时,重点不是把本科论文改成期刊模板,而是把图件和证据链做到期刊级干净、可读、可追溯。

  • 线稿优先矢量。 系统架构图、流程图、曲线图、表意图优先保留 SVG/PDF/EPS 级源文件,再导出论文用 PNG。IEEE 明确建议矢量图便于缩放;Nature 也要求最终图件尽量可编辑。
  • 分辨率按图型分级。 IEEE 给出的常用标准是彩色/灰度位图高于 300 dpi,黑白线稿高于 600 dpi;Nature Communications 对非矢量线稿要求可到 1200 dpi;Elsevier 对图表类 line art 常用 1000 dpi、其他位图 500 dpi 的建议。
  • 黑白线框更适合工程论文主体。 原理图、PCB 审阅图、架构图、流程图、算法流程图优先黑白或灰度;颜色只用于 3D 实物/界面/少数强调曲线,且颜色不能成为理解图意的唯一信息。
  • 图中文字要按最终印刷尺寸设计。 Elsevier 建议最终图中文字约 7 pt,角标不小于 6 pt。论文导出时不能先做超大图再任意缩小,否则截图中的文字会变糊。
  • 一图一目的。 顶级论文通常避免把太多细节塞进一张图:系统框图讲架构,原理图讲电气连接,PCB 图讲布局,3D 图讲装配,仿真图讲验证结论,App 图讲交互结果。
  • 图题必须解释图的结论,而不是只描述文件。 例如“图3.6 I2C 上拉电阻与总线电容上升时间仿真”比“仿真截图”更接近论文表达。
  • 表格用三线表。 正文表格尽量不用满格边框和灰底;表题在表上方,图题在图下方。
  • 证据链不进正文路径。 期刊论文不会把本机目录、工具日志路径写入正文;这些进入附录、manifest 或 evidence report。
  • 最终交付要有可复核包。 DOCX/PDF 是读者交付物,layout report、page render、ERC/DRC、仿真日志、源文件 hash 是审查交付物。

参考规范:

Next Quality Targets

当前版本已经做到可交付;如果继续向“世界一流论文图件”靠近,下一轮应优先做这些改进:

  • 已将系统架构图、证据闭环图、甘特图从手写 SVG 升级为 PlantUML 专业制图源。下一轮可继续评估 draw.io / Visio / Graphviz 专用模板是否比 PlantUML 更适合学校论文图面。
  • 为曲线图保留 SVG/PDF 矢量版本,并在 DOCX 中优先嵌入高分辨率位图或 PDF 转换图。
  • 为 PCB 图增加单独的“黑白装配审阅图”和“彩色 3D 装配图”,正文中黑白图讲工程结构,彩色图讲实体效果。
  • App 截图应裁成统一手机比例版和网页比例版,正文只保留最能支撑论文论点的 2 到 4 张。
  • 每张图进入正文前检查:是否被正文首次引用、是否有图题、是否独立可读、是否黑白打印仍可理解。

Reader-Facing Text Rules

  • 可以写“样机阶段典型测试记录”,后续实测后替换数值。
  • 不在正文中出现 E:\C:\localhostnot_runblockedDifyAICodexworkflowartifact 等过程痕迹。
  • 工程验证只写成“原理图电气检查、PCB 设计规则检查、一阶电路仿真、固件构建检查、资料归档”等论文表达。
  • 参考资料和附录只列材料类别,不列本机路径。

Reference Material Boundary

..\参考资料 中的 PDF 和图片作为论文内容与图示风格参考,不是学校官方 Word 模板。当前导出流程按本目录的 Format Contract 生成稳定版式;后续如果拿到学校官方 .docx/.dotx 模板,应替换这里的排版契约,再重新执行同一个导出入口。