如何识别在Google文档中读取的图像?

时间:2018-06-22 19:40:12

标签: google-apps-script

我有一个包含文本和图像的文档,我想创建一个GAS,该GAS可以读取我的文档并确定其读取的元素类型。我的脚本去了...

function myFunction() {
  var doc = DocumentApp.openById('doc_ID');
  var body = doc.getBody();
  var paragraphs = body.getParagraphs();
  var images = doc.getBody().getImages();

  Logger.log("There are " + images.length + " images found");
  Logger.log("There are " + paragraphs.length + " paragraph found");

  paragraphs.forEach(function (data, index) {
      Logger.log(index+1 + ' is ' + data.getType()); //returns an ElementType
  });
}

的结果

screen shot

显示发现在2号和7号图像上找到了2张图像。

var images = doc.getBody().getImages();  //returned 2 InlineImage

但是,如果有两个INLINE_IMAGE,为什么data.getType()将所有内容显示为PARAGRAPH?还有另一种方法可以识别它是读取图像而不是文本吗?

1 个答案:

答案 0 :(得分:1)

每个段落中都有一些元素。因此,当您要检索INLINE_IMAGE时,如何进行此修改?

发件人:

paragraphs.forEach(function (data, index) {
  Logger.log(index+1 + ' is ' + data.getType()); //returns an ElementType
});

收件人:

paragraphs.forEach(function (data, index) {
  Logger.log(index+1 + ' is ' + data.getType()); //returns an ElementType
  for (var i = 0; i < data.getNumChildren(); i++) { // Added
    Logger.log(data.getChild(i).getType()); // Added
  }
});

参考文献:

如果这不是您想要的,对不起。