insert image at specific point of paragraph

后端 未结 3 2105
一整个雨季
一整个雨季 2020-12-09 23:04

*I have a Google Document with a string like \"text {logo} text\" How do place an image where {logo} is? So far I tried:

var logoElement = s.findText(\"{logo         


        
3条回答
  •  -上瘾入骨i
    2020-12-09 23:47

    I tried a simpler version based on your answer that keeps the format of the original paragraph...

    Give it a try, it's not "foolproof" but it works in my test and is (I think) an interresting trial ;-)

    code here :

    function test(){
      placeImage('{logo}','0B3qSFd3iikE3SkFXc3BYQmlZY1U');
    //This is my page and I’d like to have a {logo} on it right here
    }
    
    
    function placeImage(placeHolder,imageId) {
      var logoBlob = DocsList.getFileById(imageId).getBlob();
      var d = DocumentApp.getActiveDocument()
      var s = d.getHeader();
      var logoResult = s.findText(placeHolder); 
      var placeholderStart = logoResult.getStartOffset(); 
      var par = s.getChild(0).asParagraph();
      var parcopy = par.copy();
      var parLen = par.editAsText().getText().length-1;
      Logger.log('placeholderStart = '+placeholderStart+'  parLen = '+parLen)
      par.editAsText().deleteText(placeholderStart, parLen);
      parcopy.editAsText().deleteText(0, placeholderStart+placeHolder.length);
      var img = s.getChild(0).appendInlineImage(logoBlob);
      s.appendParagraph(parcopy);
      parcopy.merge();
    }
    

    enter image description here

提交回复
热议问题