3

我正在尝试制作一个脚本来调整谷歌文档中的图像大小。我所拥有的是:

var imgs = currentDoc.getImages();

for (var i = 1; i < imgs.length; i++)
{
   cell = row.insertTableCell(1);
   imgNew = imgs[i].setWidth(365);

   cell.insertImage(1, imgNew.getBlob());
}

图像被正确插入,但无论我将宽度设置为多少,大小都不会改变。由于图像进入一个单元格(宽度= 370),是否可以让图像占据 100% 的宽度并按比例缩放高度?如果不是,我可以手动设置像素数,但这也不起作用。有任何想法吗?

4

3 回答 3

1

仅供参考,您不需要调用 getBlob()...任何具有 getBlob() 的东西都可以在需要 Blob 的地方直接传入。

于 2012-08-29T13:37:35.287 回答
1

问题是图像大小在插入表格后应该改变。以下代码正常工作

function test() {
  var doc = DocumentApp.openById('here_is_doc_id');
  var imgs = doc.getImages();
  var table = doc.getTables()[0];
  for (var i = 0; i < imgs.length; i++) {
   var row = table.appendTableRow();
   var cell = row.insertTableCell(0);
   var imgNew = imgs[i].copy();
   cell.insertImage(0, imgNew);
   imgNew.setWidth(365);
  }
}

请注意,数组索引、单元格编号等从 0 而不是 1 开始。

于 2012-08-28T07:47:59.013 回答
-2

你有没有尝试过:

imgs[i].attr('width', '370');

或者尝试分配一个具有 width: 100% 的类

于 2012-08-28T03:39:30.753 回答