切换幻灯片版式时如何让 PowerPoint 映射两个占位符?
How do I tell PowerPoint to map two placeholders when switching slide layouts?
我从一个工作示例开始:
- 打开带有空白演示文稿的 PowerPoint。
- Right-click 标题幻灯片并选择 "Layout - Title and Content"。
- 您看到“• 单击以添加文本”?单击并添加一些文本。
- Right-click 再次滑动并选择 "Layout - Two Content"。
看看 PowerPoint 有多智能?
- 您之前在单个占位符中输入的文本现在位于 两个 占位符之一中。
- 具体来说,左边那个。
我的问题:
- 为什么? (而不是额外的?)
- 为什么? (而且不在正确的位置?)
我的问题出现是因为我收到了一组母版幻灯片,其中上面的内容没有工作,我正在尝试修复它而不必重新生成所有内容。
这是一个编程问题的网站,但这个问题背后的背景可能足够复杂。现代 PowerPoint 文件是 XML。在每个幻灯片布局的 XML 中,每个占位符都有一个 idx 参考编号。 PowerPoint 使用这些数字来决定放置内容的位置。
惰性设计师综合症 是造成您所见情况的原因。设计者没有按顺序创建新的占位符,因此 idx 编号将按逻辑顺序递增,而是复制并粘贴了占位符以避免额外的格式化工作。粘贴的占位符都具有相同的 idx 编号。因此,PowerPoint 不知道占位符顺序并随机插入内容。
如果不编辑 XML,这并不总是容易解决,但您可以尝试删除除最左边的占位符以外的所有内容。然后通过一次插入一个占位符并手动重新格式化以匹配第一个来创建新的占位符。
@JohnKorchok 接受的答案提供了此处描述的过程的技术细节。请注意,我的演示文稿中只有 "Content Placeholders"。
- 安装 7-Zip 和您最喜欢的文本编辑器(您可以使用带有 XML 格式化程序的编辑器,这会简化操作,但这不是必需的)。
- 在 7-Zip 中打开
file.pptx
(无需重命名为 .zip
,只需右键单击并 "Open Archive")
- 导航到
ppt/slideLayouts
。
- 查看
slideLayout....xml
个文件的列表。
- 确定您要编辑的文件,例如,打开每个文件并查找
<p:cSld name
。 (这些数字可能仅表示布局的创建顺序,而不是它们现在在 PowerPoint 中显示的顺序 - 尽管在 PowerPoint 2016 中保存 .pptx
文件确实为我修改了幻灯片布局,以便显示顺序与文件名编号匹配。)
- 查找
<p:ph
,直到找到您要编辑的内容。您可能想忽略带有 type="title"
、type="ftr"
、type="sldNum"
. 的那些
- 将所有其他占位符的
idx
更改为 1
、2
、... 按照您希望它们填充的顺序(使用 <p:cNvPr ... name=
识别占位符)。
- 保存
.xml
文件,关闭编辑器,然后 7-Zip 会要求更新存档。回答 "Yes".
因此,我将 1 内容布局中的一个占位符 idx
设置为 1
,2 内容布局中的左侧占位符设置为 1
,然后2
用于我的 2 内容布局中的正确占位符。
起初我尝试按照上面的方法失败了,但现在我也成功了。
有两个不同但相似的标签,id="" 和 idx=""。
幻灯片中的所有对象都有一个id=""标签,这个不是解决这个问题的标签。
idx="" 标签仅适用于 Placeholder 对象,Type=Title 除外。
如上所述,您可以将其设置为 1 或更大的整数值(我假设)。
制定应在布局中替换哪些占位符对象的计划。我将这些视为“组”或“家庭”,然后在整个幻灯片布局中一致地分配 idx 值。
占位符的这些“组”或“系列”需要兼容才能工作,即匹配类型。没有类型意味着占位符是一般内容类型并匹配所有类型。
在布局更改过程中,如果占位符具有不兼容的类型但具有相同的idx-tag,PPT 将寻找下一个具有匹配类型的占位符。
我从一个工作示例开始:
- 打开带有空白演示文稿的 PowerPoint。
- Right-click 标题幻灯片并选择 "Layout - Title and Content"。
- 您看到“• 单击以添加文本”?单击并添加一些文本。
- Right-click 再次滑动并选择 "Layout - Two Content"。
看看 PowerPoint 有多智能?
- 您之前在单个占位符中输入的文本现在位于 两个 占位符之一中。
- 具体来说,左边那个。
我的问题:
- 为什么? (而不是额外的?)
- 为什么? (而且不在正确的位置?)
我的问题出现是因为我收到了一组母版幻灯片,其中上面的内容没有工作,我正在尝试修复它而不必重新生成所有内容。
这是一个编程问题的网站,但这个问题背后的背景可能足够复杂。现代 PowerPoint 文件是 XML。在每个幻灯片布局的 XML 中,每个占位符都有一个 idx 参考编号。 PowerPoint 使用这些数字来决定放置内容的位置。
惰性设计师综合症 是造成您所见情况的原因。设计者没有按顺序创建新的占位符,因此 idx 编号将按逻辑顺序递增,而是复制并粘贴了占位符以避免额外的格式化工作。粘贴的占位符都具有相同的 idx 编号。因此,PowerPoint 不知道占位符顺序并随机插入内容。
如果不编辑 XML,这并不总是容易解决,但您可以尝试删除除最左边的占位符以外的所有内容。然后通过一次插入一个占位符并手动重新格式化以匹配第一个来创建新的占位符。
@JohnKorchok 接受的答案提供了此处描述的过程的技术细节。请注意,我的演示文稿中只有 "Content Placeholders"。
- 安装 7-Zip 和您最喜欢的文本编辑器(您可以使用带有 XML 格式化程序的编辑器,这会简化操作,但这不是必需的)。
- 在 7-Zip 中打开
file.pptx
(无需重命名为.zip
,只需右键单击并 "Open Archive") - 导航到
ppt/slideLayouts
。 - 查看
slideLayout....xml
个文件的列表。 - 确定您要编辑的文件,例如,打开每个文件并查找
<p:cSld name
。 (这些数字可能仅表示布局的创建顺序,而不是它们现在在 PowerPoint 中显示的顺序 - 尽管在 PowerPoint 2016 中保存.pptx
文件确实为我修改了幻灯片布局,以便显示顺序与文件名编号匹配。) - 查找
<p:ph
,直到找到您要编辑的内容。您可能想忽略带有type="title"
、type="ftr"
、type="sldNum"
. 的那些
- 将所有其他占位符的
idx
更改为1
、2
、... 按照您希望它们填充的顺序(使用<p:cNvPr ... name=
识别占位符)。 - 保存
.xml
文件,关闭编辑器,然后 7-Zip 会要求更新存档。回答 "Yes".
因此,我将 1 内容布局中的一个占位符 idx
设置为 1
,2 内容布局中的左侧占位符设置为 1
,然后2
用于我的 2 内容布局中的正确占位符。
起初我尝试按照上面的方法失败了,但现在我也成功了。
有两个不同但相似的标签,id="" 和 idx=""。 幻灯片中的所有对象都有一个id=""标签,这个不是解决这个问题的标签。
idx="" 标签仅适用于 Placeholder 对象,Type=Title 除外。 如上所述,您可以将其设置为 1 或更大的整数值(我假设)。
制定应在布局中替换哪些占位符对象的计划。我将这些视为“组”或“家庭”,然后在整个幻灯片布局中一致地分配 idx 值。
占位符的这些“组”或“系列”需要兼容才能工作,即匹配类型。没有类型意味着占位符是一般内容类型并匹配所有类型。
在布局更改过程中,如果占位符具有不兼容的类型但具有相同的idx-tag,PPT 将寻找下一个具有匹配类型的占位符。