下面的代码应插入一个由base64字符串img_3k制作的图像blob,但不知何故它不会。我做错了什么?
var img_3k = "iVBORw0KGg..."
function searchAndReplace() {
var body = DocumentApp.getActiveDocument().getBody();
var blobImg = Utilities.newBlob(Utilities.base64Decode(img_3k), MimeType.PNG);
body.insertImage(0, blobImg);
}
答案 0 :(得分:0)
嗯,我的代码没问题。 我想您的问题是您使用的是全局变量,但您无法在Google Apps脚本中使用全局变量。
function searchAndReplace() {
var img= getImage();
var body = DocumentApp.getActiveDocument().getBody();
var blobImg = Utilities.newBlob(Utilities.base64Decode(img), MimeType.PNG);
body.insertImage(0, blobImg);
}
function getImage() {
return "iVBORw0KGgoAAA...SUVORK5CYII=";
}
答案 1 :(得分:0)
在全局var声明之前删除“var”:
img_3k = "iVBORw0KGg...";
在全局范围内使用var声明的变量在函数中不可见。 您也可以将变量大写(IMG_3K),这样您就可以立即知道它是一个静态的全局变量
答案 2 :(得分:0)
代码实际上是正确的,但没有被执行,因为我没有从正确的位置调用它。放入onInstall方法,然后就可以了。