错误:
我正在尝试使用其文件 ID 将 Google 云端硬盘上的图像插入到 Google 幻灯片中。
但是,我发现对于某些图像,使用 或insertImage
会replaceWithImage
生成 [异常:您尝试使用的图像无效或损坏。] 错误。以下是该问题的一个小重现。
function myfunction() {
var deck = SlidesApp.openById("...");
var slides = deck.getSlides();
var template = slides[0];
var currentSlide = template.duplicate();
var imgId = "...";
var logo = DriveApp.getFileById(imgId);
try {
currentSlide.insertImage(logo);
} catch (err) {
console.log("An error occurred: ", err);
}
}
我找不到这些特定图像有什么问题。它们的大小小于 50MB,低于 25 兆像素,格式为 png 或 jpeg。不幸的是,我无法附加相关图像,因为它们是私人照片,而且我还没有找到具有相同问题的免费图像。但如果有人给我任何关于尝试什么的建议,我将不胜感激。
我尝试过的
.getBlob()
我尝试使用DriveApp.getFileById(imgId).getBlob();
而不是 DriveApp.getFileById(imgId)
. 但一切都没有改变。
编辑扩展与在线转换器
我从百科全书中下载了苹果的照片,最初是.webp格式。然后我尝试了两件事:
- 我只需在 Macbook 上编辑文件名,即可将其扩展名从 .webp 更改为 .jpg,然后将其上传到 Google Drive。此 .jpg 生成相同的异常。
- 我将 .webp 上传到在线转换器并下载 .jpg 文件,然后将其上传到 Google Drive。此 .jpg 不会生成异常。