Google apps script 是否有某些Google幻灯片AppScript被记录但不受支持?

Google apps script 是否有某些Google幻灯片AppScript被记录但不受支持?,google-apps-script,google-slides-api,google-slides,Google Apps Script,Google Slides Api,Google Slides,我试图在谷歌幻灯片中操纵一个表,但似乎有记录在案的操作会在AppScript中抛出错误 注释掉的行引发以下错误: 不支持更新此页面元素类型的大小 这个答案怎么样?我也向你证实了同样的情况。我认为这可能是一个错误。因为使用幻灯片API时,可以创建调整宽度和高度的表格。因此,在当前的解决方案中,当创建表时需要调整表的大小时,我使用Slides API创建表。示例脚本如下所示 var presentation = SlidesApp.getActivePresentation(); var slid

我试图在谷歌幻灯片中操纵一个表,但似乎有记录在案的操作会在AppScript中抛出错误

注释掉的行引发以下错误:

不支持更新此页面元素类型的大小


这个答案怎么样?我也向你证实了同样的情况。我认为这可能是一个错误。因为使用幻灯片API时,可以创建调整宽度和高度的表格。因此,在当前的解决方案中,当创建表时需要调整表的大小时,我使用Slides API创建表。示例脚本如下所示

var presentation = SlidesApp.getActivePresentation();
var slides = presentation.getSlides();
var resource = {"requests":[{"createTable": {
  "rows": 2,
  "columns": 3,
  "elementProperties": {
    "size": {
      "width": {"unit": "PT", "magnitude": presentation.getPageWidth()},
      "height": {"unit": "PT", "magnitude": presentation.getPageHeight()},
    },
    "pageObjectId": slides[0].getObjectId()},
  }
}]};
Slides.Presentations.batchUpdate(resource, presentation.getId());
为了使用示例脚本,在运行脚本之前,请在高级Google服务和API控制台启用幻灯片API,如下所示

var presentation = SlidesApp.getActivePresentation();
var slides = presentation.getSlides();
var resource = {"requests":[{"createTable": {
  "rows": 2,
  "columns": 3,
  "elementProperties": {
    "size": {
      "width": {"unit": "PT", "magnitude": presentation.getPageWidth()},
      "height": {"unit": "PT", "magnitude": presentation.getPageHeight()},
    },
    "pageObjectId": slides[0].getObjectId()},
  }
}]};
Slides.Presentations.batchUpdate(resource, presentation.getId());
在高级Google服务中启用幻灯片API v1
  • 关于脚本编辑器
    • 资源->高级谷歌服务
    • 打开谷歌幻灯片API v1
在API控制台启用幻灯片API
  • 关于脚本编辑器
    • 资源->云平台项目
    • 查看API控制台
    • 开始时,单击“浏览并启用API”
    • 在左侧,单击“库”
    • 在“搜索API和服务”中,输入“幻灯片”。点击“谷歌幻灯片API”
    • 单击启用按钮
    • 如果API已经启用,请不要关闭
示例脚本1: 当使用Slides API修改脚本时,它将如下所示

var presentation = SlidesApp.getActivePresentation();
var slides = presentation.getSlides();
var resource = {"requests":[{"createTable": {
  "rows": 2,
  "columns": 3,
  "elementProperties": {
    "size": {
      "width": {"unit": "PT", "magnitude": presentation.getPageWidth()},
      "height": {"unit": "PT", "magnitude": presentation.getPageHeight()},
    },
    "pageObjectId": slides[0].getObjectId()},
  }
}]};
Slides.Presentations.batchUpdate(resource, presentation.getId());
示例脚本2: 如果要修改现有表的大小,可以使用以下脚本

var presentation = SlidesApp.getActivePresentation();
var slides = presentation.getSlides();
var table = slides[0].getTables()[0];
var tableObjectId = table.getObjectId();
var resource = {"requests": [
  {"updateTableColumnProperties": {
    "objectId": tableObjectId,
    "tableColumnProperties": {"columnWidth": {"unit": "PT", "magnitude": presentation.getPageWidth() / table.getNumColumns()}}, "fields": "*"}
  },
  {"updateTableRowProperties": {
    "objectId": tableObjectId,
    "tableRowProperties": {"minRowHeight":{"unit": "PT", "magnitude": presentation.getPageHeight() / table.getNumRows()}},"fields":"*"}
  }
]};
Slides.Presentations.batchUpdate(resource, presentation.getId());
参考资料:

如果这不是您想要的解决方法,我很抱歉。

谢谢!我认为情况就是这样,但我希望避免改变我的项目的整个范围,以包括API集成。这段代码将极大地帮助加速集成。“这是一种严重的痛苦,它不能作为Table类中的一个方法来管理。”Stewart Whitman感谢您的回答。很抱歉,我没有注意到您不能使用幻灯片API。我也很抱歉,我的回答对您的情况没有帮助,您的问题也没有得到解决。@Tanaike似乎很有趣,如果我将使用此幻灯片API构建附加组件,那么它将在没有任何依赖项的情况下工作?“好像您正在启用编辑器和控制台中的某些设置?”困惑的男孩感谢您的回答。我愿意支持你。但是我不得不为我糟糕的英语水平道歉。不幸的是,我无法理解您当前的问题和您的目标。因此,为了正确理解您的问题,您能否通过包含更多信息将其作为新问题发布?这样,它将帮助用户思考解决方案。如果你能合作解决你的问题,我很高兴。