通过Google App脚本创建表单 - 动态提取图像

时间:2014-03-11 02:59:14

标签: google-apps-script

用于生成表单中的项目的表单函数似乎动态地为除图像之外的所有内容起作用。为了在表单中生成视频,这是使用的格式,从电子表格动态提取数据。

    var ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("makechoice");

    var dataRange = ss.getRange(2,1,40,20);
    var data = dataRange.getValues();


    var form = FormApp.create("Make a Test");  
    for (i in data) {
    var row = data[i];
    var qst = row[2];
    var url  = row[8];

    if (word == "Video") { form.addVideoItem()
                           .setTitle(qst)
                           .setHelpText(qst)
                           .setVideoUrl(url);
                         }

这很好用。但是,给出的图像示例如下。

    var img = UrlFetchApp.fetch('http://www.example.com');
    form.addImageItem()
            .setTitle('Title')
            .setHelpText('Description') // The help text is the image description
            .setImage(img);

除了url之外,其他任何内容都不能与“fetch”函数一起使用!因此,我只能使用一个静态URL来使其工作,但它不能像电子表格中那样从电子表格中的单元格中提取。有没有解决的办法?我希望这能动态地在循环中生成表单中的多个图像项。

1 个答案:

答案 0 :(得分:1)

.setImage()采用blob类型

var img = UrlFetchApp.fetch('https://developers.google.com/apps-script/images/logo-transparent.png');
var blob = img.getBlob();
...
.setImage(blob);