跳到正文
cccskills
免费在 GitHub 公开中文介绍

nature-image2ppt

将幻灯片图片、截图、扫描版 PDF 或纯图片演示文稿重建为可编辑的 PowerPoint。文字和简单图形可作为独立对象,并对照原图检查页面与整份演示文稿的效果。

原文查看原文说明

Reconstruct slide images, screenshots, scanned PDFs, or image-only PPTX files as object-level editable PowerPoint. Use for 图片转可编辑PPT、截图还原PPT and diagram reconstruction; not authoring a new deck from research notes.

集成工具PowerPoint

实测评分 未实测

查看安装方法

适用场景

  • 从截图恢复幻灯片
  • 将扫描版 PDF 转为 PowerPoint
  • 用可编辑图形和连接线重建示意图
  • 编辑纯图片格式的演示文稿

中文介绍

功能

将幻灯片图片、截图、扫描版 PDF 和只有图片的 PowerPoint 文件,重建为各个元素都可单独编辑的演示文稿。文字、简单图形、箭头和连接线可以重新制作成独立的 PowerPoint 对象;复杂部分则可按需要保留为图片。工具会将输出效果与原图进行对照,并分别检查单页和整份演示文稿的质量。原有的演讲者备注也会保留。

适用场景

当可编辑的源文件已经丢失,只剩截图或扫描页面时,可以用它修改资料。它也适用于替换示意图中的文字或箭头、把扫描版 PDF 转成 PowerPoint,或重新利用已经扁平化为图片的幻灯片。

使用示例

  • “请把这张幻灯片图片重建为文字和图形都可编辑的 PPTX。”
  • “请把这份扫描版 PDF 转成 PowerPoint,并说明哪些部分仍是图片。”

注意事项

需要 Python 3.10 或更高版本,并安装 requirements.txt 中的依赖。配置了 Baidu AI Studio 的 PADDLE_OCR_TOKEN 时,OCR 会使用该服务。未配置时,builtin-ink 只能测量文字的位置和大小,不能识别文字内容。公式绘制也需要相应的处理环境。

本介绍由 AI(OpenAI Codex)根据公开的 SKILL.md 撰写。准确的规格请查看下方原文。

文档检查

AI 根据 SKILL.md 的内容检查了需要注意的操作和使用前提。评分只依据实际运行的结果(实测对比)。

安全性发送数据、删除文件、执行命令等是否有说明
A良好写入范围限定在所属目录内,越界会被视为硬性失败。
安装难易度所需工具和 API 密钥是否少且有说明
B部分不足需要 Python 3.10 及以上版本和依赖项;OCR 令牌为可选。

不计入评分。 由 AI(OpenAI Codex)于 2026年10月24日 评估。仅供参考,安装前请同时查看原文。

如果您认为评估有误,请申请复核

请写明哪一项有误以及原因。无需登录。我们会对照 SKILL.md 重新评估,并在此处更新结果。

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

