- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我对 python-pptx 包比较陌生,但我发现它非常有用。
我添加了一张具有“标题、图片和标题”布局的幻灯片。
SLD_LAYOUT_TITLE_AND_PICTURE_AND_CAPTION = 8
prs = Presentation(output_pptx_fp)
slide_layout = prs.slide_layouts[SLD_LAYOUT_TITLE_AND_PICTURE_AND_CAPTION]
slide = prs.slides.add_slide(slide_layout)
shapes = slide.shapes
placeholder_pict = slide.placeholders[1] # idx key, not position
placeholder_pict.insert_picture(img_path)
我正在尝试找出如何重新定位图片占位符。
通过类比我在幻灯片上放置标题占位符的方式,我尝试使用:
placeholder_pict.left = Inches(1.96)
placeholder_pict.top = Inches(0.0)
但是,这生成了一个 AttributeError。
我还尝试在“insert_picture()”方法中使用“left”和“top”参数:
left = Inches(1.96)
top = Inches(0.0)
placeholder_pict.insert_picture(img_path, left, top)
这生成了一个“TypeError:insert_picture()需要2个位置参数,但给出了4个”
如何重新定位这张幻灯片上的图片占位符?我错过了文档中的某些内容吗?
更新:
当我尝试时(这是scanny没有建议的,但我很好奇):
picture_left = Inches(1.96)
picture_top = Inches(0.0)
picture = placeholder_pict.insert_picture(img_path, picture_left, picture_top)
我得到:“TypeError:insert_picture()需要2个位置参数,但给出了4个”
当我尝试时(我相信这是 scanny 的第一个建议):
picture_left = Inches(1.96)
picture_top = Inches(0.0)
shapes.add_picture(img_path, picture_left, picture_top)
图片位于我想要的位置,但它不在图片容器中(我可以接受),因此它的大小不适合图片容器(我可以通过添加代码来处理)
当我尝试时(我相信这是scanny的第二个建议):
picture_left = Inches(0.0)
picture_top = Inches(0.0)
placeholder_pict.left = picture_left
placeholder_pict.top = picture_top
picture = placeholder_pict.insert_picture(img_path)
我没有得到任何改变。图片出现在幻灯片上,但它的位置与我根本不尝试设置 placeholder_pict.left 和 placeholder_pict.top 时的位置相同。
当我尝试时(我相信这是scanny的第三个建议):
picture = placeholder_pict.insert_picture(img_path)
picture.left = Inches(0)
picture.top = Inches(0)
我根本看不到照片。我尝试缩小,看看图片是否可能被放置在“幻灯片之外”,但仍然没有图片的迹象。据我所知,我什至不再拥有图片容器。
当我尝试时(根据 scanny 的请求):
placeholder_pict = slide.placeholders[1] # idx key, not position
print("placeholder_pict.placeholder_format.type =", placeholder_pict.placeholder_format.type)
print("placeholder_pict.left", placeholder_pict.left, "placeholder_pict.top =", placeholder_pict.top)
我得到:
placeholder_pict.placeholder_format.type = 图片 (18)
placeholder_pict.left 1792288 placeholder_pict.top = 612775
这让我非常困惑为什么我显然无法成功设置 placeholder_pict.left 和 placeholder_pict.top 值。
最佳答案
根据一些额外的观察,此案例似乎暴露了 PowerPoint 工作方式的一些“怪癖”。
简短的回答是,如果要更改 left 和 top,则需要显式设置宽度和高度,否则它们默认为 0,这会导致形状“消失”。
这段代码应该能稍微说明一下情况:
prs = Presentation()
slide_layout = prs.slide_layouts[PICTURE_LAYOUT_IDX]
slide = prs.slides.add_slide(slide_layout)
shapes = slide.shapes
placeholder = slide.placeholders[1]
print(placeholder.left.inches, placeholder.top.inches)
# ---note that all these actions are *before* the image is inserted---
placeholder.left = Inches(3)
print(placeholder.left.inches)
print(placeholder.width)
placeholder.width = Inches(3)
print(placeholder.left.inches)
print(placeholder.height)
placeholder.height = Inches(3)
print(placeholder.height)
基本上,这表明形状从其布局占位符继承位置和大小是全有或全无的。一旦明确设置了其中一个,就需要设置所有这些。
关于python-pptx:如何重新定位图片占位符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49279998/
我尝试使用以下 json,但 wiremock 无法识别我的更改。我看了wiremock的文档,看到他们说:JSON相等匹配是基于JsonUnit的,因此支持占位符。我也尝试使用 JDK 8 和 JD
我发现这种方法可以使用 mixin 轻松添加 @media block : @mixin phone() { @media only screen and (max-width: 480px)
我有四个依赖的选择列表,我想给所有选择列表一个默认值/占位符,如下所示:select ... 。问题是,当我尝试这样做时: Select ... 它不起作用。因为当我更改第一个选择列表时,其他选择列表
所以我只是浏览我们的库存管理系统的代码我看到了我一位同事的一些片段,他在某些功能中所做的只是例如,只需打开它们并在其中插入命令 procedure TWerkStF.TBBtnStatiClick(S
因此,对于我当前的 Bukkit(Minecraft)插件,我必须使用 ItemStacks 的名称。我通过这样做得到这些名字 item.getItemMeta().getDisplayName();
我想为 JAVA 开发一个猜词游戏,但在开发 GUI 时遇到了一些困难。我并不是想开发一个仅使用一个文本字段的简单 GUI,我想开发一个更像移动设备的 GUI。因此,我希望白框显示为单词中字符的占位符
我想测试输出是否如下所示: String s1 = "You have 5 Dollar in your bank account." 要通过测试,字符串需要相等,所以我需要一个相等的字符串: Str
已关闭。这个问题是 off-topic 。目前不接受答案。 想要改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 已关闭11 年前。 Improve th
我一直在使用 JavaScript 占位符脚本来支持 IE 占位符。 适用于输入类型 = 文本。但是我该如何在脚本中添加一个支持 textarea 的内容呢? 我的代码是: function acti
我正在寻找一个正则表达式,它可以正确检测字符串中是否存在 printf() 类型的占位符。 最佳答案 事实证明这比看起来要复杂一些,答案取决于您想对占位符做什么,以及您对 printf 和正则表达式使
注意占位符在 Stackoverflow 提问标题和 Twitter 注册表单上的工作方式:https://twitter.com/signup 占位符有两种状态: 未选择(显示占位符) 已选择,但有
我想将"template"文件的输出通过管道传输到 MySQL,该文件散布着 ${dbName} 等变量。替换这些实例并将输出转储到标准输出的命令行实用程序是什么? 输入文件被认为是安全的,但可能存在
我有一个像这样的js数组: let data = [{status:"stay",points:[1,2,3,4,5]}, {status:"move",points:[1,2,3,4,5]},{st
这个问题已经有答案了: 已关闭10 年前。 Possible Duplicate: Show default value for editing on Python input possible? 我
我正在尝试使用 python format 方法将我的占位符格式化为字符串。 问题是字符串内部包含 {} 并且字符串方法无法解析它。 my_value='v' '{"k":"{value}"}'.fo
我正在使用 PHP + CodeIgniter 构建一个多语言应用程序。我决定使用 gettext 进行 UI 文本翻译,到目前为止,它已被证明高效且易于使用。 但现在我遇到了一些非常烦人的事情:ge
我有一个 NSAttributedString 看起来像 “一些字符串 bold %@ template %f %d blah blah blah” 我希望能够像 [NSString stringWi
我喜欢偶尔为占位符使用空函数(主要是空构造函数,因为它有助于避免构造函数的意外重复,因为我的团队知道必须始终有一个构造函数)。 我还喜欢对一个类的每个方法至少进行一次测试(主要是因为这是一个很好的简单
我正在尝试向 Angular 4 上的选择添加占位符,但无法使其正常工作, 这是我的代码: Please select one option {{ select
有没有办法在 sqlite3 中设置查询的占位符?我有一些与数据库一起工作的函数,如果它们可以同时与 mysql 和 sqlite 一起工作,那就更令人满意了。Mysql 和 Postgres pyt
我是一名优秀的程序员,十分优秀!