pptx2md - 将PPT文件转换成Markdown

embedded/2025/2/21 8:23:40/

将 Powerpoint pptx 文件转换为 markdown 的工具。

Github:GitHub - ssine/pptx2md:pptx 到 markdown 的转换器

更多AI开源软件:发现分享好用的AI工具、AI开源软件、AI模型、AI变现 - 小众AI

主要功能

支持保留以下格式:

  • 标题。支持具有模糊匹配的自定义目录。
  • 具有任意深度的列表。
  • 带有**粗体**、*斜体*、颜色和超链接的文本
  • 图片。它们被提取到图像文件中,并插入相对路径。
  • 具有合并单元格的表格。
  • 从上到下,然后从左到右的区块顺序。

支持输出为如下格式:

  • Markdown
  • Tiddlywiki's wikitext
  • Madoko
  • Quarto

安装和使用

安装

您需要在系统上安装 **3.10** 版本高于 *Python* 和 *pip*,然后在终端中运行:

pip install pptx2md
用法

安装后,使用命令将 pptx 文件转换为 markdown。pptx2md [pptx filename]​

默认输出文件名为 ,提取(并插入到 .md 中)的任何图片都将放置在文件夹中。out.md/img/​

**注意:**不支持较旧的 .ppt 文件,请先将它们转换为新的 .pptx 版本。

**升级和移除:**

pip install --upgrade pptx2mdpip uninstall pptx2md

自定义标题

默认情况下,此工具将所有 pptx 标题解析为 markdown 标题,以获得分层目录,在文件中提供预定义的标题列表并为其提供参数。level 1-t​

这是一个示例标题文件 (titles.txt):

Heading 1Heading 1.1Heading 1.1.1Heading 1.2Heading 1.3
Heading 2Heading 2.1Heading 2.2Heading 2.1.1Heading 2.1.2Heading 2.3
Heading 3

开头带有空格的第一行被视为第二级标题,空格数是缩进的单位。在这种情况下, 将输出为 .由于它的开头有两个空格,所以 2 是标题缩进的单位,所以有 4 个空格时将输出为 。标题文本进行模糊匹配,不匹配的 pptx 标题将被视为最深的标题。 Heading 1.1## Heading 1.1 Heading 1.1.1### Heading 1.1.1​

将其与 . 一起使用。pptx2md [filename] -t titles.txt​

完整参数

  • ​-t [filename]​提供标题文件
  • ​-o [filename]​输出文件的路径
  • ​-i [path]​提取的图片目录
  • ​--image-width [width]​图片的最大宽度,以 px 为单位。如果设置,图像将作为 html img 标签放置。
  • ​--disable-image​禁用图像提取
  • ​--disable-escaping​不要尝试转义特殊字符
  • ​--disable-notes​不添加 Presenter 注释
  • ​--disable-wmf​保持 WMF 格式的映像不变(避免在 Linux 下出现异常)
  • ​--disable-color​在 HTML 中禁用颜色标签
  • ​--enable-slides​Deliniate Slides ,如果您想将 PPTX 幻灯片转换为 Markdown 幻灯片,这会有所帮助\n---\n​
  • ​--try-multi-column​尝试检测多柱玻片(非常慢)
  • ​--min-block-size [size]​要输出的文本块的最小字符数
  • ​--wiki​ / --mdk​如果你碰巧在使用 TiddlyWiki 或 Madoko,这个参数会输出相应的标记语言
  • ​--qmd​输出到用于 Quarto 支持的演示文稿的 QMD 标记语言
  • ​--page [number]​仅转换指定的页面
  • ​--keep-similar-titles​保留相似的标题,并在重复的幻灯片标题中添加“(续)”

注意:如果需要,请安装 wand 以获得更好的成功转换 wmf 图像的机会。

API 使用

您还可以在 Python 代码中以编程方式使用 pptx2md:

from pptx2md import convert, ConversionConfig
from pathlib import Path# Basic usage
convert(ConversionConfig(pptx_path=Path('presentation.pptx'),output_path=Path('output.md'),image_dir=Path('img'),disable_notes=True)
)

