有没有办法将图像插入谷歌表格并使用appscript将图像均匀地划分/分割到一定数量的单元格中

问题描述 投票:0回答:1

我不知道是否可能,但我正在尝试插入图像,然后将图像分成一组单元格。

google-sheets google-apps-script
1个回答
0
投票

以下是如何插入图像并调整大小以适合一系列单元格的示例。

代码.gs

function insertImage() {
  try {
    let spread = SpreadsheetApp.getActiveSpreadsheet();
    let sheet = spread.getSheetByName("Sheet25");
    let file = DriveApp.getFileById("1F..........................PF");
    let range = sheet.getRange("A2:B4");
    let size = getRangeSize(range);
    console.log(JSON.stringify(size));
    let image = sheet.insertImage(file.getBlob(),size.column,size.row);
    image.setWidth(size.width);
    image.setHeight(size.height);
  }
  catch(err) {
    console.log("Error in test: "+err)
  }
}

function getRangeSize(range) {
  try {
    let sheet = range.getSheet();
    let rows = range.getHeight();
    let columns = range.getWidth();
    let row = range.getRow();
    let column = range.getColumn();
    let image = { row: row, column: column };
    let width = 0;
    let height = 0;
    for( let i=1; i<=rows; i++ ) {
      height = height+sheet.getRowHeight(row++);
    }
    for( let i=1; i<=columns; i++ ) {
      width = width+sheet.getColumnWidth(column++);
    }
    image.width = width;
    image.height = height;
    return image;
  }
  catch(err) {
    console.log("Error in getRangeSize: "+err);
  }
}

参考

© www.soinside.com 2019 - 2024. All rights reserved.