包含的文件(91)

  • SKILL.md9.8 KB
  • .gitignore573 B
  • agents/openai.yaml272 B
  • cli/image2ppt/__init__.py22 B
  • cli/image2ppt/cli.py698 B
  • cli/image2ppt/runtime/__init__.py69 B
  • cli/image2ppt/runtime/_input_normalization.py15.9 KB
  • cli/image2ppt/runtime/_page_artifacts.py4.5 KB
  • cli/image2ppt/runtime/build_pptx_from_manifest.py54.0 KB
  • cli/image2ppt/runtime/configure_image_backend.py5.8 KB
  • cli/image2ppt/runtime/deck_run_state.py5.6 KB
  • cli/image2ppt/runtime/deck_text_hints.py6.7 KB
  • cli/image2ppt/runtime/finalize_deck_run.py3.0 KB
  • cli/image2ppt/runtime/formula_renderer.py9.6 KB
  • cli/image2ppt/runtime/image_gen.py36.9 KB
  • cli/image2ppt/runtime/main.py39.6 KB
  • cli/image2ppt/runtime/make_page_contact_sheet.py1.1 KB
  • cli/image2ppt/runtime/paddle_text_hints.py10.6 KB
  • cli/image2ppt/runtime/page_job_status.py2.1 KB
  • cli/image2ppt/runtime/page_text_metrics.py11.6 KB
  • cli/image2ppt/runtime/prepare_deck_run.py7.3 KB
  • cli/image2ppt/runtime/process_asset_sheet.py6.0 KB
  • cli/image2ppt/runtime/record_imagegen_result.py5.9 KB
  • cli/image2ppt/runtime/record_page_dispatch.py2.8 KB
  • cli/image2ppt/runtime/record_page_result.py4.5 KB
  • cli/image2ppt/runtime/remove_chroma_key.py13.5 KB
  • cli/image2ppt/runtime/reset_page_job.py2.6 KB
  • cli/image2ppt/runtime/runtime_env.py18.7 KB
  • cli/image2ppt/runtime/split_alpha_components.py9.2 KB
  • cli/image2ppt/runtime/text_hints.py14.0 KB
  • cli/image2ppt/runtime/validate_pptx.py38.7 KB
  • cli/pyproject.toml570 B
  • config.example.yaml1.0 KB
  • LICENSE1.1 KB
  • manifest.yaml480 B
  • prompts/page-worker-base.md7.4 KB
  • prompts/page-worker.md5.1 KB
  • README_EN.md4.3 KB
  • README.md4.0 KB
  • references/assets-provenance-contract.md2.9 KB
  • references/cli-helper.md17.8 KB
  • references/manifest-arrow-extension.md2.5 KB
  • references/manifest-schema.md19.9 KB
  • references/object-routing.md3.4 KB
  • references/ocr-text-hints-contract.md3.0 KB
  • references/page-decision-tree.md21.7 KB
  • references/qa-contract.md5.4 KB
  • references/region-decomposition.md6.5 KB
  • references/runtime-dependencies.md2.5 KB
  • references/workflow.md6.7 KB
  • requirements.txt176 B
  • schemas/page-manifest-v2.schema.json2.9 KB
  • scripts/build_page_worker_prompt.py4.1 KB
  • scripts/inspect_arrow_atomicity.py7.3 KB
  • scripts/inspect_region_decomposition.py18.1 KB
  • scripts/postprocess_manifest_arrows.py18.4 KB
  • scripts/render_image2ppt_qa.py11.1 KB
  • scripts/run_final_image2ppt_qa.py9.0 KB
  • scripts/run_image2ppt_qa.py9.3 KB
  • scripts/runtime_paths.py4.0 KB
  • scripts/visual_review_evidence.py5.4 KB
  • tests/support.py6.4 KB
  • tests/test_console_portability.py1021 B
  • tests/test_deck_slide_size.py1.1 KB
  • tests/test_dispatch_concurrency.py2.9 KB
  • tests/test_formula_renderer.py4.3 KB
  • tests/test_independence.py2.2 KB
  • tests/test_input_normalization_alpha.py2.3 KB
  • tests/test_input_normalization_opc_targets.py1.9 KB
  • tests/test_isolated_lifecycle.py9.5 KB
  • tests/test_manifest_arrows.py8.6 KB
  • tests/test_migration_parity.py3.2 KB
  • tests/test_multi_agent_backend.py80.8 KB
  • tests/test_ocr_http.py16.7 KB
  • tests/test_paddle_result_url_safety.py3.2 KB
  • tests/test_page_hints.py10.4 KB
  • tests/test_path_confinement.py7.5 KB
  • tests/test_pdf_backend.py4.3 KB
  • tests/test_project_metadata.py4.7 KB
  • tests/test_quality_contracts.py9.1 KB
  • tests/test_region_decomposition.py6.2 KB
  • tests/test_render_guard.py2.4 KB
  • tests/test_runtime_config.py2.6 KB
  • tests/test_runtime_paths.py2.2 KB
  • tests/test_script_inventory.py2.1 KB
  • tests/test_slide_layout.py9.3 KB
  • tests/test_state_e2e.py7.8 KB
  • tests/test_structure_reconstruction.py12.5 KB
  • tests/test_thin_profile.py4.0 KB
  • tests/test_visual_review_evidence.py2.3 KB
  • tests/test_visual_review_runtime.py2.9 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Nature Image2PPT

Use this directory as the complete runtime. Run deterministic actions only through:

python <image2ppt-root>/cli/image2ppt/cli.py <command> ...

Use Python 3.10 or later with requirements.txt installed. When a dedicated environment exists, substitute <image2ppt-root>/.venv/bin/python on macOS/Linux or <image2ppt-root>/.venv/Scripts/python.exe on Windows for every python command below. Do not continue after a failed doctor; install only the reported missing dependency, then rerun it.

Do not discover or invoke another Skill, CLI, Prompt, Schema, module, or state machine.

Read the local contracts progressively

Always read references/workflow.md. Read references/runtime-dependencies.md only for setup or doctor failures, and read references/ocr-text-hints-contract.md only when choosing or troubleshooting OCR.

Before writing a page manifest, read references/page-decision-tree.md and references/manifest-schema.md. Add only the references needed by that page:

  • structured or compound page: references/region-decomposition.md and references/object-routing.md;
  • arrows: references/manifest-arrow-extension.md;
  • raster assets or image-backend work: references/assets-provenance-contract.md.

Before accepting or delivering output, read references/qa-contract.md.

