标签: python-pptx

失败:属性错误:模块“集合”没有属性“容器”

我尝试启动python-pptx,但出现错误:

AttributeError: module 'collections' has no attribute 'Container'
in File "...\lib\site-packages\pptx_init_.py", line 14 
Run Code Online (Sandbox Code Playgroud)

使用Python 3.10、python-pptx (0.6.21)、lxmx (4.6.3)。

python powerpoint python-pptx

16
推荐指数
1
解决办法
2万
查看次数

Python-pptx:复制幻灯片

如何复制幻灯片?

我创建了一个模板幻灯片,我需要复制它并分别编辑每个副本的形状。

或者如何将我的模板幻灯片添加到presentation.slide_layouts?

python python-pptx

8
推荐指数
3
解决办法
9698
查看次数

如何使用 python pptx 创建文本形状?

我想在演示文稿中添加一个文本框python pptx。我想在特定位置添加一个包含多个段落的文本框,然后对其进行格式化(字体、颜色等)。但由于文本形状对象总是在开头带有一个段落,因此我无法编辑第一个段落。代码示例如下所示:

txBox = slide.shapes.add_textbox(left, top, width, height)
tf = txBox.text_frame

p = tf.add_paragraph()
p.text = "This is a first paragraph"
p.font.size = Pt(11)

p = tf.add_paragraph()
p.text = "This is a second paragraph"
p.font.size = Pt(11) 
Run Code Online (Sandbox Code Playgroud)

它创建这样的输出: 在此输入图像描述

我可以使用 向第一行添加文本tf.text = "This is text inside a textbox",但它的字体或颜色不可编辑。那么有什么方法可以省略或编辑该行,以便框中的所有段落都相同?

python powerpoint tkinter python-pptx

8
推荐指数
1
解决办法
1万
查看次数

如何更改由 Python-pptx 创建的表格中文本的字体大小

我正在创建一个脚本来显示产品性能图表,并创建一个表格来显示其部件号、应用程序列表和当前应用程序的数量。

但是,默认字体大小太大,无法将所有这些信息放入幻灯片中,需要缩小。

如何在 Python-pptx 中减小表格中文本的字体大小?

这就是我所拥有的,但我不断收到错误消息“AttributeError: '_Cell' 对象没有属性 'paragraph'”

table = shapes.add_table(rows, cols, left + left_offset, top + Inches(.25), width, height - Inches(.25)).table
#column width
for i in range(3):
    table.columns[i].width = col_width[i]           
    for i in range(len(a_slide)):
        #color table
        if i % 2 == 0:
            for j in range(3):
                fill = table.cell(i, j).fill
                fill.background()
        else:
            for j in range(3):
                fill = table.cell(i, j).fill
                fill.solid()
                fill.fore_color.rgb = RGBColor(240, 128, 128)
        #populate table
        table.cell(i, 0).text = str(item["name"])
        try:
            table.cell(i, 1).text = ", ".join(item["app"]) …
Run Code Online (Sandbox Code Playgroud)

python-3.x python-pptx

7
推荐指数
1
解决办法
3337
查看次数

使用 Python-pptx 居中对齐文本

简而言之:是否可以在 Python-pptx 中将文本与中心对齐?

自从我使用 Python-pptx 以来,我已经能够自动化很多事情,我真的很喜欢使用它!但是,我遇到了一个问题。我试图在幻灯片上水平居中我的文本。如果你不明白我的意思:

看看前两段与其他两段有何不同?

我的文本现在向左对齐,类似于前两段中的文本。但是,我希望它们与中心对齐,就像最后两段一样。这是我的代码片段:

left = Cm(3)
top = Cm(2.5)
width = Cm(15)
height = Cm(1)
txBox = slide.shapes.add_textbox(left, top, width, height)
tf = txBox.text_frame
p = tf.add_paragraph()
run = p.add_run()
run.text = "Just an example"
font = run.font
font.size = Pt(30)
Run Code Online (Sandbox Code Playgroud)

我查看了文档,但找不到任何有用的东西。我读了一些关于“MSO_VERTICAL_ANCHOR”和“PP_PARAGRAPH_ALIGNMENT”的内容,但我无法让它工作。

先感谢您!

python powerpoint python-pptx

7
推荐指数
1
解决办法
7694
查看次数

使用 python-pptx 编辑页眉和页脚

我可以使用 python-pptx 编辑现有演示文稿的页眉和页脚吗?我要设置的值如附图所示。谢谢。

Powerpoint 页眉和页脚

python powerpoint python-pptx

7
推荐指数
1
解决办法
2475
查看次数

如何使用python-pptx删除未填充的占位符项

这很简单,但我无法在文档中的任何位置找到实际方法或其他方法.

我正在使用python-pptx模块,我需要做的就是在一些幻灯片上删除一个占位符项,一个空文本框(不必为这些幻灯片创建一个全新的布局) - 最接近答案的东西在这里:http://python-pptx.readthedocs.io/en/latest/user/placeholders-understanding.htmlUnpopulated vs. populated下但它仍然没有说明如何实际删除/删除占位符.

