我的客户已将一些照片上传到他们的Google云端硬盘,并希望我在他们公司的网站上展示他们的照片.我查看了在网页中显示Google云端硬盘内容的文档,但看起来这只是在网页中显示内容的说明.
我的问题是,如何直接在客户的网页上显示内容?
谢谢.
我正在使用Google Drive API(PHP)将一些照片上传到我的云端硬盘.上载文件时,Google_DriveFile将在响应中返回一个对象以确认成功传输.它包括一个thumbnailLink可通过getThumbnailLinkgetter 访问的字段.其内容可能如下所示:
直到今天,我确信链接不会随着时间的推移而自行改变.但是,当我尝试在我的驱动器上显示照片的缩略图时,使用我保存在本地数据库中的缓存地址,我收到403错误 - 您可以在上述链接下看到它.我向API询问了缩略图的当前链接,现在它完全不同了.
它发生在我身上只有一次,但对于多个文件,即我在驱动器上的所有文件突然得到了新的缩略图链接.
有没有办法快速检索文档的缩略图(最好是照片)一些常数值,或确保它不会改变?完美的解决方案是在包含文档的链接下访问缩略图,id而不是可能更改的某些哈希.
我希望能够将图像文件从 Google Drive 添加到我的电子表格中。我看到有一个内置的图像功能可用 = 图像,但这需要一个 URL,并且您的图像文件在互联网上公开共享,我正在处理数字资产,无法公开共享它们。
我有以下代码,这有效但不会添加到所需的单元格中,这可能吗?
function insertImageFromDrive(){
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
var fileId = '0B5UAkV0avfiKNGYtd1VzUzlsTVk';
var img = DriveApp.getFileById(fileId).getBlob();
sheet.insertImage(img, 4, 3)
}
Run Code Online (Sandbox Code Playgroud) 我想创建一个保存在 G Drive 中的签名 png 文件,并将其粘贴到带有菜单项的单元格中。我已将图像设置为公开并尝试使用共享 URL,但这无法添加 =IMAGE 或以编程方式执行此操作。我已经尝试了互联网上的各种代码,但迄今为止都没有成功。最后一次尝试列出的代码。
function mysig() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
var rng = sheet.getRange(34,6);
var url = "https://drive.google.com/file/d/id/view?usp=sharing"
var fetch_img = UrlFetchApp.fetch(url);
var blob = fetch_img.getBlob();
Logger.log(fetch_img.getBlob())
sheet.insertImage(blob, 6, 34);
}
Run Code Online (Sandbox Code Playgroud) 我有一个包含远程加载和在 Google Drive 中创建的图像的 blob:
var response = UrlFetchApp.fetch(fileURL);
var fileBlob = response.getBlob();
var folder = DriveApp.getFolderById('THjgj698979XXXXXXXX');
var result = folder.createFile(fileBlob);
Run Code Online (Sandbox Code Playgroud)
我想要的是调整此 fileBlob 中包含的图像的大小。我怎样才能做到这一点?
供您参考,一篇可以帮助但最终并没有真正帮助我的帖子:(解释了如何调整图像大小,而不是如何调整 blob 中的图像大小) 在 Google Apps 脚本中调整图像大小
谢谢
编辑 :
这就是我现在所做的。但是我遇到了一个问题:图像被缩小了,但不是我指定的尺寸......
var response = UrlFetchApp.fetch(fileURL);
var fileBlob = response.getBlob();
var folder = DriveApp.getFolderById('THjgj698979XXXXXXXX');
var docfile = Drive.Files.insert({
title: "temp",
mimeType: "application/vnd.google-apps.document",
}).getId();
var blobImage = DocumentApp.openById(docfile).insertImage(0, fileBlob);
blobImage.setWidth(10);
blobImage.setHeight(10);
var fileBlob2 = blobImage.getBlob();
fileBlob2.setName(newFilename);
var result = folder.createFile(fileBlob2);
Run Code Online (Sandbox Code Playgroud)
图像从 4000x6000 缩小到 2500x1667。不是 10x10 :(
你知道如何解决这个问题吗?
谢谢 …
google-app-engine google-apps google-docs-api google-apps-script google-sheets-api
google-apps ×1