我想创建一个保存在G Drive中的签名png文件,并将其粘贴到带有菜单项的单元格中。我已将图片设置为公开,并尝试使用共享网址,但这并不适用于添加= 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);
}
答案 0 :(得分:4)
使用云端硬盘应用程序生成谷歌硬盘图像的blob。请参阅以下代码。
function insertImage() {
var openSpreadSheet = SpreadsheetApp.openById("spreadSheetID").getSheetByName("Sheet1");
var getImageBlob = DriveApp.getFileById("GooglDriveImageID").getBlob();//0B5JsAY8jN1CoNjlZR2tUUHpISFE
openSpreadSheet.insertImage(getImageBlob,2,2,100,200); //insertImage(blob, column, row, offsetX, offsetY)
}
编辑2:使用图像公式 - 匹配单元格大小
function insertImage() {
var openSpreadSheet = SpreadsheetApp.openById("spreadSheetID").getSheetByName("Sheet1");
var url = "https://docs.google.com/uc?export=download&id=0B5JsAY8jN1CoNjlZR2tUUHpISFE";
openSpreadSheet.getRange(5, 3).setFormula('=image("'+url+'",2)')
}
=图像("网址") - 图像在增加/减少单元格大小时保留纵横比
= image(" URL",2) - 图片拉伸以适合单元格的所有边缘
=图片("网址",3) - 图片保留原始尺寸
= image(" URL“,4,50,50) - 通过将50,50替换为所需尺寸来设置图像的大小