如何将PIL图像传递给python-pptx中的Add_Picture

2024-03-27

我正在尝试从剪贴板获取图像,并且想将该图像添加到 python-pptx 中。 我不想将图像保存在磁盘中。 我已经尝试过这个:

from pptx import Presentation
from PIL import ImageGrab,Image
from pptx.util import Inches
im = ImageGrab.grabclipboard()
prs = Presentation()
title_slide_layout = prs.slide_layouts[0]
slide = prs.slides.add_slide(title_slide_layout)
left = top = Inches(1)
pic = slide.shapes.add_picture(im, left, top)
prs.save('PPT.pptx')

但是出现这个错误

File "C:\Python27\lib\site-packages\PIL\Image.py", line 627, in __getattr__
    raise AttributeError(name)
AttributeError: read

这有什么问题吗?


这对我有用

import io
import PIL
from pptx import Presentation
from pptx.util import Inches

# already have a PIL.Image as image
prs = Presentation()
blank_slide = prs.slide_layout[6]
left = top = Inches(0)

# I had this part in a loop so that I could put one generated image per slide
image: PIL.Image = MyFunctionToGetImage()
slide = prs.slides.add_slide(blank_slide)
with io.BytesIO() as output:
    image.save(output, format="GIF")
    pic = slides.add_slide(output, left, top)
# end loop
prs.save("my.pptx")
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将PIL图像传递给python-pptx中的Add_Picture 的相关文章

  • Python 3.0 使用turtle.onclick

    所以这是我的问题 我必须为我的计算机科学课程制作一张图片 而在海龟中进行估计确实令人沮丧 我计划使用 onclick 来显示我的位置 import turtle as t def getPos x y print x y return de
  • 如何在 PyCharm 中设置运行配置的默认工作目录

    当我想运行众多 python 脚本之一时 我点击运行 这会创建一个新的运行配置 该配置的工作目录是 python 脚本文件所在的文件夹 相反 它应该从项目范围的固定文件夹运行 我想以某种方式进行设置 但我真的不明白为什么 这有点奇怪 因为我
  • 计时器显示负的已用时间

    我正在使用一个非常简单的代码来计算每个循环的时间for陈述 它看起来像这样 import time for item in list of files Start timing this loop start time clock Do a
  • Conda 无法在 Powershell 中激活

    我已经在我的 Windows 10 笔记本电脑上安装了 anaconda 我正在尝试激活名为的Python环境pyenv 首先 我检查conda env list在我的笔记本电脑中 这是 powershell 上的输出 PS C Users
  • Windows 中的信号处理

    在Windows中 我试图创建一个等待SIGINT信号的python进程 当它收到SIGINT时 我希望它只打印一条消息并等待SIGINT的另一次出现 所以我使用了信号处理程序 这是我的 signal receiver py 代码 impo
  • CodingBat sum67:为什么这个解决方案是错误的?

    我正在解决以下codingbat问题 返回数组中数字的总和 但忽略以 6 开头并延伸到下一个 7 的数字部分 每个 6 后面至少有一个 7 如果没有数字则返回 0 sum67 1 2 2 5 sum67 1 2 2 6 99 99 7 5
  • Python 包?

    好吧 我认为无论我做错了什么 它可能都是显而易见的 但我无法弄清楚 我已经阅读并重新阅读了有关包的教程部分 我唯一能想到的是这不起作用 因为我直接执行它 这是目录设置 eulerproject init py euler1 py euler
  • 将这个使用 lambda 解包的元组从 Python 2 移植到 Python 3 的最 Pythonic 方法

    我有以下 Python 2 代码 它在 lambda 中解压元组 该 lambda 包含在 for 循环内 for lab lab pred length in zip labels labels pred sequence lengths
  • 使用 string.whitespace 删除 Python 中的空格

    Python 的 string whitespace 很棒 gt gt gt string whitespace t n x0b x0c r 如何在不手动输入 t n 等正则表达式的情况下将其与字符串一起使用 例如 它应该能够转动 请不要伤
  • Python Pandas:将参数传递给 agg() 中的函数

    我试图通过使用不同类型的函数和参数值来减少 pandas 数据框中的数据 但是 我无法更改聚合函数中的默认参数 这是一个例子 gt gt gt df pd DataFrame x 1 np nan 2 1 y a a b b gt gt g
  • 无法运行bjam编译boost python教程

    我正在尝试跟随本教程 http www boost org doc libs 1 55 0 libs python doc tutorial doc html python hello html关于为 Windows 的 python 包装
  • Python docker 容器在完成运行应用程序后立即关闭,即使指定保留在 -d -t 中

    我有一个 dockerfile FROM python 3 WORKDIR app ADD venv venv ADD data file1 csv gz data file1 csv gz ADD data file2 csv gz da
  • 将 numpy 记录数组转换为字典列表的有效方法

    如何转换下面的 numpy 记录数组 recs Bill 31 260 0 Fred 15 145 0 r rec fromrecords recs names name age weight formats S30 i2 f4 到字典列表
  • 为什么 Python 布尔值占用超过一个字节?

    显然 Python 中整数占用 24 个字节 我可以理解 它这样做是因为代表无限数字的额外花哨 然而 布尔数据类型看起来也花费了高达 24 个字节 尽管它只能表示两个可能值之一 为什么 除了 1 位表示之外 还可能需要存储哪些额外数据Tru
  • 使用 PyQt5 拖放 QLabels

    我正在尝试使用 PyQt5 将 Qlabel 拖放到另一个 Qlabel 上 from PyQt5 QtWidgets import QApplication QWidget QToolTip QPushButton QMessageBox
  • Twitter 不再使用请求库 python

    我有一个 python 函数 它使用 requests 库和 BeautifulSoup 来抓取特定用户的推文 import requests from bs4 import BeautifulSoup contents requests
  • Python 中的数据可用性图表

    我想知道Python是否有一些东西可以绘制具有多个变量的时间序列的数据可用性 下面显示了一个示例 取自Visavail js 时间数据可用性图表 https github com flrs visavail 1 description 以下
  • Pygame 文本不渲染

    好的 我正在用 python 和 pygame 制作一个多项选择测验游戏 不过 我已经完成了开始屏幕并尝试制作问题屏幕 我根本不明白为什么文本不呈现 这是我的代码 enter pressed False random question ra
  • Python:ConfigParser.NoSectionError:没有部分:“TestInformation”

    我使用上面的代码收到 ConfigParser NoSectionError No section TestInformation 错误 def LoadTestInformation self config ConfigParser Co
  • Pandas:根据是否为 ​​NaN 来移动列

    我有一个像这样的数据框 phone number 1 clean phone number 2 clean phone number 3 clean NaN NaN 8546987 8316589 8751369 NaN 4569874 N

