OpenTBS / PHP / PowerPoint 模板 - 如何合并多张幻灯片中的文本?
OpenTBS / PHP / PowerPoint Template - How do I merge text across multiple slides?
我正在尝试使用 OpenTBS 将文本合并到多张幻灯片,但无法在多张幻灯片的标题中替换 [a.ProjectName]。
我遵循了 OpenTBS 中的演示,但是当我使用下面的代码检索项目名称时,我无法使块替换成功。
这是我用过的代码:
$data = array ('ProjectName' => $manageProjectName->getProjectName());
$TBS->MergeBlock('a', $data);
$TBS->Plugin(OPENTBS_SELECT_SLIDE, 1, true); //true means use slide master but it is not having any effect
如何在多张幻灯片中将 [a.ProjectName] 替换为 ProjectName 的内容,并使用 OpenTBS 将 ProjectName 的内容合并到多张幻灯片?
以下是您的情况需要考虑的要点:
- 您必须先 select 一张幻灯片才能合并其中的内容(
MergeBlock()
、MergeField()
和自动字段 [onload]
、[onshow]
)。
- 但是当您调用 LoadTemplate() 时,OpenTBS 会自动 select 普通幻灯片 #1。
- 母版幻灯片是您必须使用命令 OPENTBS_SELECT_SLIDE 明确 select 的特定幻灯片。
您的代码段中的另一个问题是您似乎混淆了 MergeBlock()
和 MergeField()
。 MergeBlock() 用于合并作为记录集的数据(多个记录,具有多个字段);因此,该块被重复的次数与记录的次数一样多。 MergeField() 用于合并项目,就像在您的代码段中一样。
所以你的代码应该是:
$data = array ('ProjectName' => $manageProjectName->getProjectName());
// Merging [a.ProjectName] in the master slide #1
$TBS->Plugin(OPENTBS_SELECT_SLIDE, 1, true);
$TBS->MergeField('a', $data);
// Merging [a.ProjectName] in the normal slide #1
$TBS->Plugin(OPENTBS_SELECT_SLIDE, 1);
$TBS->MergeField('a', $data);
我正在尝试使用 OpenTBS 将文本合并到多张幻灯片,但无法在多张幻灯片的标题中替换 [a.ProjectName]。
我遵循了 OpenTBS 中的演示,但是当我使用下面的代码检索项目名称时,我无法使块替换成功。
这是我用过的代码:
$data = array ('ProjectName' => $manageProjectName->getProjectName());
$TBS->MergeBlock('a', $data);
$TBS->Plugin(OPENTBS_SELECT_SLIDE, 1, true); //true means use slide master but it is not having any effect
如何在多张幻灯片中将 [a.ProjectName] 替换为 ProjectName 的内容,并使用 OpenTBS 将 ProjectName 的内容合并到多张幻灯片?
以下是您的情况需要考虑的要点:
- 您必须先 select 一张幻灯片才能合并其中的内容(
MergeBlock()
、MergeField()
和自动字段[onload]
、[onshow]
)。 - 但是当您调用 LoadTemplate() 时,OpenTBS 会自动 select 普通幻灯片 #1。
- 母版幻灯片是您必须使用命令 OPENTBS_SELECT_SLIDE 明确 select 的特定幻灯片。
您的代码段中的另一个问题是您似乎混淆了 MergeBlock()
和 MergeField()
。 MergeBlock() 用于合并作为记录集的数据(多个记录,具有多个字段);因此,该块被重复的次数与记录的次数一样多。 MergeField() 用于合并项目,就像在您的代码段中一样。
所以你的代码应该是:
$data = array ('ProjectName' => $manageProjectName->getProjectName());
// Merging [a.ProjectName] in the master slide #1
$TBS->Plugin(OPENTBS_SELECT_SLIDE, 1, true);
$TBS->MergeField('a', $data);
// Merging [a.ProjectName] in the normal slide #1
$TBS->Plugin(OPENTBS_SELECT_SLIDE, 1);
$TBS->MergeField('a', $data);