我尝试创建一个演示文稿以将其用作模板。而且我需要定义布局的objectID(以便我可以轻松创建幻灯片并应用布局)。我定义它的唯一方法是创建一个具有自定义布局和母版的新演示文稿。

当我在请求中添加主键和布局键时,Google slides api会忽略它。它将简单的主题应用于演示文稿。

我该如何解决?

这是代码示例(我尝试向幻灯片和布局添加元素,但结果相同)

body = {
    "masters": [
        {
            "pageType": "MASTER",
            "objectId": "Master",
            "masterProperties": {
                "displayName": "Master Name"
            }
        }
    ],

    "layouts": [
        {
            "pageType": "LAYOUT",
            "objectId": "Layout",
            "layoutProperties": {
                "displayName": "Layout Name",
                "name": "Layout Name",
                "masterObjectId": "Master"
            }
        }
    ],

    "slides": [
        {
            "slideProperties": {
                "masterObjectId": "Master",
                "layoutObjectId": "Layout"
            },
            "objectId": "Slide"
        }
    ],

    "title": "2019-11-12 - Template",
    "locale": "en-US"
}


presentation   = service.presentations().create(body = body).execute()

最佳答案

如您所见in the official documentation,方法presentations.create仅创建一个空白演示文稿。仅考虑title,如果您提供的话,将考虑presentationId。 “将忽略请求中的其他字段,包括任何提供的内容”。与with Docs API基本上是相同的行为。

因此,为了向演示文稿添加内容,样式,属性等,您必须使用batchUpdate

希望对您有帮助。

关于python - 创建演示文稿时如何在Google Slides API中应用自定义布局,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58824017/

10-12 18:16