addPositionedImage () Не отвечает, как предполагалось - PullRequest
0 голосов
/ 02 марта 2019

Я пытаюсь разместить позиционированное изображение, используя google appscripts, и когда я его размещаю, в документе отображаются два изображения.Но когда я запускаю код, чтобы попытаться найти второе изображение, оно как Google не видит его вообще.Пожалуйста, помогите.

    function createBusPasses(busNum, date, sname, teacher, address, comments) {
      var ad = DocumentApp.getActiveDocument();
      var docBody = ad.getBody();
      var paragraphs = docBody.getParagraphs();
      var blob = UrlFetchApp.fetch("Image URL").getBlob();
     //THIS IS THE ONE THAT IS CAUSING THE ISSUES....You have two paragraphs when running the code.  Fix it.
     var anchor = docBody.appendParagraph("Fostertown ETC").setHeading(DocumentApp.ParagraphHeading.HEADING1);
     anchor.addPositionedImage(blob).setWidth(200).setHeight(100);

     docBody.appendParagraph("Magnet School").setHeading(DocumentApp.ParagraphHeading.HEADING1);
     docBody.appendParagraph("Special Bus Transportation Form").setHeading(DocumentApp.ParagraphHeading.HEADING1);
     docBody.appendParagraph("");
     docBody.appendParagraph("");

     docBody.appendParagraph("BUS NUMBER:    " + busNum + "\t\t\t\t\tDATE:    " + date).setHeading(DocumentApp.ParagraphHeading.HEADING2);
     docBody.appendParagraph("NAME:    " + sname + "\t\t\t\tTEACHER:    " + teacher).setHeading(DocumentApp.ParagraphHeading.HEADING2);
     docBody.appendParagraph("");
     docBody.appendParagraph("Please transport to the following address: \n\t\t" + address ).setHeading(DocumentApp.ParagraphHeading.HEADING2);
     docBody.appendParagraph("");
     docBody.appendParagraph("Comments: " + comments ).setHeading(DocumentApp.ParagraphHeading.HEADING2);

     docBody.appendParagraph("");
     docBody.appendParagraph("");
     docBody.appendParagraph("");
     docBody.appendParagraph("");
     docBody.appendParagraph("");
     docBody.appendParagraph("");
     docBody.appendParagraph("");

     //Clears first paragraph on initial pass

     Logger.log(paragraphs[0].getText());
     paragraphs = docBody.getParagraphs();
     if(paragraphs[0].getText() == ""){
       paragraphs[0].removeFromParent();
     }


     Logger.log(paragraphs[0].getPositionedImage());

   }

Изображение полученного Google Doc

1 Ответ

0 голосов
/ 02 марта 2019

Попробуйте это:

Это сработало для меня:

function createBusPasses() {
  var ad = DocumentApp.getActiveDocument();
  var docBody = ad.getBody();
  var paragraphs = docBody.getParagraphs();  
  var anchor=docBody.appendParagraph("Fostertown ETC").setHeading(DocumentApp.ParagraphHeading.HEADING1);
  var blob=DriveApp.getFileById('Image File Id').getBlob();
  anchor.addPositionedImage(blob)
  .setLeftOffset(20)
  .setTopOffset(20);

}
...