如何使用 python 将图像添加到幻灯片?

How to add images to the slides using python?

我在做过程自动化。它涉及向幻灯片添加图像(总共 8 张图像,每张幻灯片 2 张,甚至下面还有一些文本。)。我可以使用 pptx 添加图像。但图像需要一些裁剪。我该如何裁剪它? 我还需要为幻灯片使用一些特定的格式。如何使用该布局? 如果有人可以提供这样做的流程,将不胜感激。

python-pptx 中的图片形状有四个裁剪属性(.crop_left.crop_top 等)。这些每个都采用浮点值,例如0.1对应10%.

但不幸的是,这些目前是只读的。如果您需要裁剪照片,则需要手动进行,或者可能需要使用 Python 图像库 (PIL/Pillow) 之类的东西对图像进行预处理,以便在插入之前修改它们的范围。

可以通过两种方式将图像添加到幻灯片。您可以使用 slide.shapes.add_picture() 将其作为单独的形状添加到任意位置,也可以将图像占位符添加到用于创建幻灯片的布局并使用 placeholder.insert_picture()。后一种方法会自动从占位符中绘制位置和大小,这有助于使用该布局在幻灯片中保持一致。

也许您可以使用 SlideMight,一种用于 PowerPoint 的数据合并工具。

假设您有文件中的图像,以及一个列出文件位置或 URL 的数据文件。然后你会制作一个 "pattern file",这很像一个 PowerPoint 模板。在那里你用 table 制作了一张幻灯片,有 2 行或 2 列;每个图像都会进入一个单元格。您可以为某些文本添加额外的行。或者,您可以预定义 4 张幻灯片,每张幻灯片有 2 个图像占位符,然后将其命名为 image1 到 image8。

然后让 SlideMight 生成所需的演示文稿。 SlideMight 将调整大小,并根据需要将 table 跨越额外的幻灯片。通常在 GUI 中使用 SlideMight 运行s。它也应该能够 运行 作为一个命令行程序,虽然这最近没有被测试(如果你需要它请告诉我)。

这个有用吗?

免责声明:我是 SlideMight 的开发者和供应商。