在线预览 DOCX/PPTX 版式差异对比与字体替换建议 AI 提示词 (Prompts)

这篇内容是什么

下面给你一条可直接复制到 AI 的“在线工具生成型”提示词(Prompts)。目标是让 AI 一次性产出一个可运行、可构建、可部署的在线工具:上传 DOCX/PPTX 后进行在线预览,并生成“版式差异对比 + 字体替换建议”的自检报告,适合在跨系统/跨字体环境下做排版回流风险排查。

覆盖场景

适用于:Windows/Mac/Linux 之间协作;客户机缺字导致排版变化;导出 PDF 前需要快速对比;同一份文件在不同字体映射/不同渲染引擎下的差异定位;需要把差异点(页/幻灯片/坐标)标出来方便返工。

交付物要求(必须输出)

AI 需要输出:完整项目源码(前端+后端)、清晰的文件树、可复现的运行命令、Docker 部署方案、以及测试用例或 QA checklist。工具必须提供 Web UI,可在浏览器中完成上传、预览、对比与报告下载。

Prompt(复制到 AI)

你是一名资深全栈工程师 + 文档渲染专家。请从零生成一个“在线预览 DOCX/PPTX 版式差异对比与字体替换建议”工具的完整可运行项目。 【产品目标】 - 用户上传 DOCX 或 PPTX(单个文件)。 - 系统在服务器端用两套“渲染配置”生成预览: A 配置:默认字体映射(如 Noto/Source 系列),缺失字体使用可配置的 fallback。 B 配置:另一套字体映射(模拟目标环境),并允许用户在 UI 中指定“替代字体映射表”。 - 把 A/B 生成的每页(DOCX->PDF->PNG)或每张幻灯片(PPTX->PDF->PNG)做像素级 diff,输出: - 差异热力图/标注图(只针对差异区域,不是生成新图片内容,而是对比产生的标注结果) - 差异面积占比、差异块数量 - 对应页码/幻灯片编号 - 可能原因:字体缺失、行距变化、字形宽度差异、换行点变化 - 输出“字体诊断报告”: - 解析文档中引用的字体列表(含字体名称、是否嵌入、是否可用) - 给出替代字体建议(基于字形家族、衬线/无衬线、等宽、CJK 覆盖) - 生成一份可下载的 JSON 映射模板(originalFont -> replacementFont) 【技术约束】 - 必须提供一键运行:本地运行 + Docker 运行两套方式。 - 不得依赖任何需要手动安装的商业软件。 - DOCX/PPTX 转换建议使用 LibreOffice headless(容器中安装),将其转换为 PDF。 - PDF 转 PNG 可用 poppler(pdftoppm)或其他开源方案。 - 图片 diff 可用 pixelmatch 或 OpenCV。 - 前端使用 React + Vite(或纯 HTML/JS 也可,但需美观可用)。 - 后端使用 Node.js (Express/Fastify) 或 Python (FastAPI)。 - 文件处理必须有:大小限制、类型校验、临时目录清理、超时控制。 【功能清单】 1) 上传页:拖拽上传、显示文件信息。 2) 预览页:分页/逐张预览 A 与 B,并可切换“对比模式”(左右/叠加/差异图)。 3) 字体页:列出检测到的字体,标记缺失/替代情况;允许编辑映射表并重新生成 B 版本。 4) 报告导出:一键导出 ZIP: - diff 标注图 - summary.json(统计与结论) - fonts.json(字体诊断) - mapping-template.json(可编辑模板) 5) API: - POST /api/jobs 创建任务 - GET /api/jobs/:id 查询进度 - GET /api/jobs/:id/result 下载结果 【必须输出的交付物】 A. 完整文件树(逐层列出)。 B. 全部关键源码(前端、后端、转换与 diff 逻辑、字体解析逻辑、任务队列/进度)。 C. 运行命令:开发模式、生产构建、Docker build/run。 D. 部署说明:端口、环境变量、存储目录、并发与超时设置。 E. 测试与 QA: - 至少 5 条自动化测试(或可运行的脚本测试),覆盖:上传校验、任务生成、超时、结果结构、清理逻辑。 - 一份 QA checklist(包含不同字体缺失、不同页数、异常文件、并发)。 【实现细节要求】 - 转换与 diff 建议采用“任务制”避免阻塞:每个 job 在独立工作目录,完毕后生成 result.zip。 - 差异检测:对每页生成 diff.png 与 diff.json(记录差异块 bounding boxes)。 - 字体解析: - DOCX:解析 word/fontTable. 与 styles. ; - PPTX:解析 ppt/theme/theme1. 与 slideMaster/slideLayout 中的字体引用; - 同时输出实际渲染端可用字体列表(从系统字体目录扫描,或容器内预置)。 - UI 必须显示“差异强度阈值”与“忽略微小差异”的参数,并能触发重新 diff。 请直接开始输出项目,不要写空泛方案,不要只给伪代码。所有内容都用中文注释/说明,代码本身保持常规英文命名。

使用建议

如果你的目标环境字体较特殊,先在“字体页”把映射表补齐,再跑一次 B 版本生成 diff;对比结果中差异区域密集的页/幻灯片优先返工检查。报告里的 mapping-template.json 可以作为团队共享的字体替换基线。

用户评论 (0)

登录后参与讨论

立即登录 注册账号

暂无评论,快来抢沙发吧~

操作成功