gpt4 book ai didi

google-apps-script - 以编程方式将云端硬盘图像放入表格单元格的正确方法是什么?

转载 作者:行者123 更新时间:2023-12-01 19:31:30 27 4
gpt4 key购买 nike

我有一个 WebApp,它可以将工作现场数据收集到 Google 表格电子表格中,还将工作现场照片收集到我为每个作业创建的 Google 云端硬盘文件夹中。部分(但不是全部)照片必须可以在 Google 表格的单元格中查看,以便可以将工作表打印为作业完成报告的一部分。

我使用 Google Picker 将文件上传到工作站点作业特定的文件夹。我不确定从那里使用它们的最佳方式。

我已成功设置单元格公式,例如 =IMAGE("hllp://i.imgur.com/yuRheros.png", 4, 387, 422),但仅限于图像从网络上的其他地方获取。

使用the permalink trick像这样 =IMAGE("hllp://drive.google.com/uc?export=view&id=0B8xy-TdDgbjiFoOldUlLT091NXM", 4, 387, 422) 不起作用;我认为它不会容忍 Google 在这些链接上进行的 URL 重定向。

我读过但尚未尝试的另一种方法是将实际的 blob 写入单元格。但是,我怀疑我将失去对报告后续格式的任何控制。

也许我需要在多个单元格中以多种方式记录图像规范:

  1. 其 Google 云端硬盘哈希 key
  2. 尺寸
  3. 其在 imgur.com(或类似网站)中的备用位置
  4. 它的 Blob

是否有一种编程方式来获取 Google 重定向的图像最终网址,相当于打开图像并手动复制网址?人们可以永远信任它,还是会随着时间的推移而改变?

更新:我对 =IMAGE("hllp://drive.google.com/uc?export=view&id=0B8xy-TdDgbjiFoOldUlLT091NXM", 4, 387, 422) 不起作用的说法是错误的。必须将图像共享给“知道链接的任何人”,即使电子表格的所有者也是图像的所有者。

我将仅记录 1.hash key 和 2.dimensions 作为我的解决方案,但我很高兴知道是否其他人有更好的想法。

最佳答案

假设您在驱动器中获取了图像的 ID,您可以使用如下代码在工作表的最后一行插入图像(网址与平常略有不同):

  ...
var img = DriveApp.getFileById('image ID');// or any other way to get the image object
var imageInsert = sheet.getRange(lastRow+1, 5).setFormula('=image("https://drive.google.com/uc?export=view&id='+img.getId()+'")');// in this example the image is in column E
sheet.setRowHeight(lastRow+1, 80);// define a row height to determine the size of the image in the cell
...

我建议您仔细检查要显示的文件的共享属性:它们必须设置为“公开”,或者移动到也是“公开”的文件夹中共享”

关于google-apps-script - 以编程方式将云端硬盘图像放入表格单元格的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26801041/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com