Skip to content

Repository files navigation

image2editable

中文 | English

图片、PDF、图片版 PPTX → 可编辑 PPTX

Python 3.10–3.12 License Platform

image2editable 介绍

image2editable 用于把图片、PDF 和截图式 PPT 转换成可以继续修改的 PowerPoint。它适合课件截图、设计稿、报告页面和图片化幻灯片,减少从零复刻整页版式的工作。

转换后,可以直接在 PowerPoint 中修改识别出的文字、移动拆分出的视觉元素,并继续调整页面内容;处理混合 PPTX 时,原本可编辑的内容会保留在文件中。


转换效果演示:

原图 转换后的可编辑效果
原图 1 转换结果 1
原图 2 转换结果 2
原图 3 转换结果 3

若是单独一张图片,为获得最佳的 16:9 PPT 视觉效果,建议输入图片采用 16:9 比例。

特点

能力 说明
可编辑文字 尽量恢复为 PowerPoint 原生文本框,可在输出文件中直接修改。
可移动视觉元素 将可独立处理的视觉元素拆分为透明图片组件,便于移动或替换。
混合 PPTX 保护 未参与重建的原生文字、形状、表格、图表、备注和层级顺序保持不变。
多种输入 支持图片、图片目录、PDF、图片版 PPTX 和混合 PPTX。
批量转换 多张图片或多页文档按顺序生成多页 PPTX。
质量保护 每页最多进行五轮重修;无法通过质量检查时保留原内容并给出 warning。

使用前了解

  • 这是把已有页面重建为可继续编辑 PPT 的工具,不是根据文章或大纲生成全新演示文稿。
  • ⚠️ 复杂视觉元素通常会以可移动图片组件保留,不能保证其内部元素都能恢复为原生 PowerPoint 形状。
  • 🔒 Host Agent 模式可能把诊断图交由当前宿主服务处理;处理敏感文件时,请选择 Local Agent。

快速上手

通过 使用 skills CLI 安装

npx skills add DSY-Xueai/image2editable --skill image-to-ppt

让 Agent 自动安装

请从 https://github.com/DSY-Xueai/image2editable 安装 <image-to-ppt> skill。

安装后,可直接向支持视觉、文件读取和工具调用的 Agent 描述需求,Codex 中可使用 $image-to-ppt,claude code中可使用/image-to-ppt。图片、PDF 和 .pptx 可以直接粘贴或附加到对话框,也可以提供本地路径:

#Codex
$image-to-ppt 把 input.pptx 转成可编辑 PPTX,保留没有命中的原生对象。
$image-to-ppt 把 input.png 转成可编辑 PPTX。
$image-to-ppt 把 <input.pdf> 转成可编辑 PPT。
#claude code
/image-to-ppt 把 input.pptx 转成可编辑 PPTX,保留没有命中的原生对象。
/image-to-ppt 把 input.png 转成可编辑 PPTX。
/image-to-ppt 把 <input.pdf> 转成可编辑 PPT。

💡 建议: 有可用的 Codex、Claude Code 等宿主时优先使用 Skill;只想在本机离线处理图片或 PDF 时使用 Local CLI。

Local CLI

需自行先在本机部署并启动具备视觉理解能力的模型服务。服务需提供 OpenAI 兼容的 /v1/chat/completions 接口,支持图像输入和 JSON 响应;可使用 vLLM、LM Studio,或已启用 OpenAI 兼容接口的 Ollama。

git clone https://github.com/DSY-Xueai/image2editable.git
cd image2editable
pip install .

首次配置时,在项目根目录使用下面这个命令复制模板并填写自己的服务信息

Copy-Item .env.example .env

再编辑 .envIMAGE2EDITABLE_LOCAL_BASE_URL服务地址IMAGE2EDITABLE_LOCAL_MODEL服务端实际暴露的模型名;服务不需要密钥时让 IMAGE2EDITABLE_LOCAL_API_KEY 留空。

配置完成后,使用 --agent-provider local 调用本地服务:

# 图片 → 可编辑 PPTX
image2editable convert input.png -o output.pptx --slide-size 16:9 --agent-provider local