Preserve the single source of truth

  • Treat page_jobs.json as the only page-state source.
  • Treat each pages/page_NNN/manifest.json as the only page-content source.
  • Treat deck_manifest.json as the final-assembly source.
  • Use only prepare, run next/dispatch/record/reset/hints/finalize, and the page commands in the local CLI for stateful lifecycle operations.
  • Keep semantic-region evidence in manifest.json.image2ppt_region_decomposition.
  • Never create a second job file, reconstruction plan, OCR normalizer, page controller, packager, or finalize path.
  • Let supplemental QA report failures; never let it mutate lifecycle state.

Keep every write inside its owner directory

  • Page build, validation, hints, and QA may read and write only inside that page directory. Manifest paths, recorded assets, formulas, reports, previews, and --out overrides must not use .., symlinks, or absolute paths to escape it. The sole external-input exception is an explicit image-tool result supplied to image import or as process-sheet --asset-sheet-source; it is copied into the page before becoming a build dependency.
  • Run-level manifests and final outputs must remain inside the prepared run directory. Finalization rebuilds into a same-directory temporary file and publishes it atomically only after a successful build.
  • Treat any boundary rejection as a hard failure; do not copy the rejected file back into scope and present it as runtime output.

Preserve pre-migration behavior

  • Treat self-containment as a path/import/entrypoint migration, not a redesign of reconstruction behavior.
  • Generate each worker Prompt from the complete local base layer plus the preserved Image2PPT profile layer. Do not condense, reinterpret, or replace either layer.
  • Prefer the previously validated visual strategy when several routes satisfy the contracts. Keep simple measured objects native and retain bounded complex assets wherever a native redraw would reduce fidelity.
  • Never re-author an accepted baseline page merely to prove runtime independence.

Run the workflow

Image backend selection

Use builtin-imagegen when the agent runtime exposes image_gen.imagegen; it is the preferred backend because the worker can inspect edit inputs and import the explicit local result. Use the CLI image contract only when the built-in tool is unavailable, errors, cannot read an input, or returns no valid local output. A missing optional argument such as model, mask, size, quality, or output path never authorizes fallback. Record the actual producer and permitted fallback reason in imagegen-jobs.json.

The CLI image contract is provider-neutral at the transport boundary. Select codex-oauth only for GPT Image model ids. Select openai-compatible-api for any provider-specific model whose endpoint implements the OpenAI Images-compatible /images/generations and/or /images/edits schema. Do not infer the image backend from the task's language model. Use an explicit backend when provenance matters; auto uses Codex OAuth only for compatible GPT Image ids and otherwise selects the configured API without sending Codex OAuth credentials to third parties.

1. Preflight and OCR choice

python <image2ppt-root>/cli/image2ppt/cli.py doctor --json

Use Baidu AI Studio PADDLE_OCR_TOKEN when configured. If it is absent, tell the user once that the local builtin-ink fallback measures text geometry but does not recognize characters; offer the configuration path in references/ocr-text-hints-contract.md. Respect an offline-only choice.

2. Prepare one run

python <image2ppt-root>/cli/image2ppt/cli.py prepare <input...> \
  --out-root output/image2ppt --image-backend builtin-imagegen

To pin a configured third-party provider/model for auditable provenance, prepare with --image-backend openai-compatible-api. The run contract records the exact IMAGE2PPT_IMAGE_MODEL from the active project config or environment; it does not substitute a GPT Image default merely because no --model flag was passed.

Use --no-text-hints only when OCR processing is intentionally disabled. Regenerate hints without creating a new run when needed:

python <image2ppt-root>/cli/image2ppt/cli.py run hints <run-dir>

3. Advance and claim pages

python <image2ppt-root>/cli/image2ppt/cli.py run next <run-dir> --json
python <image2ppt-root>/scripts/build_page_worker_prompt.py \
  <run-dir> --page <page-id> --out <absolute-page-dir>/worker-prompt.md
python <image2ppt-root>/cli/image2ppt/cli.py run dispatch \
  <run-dir> --page <page-id> --agent-id <id> --prompt-file <absolute-prompt>

For exactly one page, claim it with --local and reconstruct it in the current agent. For multiple pages, dispatch independent page workers up to the capacity in page_jobs.json. Do not reset a live worker merely because it is slow.

4. Reconstruct and gate each page

Plan a structured page as 3–5 semantic regions and route each region independently. Use measured compound diagrams: measure every node, relation, and protected anchor. Keep measurable circles, cards, straight/dashed relations, and simple connectors native. Use bounded transparent assets only for complex local subparts.

Represent a thin arrow as one connector with its arrowhead on the same object. Represent a filled arrow as one Arrow AutoShape, with centered label text inside the same object. Never construct an ordinary arrow from a line plus triangle and never flatten a whole knowledge graph into one image.

Write new page manifests with schema_version: 2. Use structured visual_inventory items with explicit kind and representation values, and write a concrete quality_evidence observation for every required quality check. Formula rendering is a hard gate: a missing engine, converter, or failed compile must keep the page failed unless the user explicitly approves that exact formula exception and the manifest records both user_approved_exception: true and a concrete approval_note.