随机推荐

  • 更改 onclick 事件,JavaScript 不起作用

    我有这个 function tp visible action if action 1 document getElementById tp style display block document getElementById tp ac
  • 按点击付费断点

    如何在 PPC 上 具体来说 在 OS X 上 实现断点 例如 在 x86 上 通常使用 INT 3 指令 0xCC 完成 对于 ppc 是否有与此类似的指令 或者还有其他设置 实施的方式吗 使用 gdb 和一个十六进制转储自身的函数 我得
  • 返回 Activity 而不重新创建(不调用 onCreate())

    我想问类似的问题 返回上一屏幕而不创建新实例 https stackoverflow com questions 11715848 go back to previous screen without creating new instan
  • 如何在 Rails 的 ERB 模板中使用 `<%=` 来修剪最后出现在 `pre` 元素中的前导空白?

    据我在这里研究 这不是一个重复的问题 修剪空格 通常是尾随换行符 正在讨论 但不适合 结果是 HTML 输出为 p strong Code strong p pre class highlight github span class kt
  • 使用 GAS 获取相当于持续时间的数字

    我有一个具有持续时间类型值的单元格 我已将值设置为 00 10 00 即 10 分钟 当我将单元格的格式更改为数字时 它将显示 0 01 如何以编程方式使用应用程序脚本获得与使用应用程序脚本代码相同的十进制等效值 00 10 00 是 0
  • HQL:按可空属性的属性排序

    假设有两个表 A a id b id and B b id c 我需要执行表单的 HQL 查询 From A a ORDER BY a b c while b在类中可以为空A 但是 该查询仅返回以下实例A其中有非空b财产 发生这种情况是因为
  • GC过多时如何更快OOM? [复制]

    这个问题在这里已经有答案了 有时 我的 JVM 会耗尽内存 但我可以从中恢复 或 heapDumpOnOOM 和调试 的 OOMing 它往往会在 GC 中颠簸数小时 然后抛出内存不足 这本质上与 未回答的 问题相同 如何配置 Java G
  • 计算 Laravel 中的坐标距离

    我的模型中有一个创建别名的范围 我需要在其上执行一个 where 我知道 MySql 不允许这样做 标准 SQL 不允许您在 WHERE 中引用列别名 条款 施加此限制是因为当 WHERE 代码为 执行后 列值可能尚未确定 但是 我想知道
  • 创建数组并在一行中将其推入其中

    以下只是一个理论上的 JavaScript 问题 我很好奇以下内容是否可以转换为单个语句 if window foo window foo window foo push bar 这段代码大家可能都写过 但是一行能完成吗 起初我以为这样的事
  • uml 与 RDF 和 OWL 的组合关系

    我是 RDF 和 OWL 本体的初学者 我正在尝试将此图转换为 OWL 语法
  • 带有 Angular 2 和 webpack 2 的单个单独的 CSS 文件?

    我有一个使用 Angular 2 和 Webpack 2 的简单应用程序 使用 sass 作为模板和 angular2 template loader 这样我就可以使用templateUrl and styleUrls而不是使用requir
  • 更改监听输入源

    我想用 AutoHotkey 更改我的显示器输入源 并且我已经部分工作了 但是 当我使用热键将显示器输入源从 pc DVI 更改为我的 xbox YPbYr 时 显示器未检测到 xbox 已打开 它显示没有源 显示器 gt 华硕 VG236
  • 适用于移动应用程序的最佳远程技术是什么?

    我有一个 java 后端 需要向在以下环境中运行的客户端公开服务 J2ME 视窗手机 iPhone 我正在寻找适合每个平台的最佳工具 我不会寻找一种在任何地方都适用的技术 我需要一些适合低速互联网访问的 轻型 东西 现在我正在使用 SOAP
  • 列出所有可用的 .NET 程序集

    列出所有可用的 NET 2 0 程序集的最佳方法是什么 所需列表的一个示例是当您在 NET 选项卡中执行 添加引用 时 MS Visual Studio 显示的列表 我读过 Visual studio 使用它自己的目录配置 GAC 和 NE
  • 如何在 Jenkins 中处理 github webhook 负载?

    我目前正在通过 GitHub Webhook 触发我的 Jenkins 构建 我将如何解析 JSON 有效负载 如果我尝试参数化我的构建并使用 payload 变量 GitHub webhook 将失败并出现以下错误 h2 HTTP ERR
  • let 与 var 性能[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我一直在阅读有关 ES6 Let 关键字与现有 var 关键字的内容 我有几个问题 我知道 作用域 是 let 和 var 之间的唯一
  • 如何在 Firefox 中允许键盘焦点链接?

    在 Webkit 浏览器中转到这个超简单的小提琴 然后单击输入 http jsfiddle net eK4TT http jsfiddle net eK4TT
  • 警告:没有 xauth 数据;使用虚假身份验证数据进行 X11 转发

    在从 Fedora 23 到 Centos 7 进行 ssh 连接时 我遇到了一个不幸的问题 命令ssh X user centos7 and ssh Y user centos7两者都打印警告 没有 xauth 数据 使用伪造的身份验证数
  • django escapejs 和 simplejson

    我正在尝试使用 simplejson dumps 将 Python 数组编码为 json In 30 s1 test
  • 如何将PIL图像传递给python-pptx中的Add_Picture

    我正在尝试从剪贴板获取图像 并且想将该图像添加到 python pptx 中 我不想将图像保存在磁盘中 我已经尝试过这个 from pptx import Presentation from PIL import ImageGrab Ima