Agent Skills
返回列表
eCTD PDF 验证助手

eCTD PDF 验证助手

行业专业 更新于 2026.08.30

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_02150857/ectd-pdf-validator。

技能介绍

解决的核心问题

eCTD 递交至中国 CDE 时,PDF 需满足 28 项技术验证规则(如书签结构、超链接有效性、字体嵌入、加密状态、初始视图等),传统流程中常面临以下痛点:

  • 依赖外部工具:需安装 Adobe Acrobat 等商业软件,或引入 pdf.js 等第三方库,环境配置繁琐
  • 批量处理困难:缺乏递归扫描文件夹、批量校验的自动化能力
  • 报告格式单一:结果输出依赖人工检查,难以生成结构化的 Markdown/HTML 报告供存档或协作
  • 修复风险不可控:部分工具的自动修复可能破坏文档内容(如误删 JavaScript 或注释),且无法区分“安全修复”与“破坏性修改”

工作原理

该技能以零依赖的 Node.js 脚本为核心,通过以下步骤实现合规校验:

  1. 字节级 PDF 解析:内置自研 PDFRawParser,直接读取 PDF 原始字节,解析文档结构(大纲/书签、链接注释、字体表、安全设置、元数据、线性化信息),无需依赖 pdf.js 或外部 PDF 软件
  2. 规则引擎校验:对照 CDE V1.1 标准的 28 项规则(如 6.8 书签继承缩放、6.26 字体嵌入、6.19 加密检测),逐条判断通过/失败,并标记错误等级([错误]/[警告]/[提示])
  3. 批量处理与报告生成:支持递归扫描目录下所有 .pdf 文件,默认输出 Markdown 报告(--md,可直接粘贴至 Obsidian 或文档系统),或通过 --html 生成带样式的 HTML 报告便于浏览器查看
  4. 可选修复模式:

- --fix(默认破坏性修复):自动处理 JavaScript 删除、非链接注释清理、外部链接移除等,输出 原名_fixed.pdf 并重新校验前后对比
- --safe-only(非破坏性修复):仅处理书签/链接继承缩放(6.8/6.15)、初始视图(6.20)、文件名(2.5)等不修改内容的项

适用边界与注意事项

  • 无法自动修复的场景:字体嵌入(6.26,需字体二进制)、可搜索文本(6.25,需 OCR)、文件大小限制(2.2)、损坏书签目标(6.5,需手动重定位)仅生成报告,需人工处理
  • 破坏性修复风险:--fix 默认删除 JavaScript/非链接注释/外部链接,可能改变文档内容;加密/密码保护(6.19/6.21)仅检测不自动移除,需手动处理
  • 规则局限性:规则 6.14(多动作超链接)为占位符检查,与原始浏览器工具行为一致,始终显示通过
  • 标准更新适配:文件大小限制(2.2)等阈值基于 CDE V1.1 默认值,若标准更新需在 scripts/ectd-core.js 的 VALIDATION_RULES 中调整

典型适用场景

  • 药品注册资料递交前的 PDF “体检”,快速定位书签/超链接/字体合规问题
  • 批量处理 CTD 模块 PDF 文件夹,生成标准化合规报告供药审中心审查
  • 需保留原始文档内容时,通过 --safe-only 执行非破坏性修复并验证

该工具通过自研字节级解析引擎,将 eCTD PDF 合规校验从依赖外部工具的手工流程,转化为可脚本化、可批量化、可追溯的技术验证环节,尤其适合需严格遵循 CDE V1.1 标准的药品注册资料管理场景。

使用场景

  • 药品注册资料递交前,需要逐项检查PDF是否符合CDE书签、超链接、字体嵌入等28项规则,避免被药审中心打回。
  • 处理CTD模块文件夹时,需递归扫描所有PDF批量校验,生成统一格式的合规报告供内部审核存档。
  • 发现PDF有JavaScript或非链接注释,需在不破坏内容的前提下执行安全修复,并对比修复前后结果。
  • 检测到PDF加密或密码保护,需确认是否符合eCTD要求,同时无法自动解除加密时需人工处理并记录。

适合人员

  • 药品注册专员:需确保申报资料PDF符合CDE验证规则,避免技术审查不通过导致流程延误。
  • eCTD递交项目管理员:负责批量处理CTD模块PDF文件夹,需快速生成合规报告供质量审核。
  • 药品注册资料技术审核员:需逐条对照CDE规则验证PDF结构合规性,记录不符合项并跟踪修复。
  • CDE验证工具开发者:需了解PDF解析规则和修复逻辑,以便维护或扩展验证工具功能。