The worker Prompt performs the deterministic sequence. Its final gates are:

python <image2ppt-root>/cli/image2ppt/cli.py page build <page-dir>
python <image2ppt-root>/scripts/run_image2ppt_qa.py <page-dir>
# The first run writes visual-review-evidence.template.json and remains pending.
# Inspect source.png against render/rendered.png, copy and complete the template
# as visual-review-evidence.json, repair if needed, then:
python <image2ppt-root>/scripts/run_image2ppt_qa.py <page-dir> \
  --visual-review-status reviewed \
  --visual-review-evidence <page-dir>/visual-review-evidence.json
python <image2ppt-root>/cli/image2ppt/cli.py page contact-sheet <page-dir>

The evidence file must cover the current source/render hashes and every required check with a specific observation. --visual-review-notes is optional context and cannot substitute for the evidence file.

Record only after standard validation and the Image2PPT region, arrow, and rendered gates pass:

python <image2ppt-root>/cli/image2ppt/cli.py run record \
  <run-dir> --page <page-id> --agent-id <id>

Use the same run reset → dispatch → record lifecycle to repair rejected pages.

5. Finalize and revalidate the rebuilt deck

When run next reports finalize, run:

python <image2ppt-root>/cli/image2ppt/cli.py run finalize <run-dir>
python <image2ppt-root>/scripts/run_final_image2ppt_qa.py <run-dir>
# The first run writes final/visual-review-evidence.template.json and remains pending.
# Inspect every rendered slide, complete final/visual-review-evidence.json, then:
python <image2ppt-root>/scripts/run_final_image2ppt_qa.py <run-dir> \
  --visual-review-status reviewed \
  --visual-review-evidence <run-dir>/final/visual-review-evidence.json

Finalize rebuilds from page manifests, preserves source speaker notes, validates the package, and writes the output recorded by deck_manifest.json. Final QA reapplies manifest arrows, verifies arrow atomicity and compound structure, renders every slide, checks speaker-note integrity, and writes final/image2ppt_qa.json.

Deliver

Return the final PPTX path, standard final validation, and final/image2ppt_qa.json. Report which complex visuals remain replaceable bitmap assets. Do not call the deck complete while any page/final gate is pending or failed.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

nature-academic-search

免费有简介

跨多个来源检索学术文献、核对引文并转换参考文献文件;可使用MeSH设计PubMed检索式,也可区分独立他引与自引,整理引用者及引用语境。

  • 跨多个来源检索文献
  • 核对文档中的引文信息
  • 用MeSH设计PubMed检索式
Yuan1z0825/nature-skills5万2026年10月22日 更新

nature-citation

免费有简介

在指定的Nature系列或CNS相关期刊范围内查找论文,核对摘要或出版社页面,将文献对应到稿件中的具体论点,并导出经核实、可导入文献管理软件的参考信息。

  • 为稿件补充Nature系列引文
  • 逐段整理论点与依据文献
  • 核实候选论文是否支持论点
Yuan1z0825/nature-skills5万2026年10月22日 更新

nature-data

免费有简介

起草或检查论文的数据与代码可用性声明,整理数据来源、存储位置、访问限制、标识符和正式引用,并核对有助于发现与复用数据的元数据。

  • 撰写数据或代码可用性声明
  • 整理研究数据的存储位置与获取方式
  • 检查数据集引用和元数据
Yuan1z0825/nature-skills5万2026年10月22日 更新

nature-downloader

免费有简介

通过开放获取、出版社 API 或机构授权渠道获取学术论文全文和补充材料。它会为每篇文献选择获取途径,并记录文件格式、来源和下载结果。

  • 批量获取 DOI 列表中的论文
  • 查找论文的开放版本
  • 通过机构 CNKI 获取中文论文
Yuan1z0825/nature-skills5万2026年10月22日 更新

nature-experiment-log

免费有简介

把实验照片、音频和文字整理成带结构化元数据的 Markdown 日志,分配实验编号和样品批次编号,并归档原始附件;还可选接入飞书群消息或 Obsidian。

  • 根据照片和音频整理实验日志
  • 追踪同一批样品的多次实验
  • 将实验记录与原始附件一起保存
Yuan1z0825/nature-skills5万2026年10月22日 更新

nature-figure

免费有简介

使用Python或R创建、修改并导出论文科学图,检查多面板对齐、文字和元素重叠。也可制作可编辑的矢量示意图,以及经明确要求生成的图形摘要。

  • 制作论文科学图
  • 检查多面板图的布局
  • 制作可编辑示意图
Yuan1z0825/nature-skills5万2026年10月22日 更新

查看 Yuan1z0825 的全部技能

报告此技能的问题