该类接受与命令行参数相同的参数:ConversionConfig​

  • ​pptx_path​:输入 PPTX 文件的路径(必填)
  • ​output_path​:输出 markdown 文件的路径(必填)
  • ​image_dir​:提取图像的目录(必需)
  • ​title_path​: 自定义标题文件的路径
  • ​image_width​:图像的最大宽度(以 px 为单位)
  • ​disable_image​:跳过图像提取
  • ​disable_escaping​:跳过转义特殊字符
  • ​disable_notes​:跳过演示者注释
  • ​disable_wmf​:跳过 WMF 图像转换
  • ​disable_color​:跳过 HTML 中的颜色标签
  • ​enable_slides​:添加幻灯片分隔符
  • ​try_multi_column​:尝试检测多列幻灯片
  • ​min_block_size​:最小文本块大小
  • ​wiki​:以 TiddlyWiki 格式输出
  • ​mdk​:以 Madoko 格式输出
  • ​qmd​:以四开格式输出
  • ​page​:仅转换指定的页码
  • ​keep_similar_titles​: 保留带有“(续)”后缀的相似标题


http://www.ppmy.cn/embedded/163528.html

相关文章

SpringBoot整合dozer

一、dozer介绍 1.Dozer是Java Bean到Java Bean映射器,它以递归方式将数据从一个对象复制到另一个对象2.dozer是用来对两个对象之间属性转换的工具,有了这个工具之后,我们将一个对象的所有属性值转给另一个对象时,就不需要再去写重…

了解SQL Server不同版本(如Express、Standard、Enterprise)的功能差异和适用场景。

一、SQL Server Express版本 (一)功能特点 数据库大小限制: SQL Server Express版本数据库的最大大小限制为10GB。这对于小型应用程序、个人项目或者初学者学习和开发简单的数据库应用是足够的。例如,一个小型的学生成绩管理系统…

解锁观察者模式:Java编程中的高效事件管理之道

系列文章目录 后续补充~~~ 文章目录 一、引言:探索观察者模式的奥秘二、观察者模式的核心原理2.1 模式定义与概念2.2 关键角色剖析2.3 工作机制深度解析 三、观察者模式在 Java 中的实现3.1 手动实现观察者模式3.2 使用 JDK 内置的观察者模式3.3 代码示例解析与对比…

【深度学习基础】什么是注意力机制

文章目录 一、注意力机制的核心地位:从补充到主导二、技术突破:从Transformer到多模态融合三、跨领域应用:从NLP到通用人工智能四、未来挑战与趋势结语参考链接 注意力机制:深度学习的核心革命与未来基石 在深度学习的发展历程中&…

C++经典习题

C A为虚基类,B为派生类 D 对象数组a[2],调用两次,new Sample1次,共3次 D 不能以数字开头,以字母或下划线开头;goto是关键字,-是特殊字符,不可以出现 B 后置递增,先取值后递增&#x…

Jmeter快速入门

1.安装Jmeter Jmeter依赖于JDK,所以必须确保当前计算机上已经安装了JDK,并且配置了环境变量。 1.1.下载 可以Apache Jmeter官网下载,地址:Apache JMeter - Download Apache JMeter 当然,我们课前资料也提供了下载好的…

游戏引擎学习第105天

仓库:https://gitee.com/mrxiao_com/2d_game_2 查看当前进度 今天的工作重点是继续进行渲染系统的清理。昨天已经完成了一次渲染清理,现在还有一些内容需要继续处理。首先,已经解决了坐标系统的问题,其中世界坐标基本上是正确的&#xff0c…

Javascript网页设计案例:通过PDF.js实现一款PDF阅读器,包括预览、页面旋转、页面切换、放大缩小、黑夜模式等功能

前言 目前功能包括: 切换到首页。切换到尾页。上一页。下一页。添加标签。标签管理页面旋转页面随意拖动双击后还原位置 其实按照自己的预期来说,有很多功能还没有开发完,配色也没有全都搞完,先发出来吧,后期有需要…