图片来自 Google 通过 DriveApp.getFileById 驱动到 Google 幻灯片
Image from Google Drive to Google Slides via DriveApp.getFileById
我想将图像导入 Google 在指令 Google Developers - How to...
之后滑过 Google Apps 脚本
function createImage(presentationId) {
// Add a new image to the presentation page. The image is assumed to exist in
// the user's Drive, and have 'imageFileId' as its file ID.
var requests = [];
var pageId = 'g1fe0c....';
var imageId = 'MyImage_01';
var imageUrl = DriveApp.getFileById('0B6cQESmLJfX...').getUrl();
var emu4M = {
magnitude: 4000000,
unit: 'EMU'
};
requests.push({
createImage: {
objectId: imageId,
url: imageUrl,
elementProperties: {
pageObjectId: pageId,
size: {
height: emu4M,
width: emu4M
},
transform: {
scaleX: 1,
scaleY: 1,
translateX: 100000,
translateY: 100000,
unit: 'EMU'
}
}
}
});
// Execute the request.
var response = Slides.Presentations.batchUpdate({
requests: requests
}, presentationId);
}
但是对于我尝试过的每一种图像格式,Google Apps 脚本中都有一条错误消息:
Invalid requests[0].createImage: The provided image is in an
unsupported format.
Drive- and Slides API 在 Google 高级服务中激活。文件夹和文件有 public 共享。
有人使用命令 DriveApp.getFileById() 并随后成功导出到 Google 幻灯片吗?
下面的修改怎么样?
发件人:
var imageUrl = DriveApp.getFileById('0B6cQESmLJfX...').getUrl();
收件人:
var imageUrl = DriveApp.getFileById('0B6cQESmLJfX...').getDownloadUrl() + "&access_token=" + ScriptApp.getOAuthToken();
从这个文档来看,似乎需要访问令牌。 https://developers.google.com/slides/how-tos/add-image
更新时间:2020 年 2 月 7 日
从 2020 年 1 月起,访问令牌不能与 access_token=###
等查询参数一起使用。 Ref 所以请使用请求的访问令牌 header 而不是查询参数。
在OP的情况下,我认为可以使用this answer。
我想将图像导入 Google 在指令 Google Developers - How to...
之后滑过 Google Apps 脚本function createImage(presentationId) {
// Add a new image to the presentation page. The image is assumed to exist in
// the user's Drive, and have 'imageFileId' as its file ID.
var requests = [];
var pageId = 'g1fe0c....';
var imageId = 'MyImage_01';
var imageUrl = DriveApp.getFileById('0B6cQESmLJfX...').getUrl();
var emu4M = {
magnitude: 4000000,
unit: 'EMU'
};
requests.push({
createImage: {
objectId: imageId,
url: imageUrl,
elementProperties: {
pageObjectId: pageId,
size: {
height: emu4M,
width: emu4M
},
transform: {
scaleX: 1,
scaleY: 1,
translateX: 100000,
translateY: 100000,
unit: 'EMU'
}
}
}
});
// Execute the request.
var response = Slides.Presentations.batchUpdate({
requests: requests
}, presentationId);
}
但是对于我尝试过的每一种图像格式,Google Apps 脚本中都有一条错误消息:
Invalid requests[0].createImage: The provided image is in an unsupported format.
Drive- and Slides API 在 Google 高级服务中激活。文件夹和文件有 public 共享。
有人使用命令 DriveApp.getFileById() 并随后成功导出到 Google 幻灯片吗?
下面的修改怎么样?
发件人:
var imageUrl = DriveApp.getFileById('0B6cQESmLJfX...').getUrl();
收件人:
var imageUrl = DriveApp.getFileById('0B6cQESmLJfX...').getDownloadUrl() + "&access_token=" + ScriptApp.getOAuthToken();
从这个文档来看,似乎需要访问令牌。 https://developers.google.com/slides/how-tos/add-image
更新时间:2020 年 2 月 7 日
从 2020 年 1 月起,访问令牌不能与 access_token=###
等查询参数一起使用。 Ref 所以请使用请求的访问令牌 header 而不是查询参数。
在OP的情况下,我认为可以使用this answer。