我已经尝试了所有明显的方法.delete(),. remove()等.

python python-pptx

7
推荐指数
1
解决办法
2058
查看次数

Python将图像插入现有PowerPoint的中间

我有一个包含 20 张幻灯片的现有 PowerPoint 演示文稿。此演示文稿用作模板,每张幻灯片都有不同的背景。我想使用这个(现有的)PowerPoint 演示文稿,在第 4 张幻灯片中插入一个图像(前 3 个不做任何处理)并将其另存为新的 PowerPoint 演示文稿。

这就是我到目前为止所拥有的。此代码加载现有演示文稿并将其另存为新演示文稿。现在我只需要知道如何使用它像上面描述的那样将图像插入第 4 号幻灯片。

注意:我使用的是普通的 Python。

from pptx import Presentation

def open_PowerPoint_Presentation(oldFileName, newFileName):
    prs = Presentation(oldFileName)
    #Here I guess I need to type something to complete the task.
    prs.save(newFileName)

open_PowerPoint_Presentation('Template.pptx', 'NewTemplate.pptx')
Run Code Online (Sandbox Code Playgroud)

python powerpoint python-pptx

6
推荐指数
1
解决办法
7476
查看次数

如何在 Python 3 中将演示文稿保存到类似文件的对象

Python 3 替换StringIO.StringIOio.StringIO. 我已经能够使用前者成功保存演示文稿,但它似乎不适用于后者。

from pptx import Presentation
from io import StringIO

presentation = Presentation('presentation.pptx')
output = StringIO()
presentation.save(output)
Run Code Online (Sandbox Code Playgroud)

上面的代码产生:

Traceback (most recent call last): File "<stdin>", line 1, in <module> File "C:\Users\mgplante\AppData\Local\Continuum\Anaconda2\envs\ppt_gen\lib\site-packages\pptx\presentation.py", line 46, in save self.part.save(file) File "C:\Users\mgplante\AppData\Local\Continuum\Anaconda2\envs\ppt_gen\lib\site-packages\pptx\parts\presentation.py", line 118, in save self.package.save(path_or_stream) File "C:\Users\mgplante\AppData\Local\Continuum\Anaconda2\envs\ppt_gen\lib\site-packages\pptx\opc\package.py", line 166, in save PackageWriter.write(pkg_file, self.rels, self.parts) File "C:\Users\mgplante\AppData\Local\Continuum\Anaconda2\envs\ppt_gen\lib\site-packages\pptx\opc\pkgwriter.py", line 33, in write PackageWriter._write_content_types_stream(phys_writer, parts) File "C:\Users\mgplante\AppData\Local\Continuum\Anaconda2\envs\ppt_gen\lib\site-packages\pptx\opc\pkgwriter.py", line 47, in _write_content_types_stream phys_writer.write(CONTENT_TYPES_URI, content_types_blob) File "C:\Users\mgplante\AppData\Local\Continuum\Anaconda2\envs\ppt_gen\lib\site-packages\pptx\opc\phys_pkg.py", line 156, in write …

python python-pptx

6
推荐指数
1
解决办法
1569
查看次数

Python PPTX:从另一个演示文稿添加整个幻灯片

看来这个问题是在2015年提出并要求的,但我找不到任何更新。我正在尝试通过执行以下操作将整个幻灯片(包括其文本和图像)从另一个演示文稿复制到我的工作演示文稿中:

prs = Presentation('CurrentPresentation.pptx')
prs1 = Presentation('OtherPresentation.pptx')
# Wanted_Slide = prs1.slides[0]
New_Slide = prs.slides.add_slide(prs1.slide_layout[0])
Run Code Online (Sandbox Code Playgroud)

但是,所有这些操作就是添加一个完全空白的幻灯片(带有所需幻灯片的背景),幻灯片布局为0,这完全是有道理的。我知道这不是正确的方法。我尝试了以下操作,但确实添加了一张幻灯片,但这只是prs演示文稿中已经存在的一个副本(我想我发现了一种无意中复制演示文稿中已经存在的幻灯片的方法):

def Add_Slide(self):
    xml_slides = prs.slides._sldIdLst
    xml_slides1 = prs1.slides._sldIdLst
    slides = list(xml_slides)
    slides1 = list(xml_slides1)
    xml_slides.append(slides1[0])
Run Code Online (Sandbox Code Playgroud)

上面的代码是我在网上找到的幻灯片删除方法的一种操作。

还是有人对如何将幻灯片及其所有内容完全复制到工作演示文稿中有任何建议?

如果没有任何进展,我对此表示歉意。先感谢您。

python powerpoint python-pptx

6
推荐指数
1
解决办法
1335
查看次数

标签 统计

python-pptx ×10

python ×9

powerpoint ×6

python-3.x ×1

tkinter ×1