# PDF → 可编辑 PPTX
image2editable convert input.pdf -o output.pptx --slide-size 16:9 --agent-provider local
参数 默认值 用途
sources 必填 要转换的输入:图片、图片目录、单个 PDF 或单个 PPTX。文档类输入不能与其他来源混用。
-o, --output 输入同名 指定输出文件;--slide-size both 时用作输出基名。
--lang ch 指定 OCR 识别语言,常用值为 chen
--agent-provider host 选择处理方式:host 交由当前 Agent/Skill 协作,local 使用已安装的本地视觉模型。
--slide-size both 控制版式:original 保持输入比例,16:9 生成宽屏,both 同时生成两种尺寸。
--run-dir 自动生成 指定运行目录,便于查看进度、继续未完成的任务或排查问题。

上面执行命令中的 input.pdf 就是 sources,等价于:

sources = ["input.pdf"]

选择处理方式

方式 适合 工作方式
Host Agent 已在 Codex、Claude Code 等宿主中工作,并希望由 Agent 协助判断页面结构。 Skill 将诊断资料交给当前宿主 Agent;CLI 不会直接调用某个固定云端 AI API
Local Agent 已自行部署本地视觉模型服务,希望在自己的设备上处理图片或 PDF 。 使用配置的 OpenAI 兼容本地服务。

项目结构

image2editable/
├── .claude-plugin/            # Claude Code 插件清单
│   └── plugin.json
├── docs/
│   └── images/                # README 图片资源
├── image2editable/            # 统一 CLI、运行时和转换模块
├── scripts/                   # 识别、重建和 PPTX/PSD 组装模块
├── skills/
│   ├── image-to-ppt/          # 可安装的图片转 PPT Skill
│   └── image-to-psd/          # 兼容的图片转 PSD Skill
├── tests/                     # 自动化测试
├── third_party/
│   └── licenses/              # 第三方许可证资料
├── .env.example               # Local Agent 配置示例
├── .gitignore
├── CITATION.cff               # 引用信息
├── image_to_ppt.py            # 兼容的图片转 PPTX 入口
├── image_to_psd.py            # 兼容的图片转 PSD 入口
├── LICENSE                    # MIT 许可证
├── pyproject.toml             # Python 包与 CLI 配置
├── README.md                  # 中文说明
├── README_EN.md               # English documentation
├── requirements.txt           # 核心依赖
└── THIRD_PARTY_NOTICES.md     # 第三方依赖与许可证说明

已知问题

  • ⚠️ 复杂页面建议人工复核。 艺术字、密集表格、渐变和复杂插画可能无法逐像素还原;请在交付前检查文字、组件位置和页面布局。
  • 图片中的文字越清晰、背景越规整,重建通常越可靠;艺术字、密集表格、渐变和复杂插画不保证逐像素一致。
  • 💳 Host Agent 会消耗模型的 Token / 上下文额度。 复杂页面可能经过多轮诊断与重修,实际消耗取决于所用 Agent、模型和页面复杂度。Local 模式不使用项目方 Token,但会消耗用户本地模型服务的推理资源,CPU 可运行但速度可能较慢。
  • ⏱️ 多页 PDF、复杂页面和高分辨率图片耗时较长。 每页都会经过 OCR、视觉拆分、重建与质量检查,最多可进行 5 轮重修;Host 模式还需要等待 Agent 完成视觉判断。

支持的输入与常用选项

输入 使用建议 说明
图片或图片目录 Skill 或 Local CLI 支持 PNG、JPG/JPEG、BMP、TIFF/TIF、WebP;目录只扫描第一层图片。
PDF Skill 或 Local CLI 按页渲染并按顺序重建为多页 PPTX。
图片版 PPTX、混合 PPTX 推荐 Skill 会识别可处理的图片页;未命中的原生对象保持不变。

其他第三方依赖及许可证见 THIRD_PARTY_NOTICES.md,引用信息见 CITATION.cff

许可证

MIT

About

A Skill and CLI tool for Codex and Claude Code that converts images, PDFs, image-based PPTX files, and mixed PPTX files into editable PowerPoint presentations.

Topics

Resources

Stars

8 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages