Страница приложения для копирования скриптов в приложении Google - PullRequest
2 голосов
/ 22 июля 2011

У меня есть шаблон документа в Документах Google, содержащий одну страницу. Я хотел бы создать новый документ с N страницами, каждая из которых идентична одной странице из шаблона документа.

Как я могу это сделать?

1 Ответ

1 голос
/ 03 октября 2012

Пожалуйста, посмотрите на этот пост от Henrique, он использует различные элементы документа в соответствии с определениями , доступными в документе ... Вы должны выбрать тот, который вам нужен, и добавитьсоответствующая процедура.

Вот как это происходит (код из исходного поста):

function mergeDocs() {
  var docIDs = ['list-of','documents','ids','you should have somehow'];
  var baseDoc = DocumentApp.openById(docIDs[0]);
  var body = baseDoc.getActiveSection();

  for( var i = 1; i < docIDs.length; ++i ) {
    var otherBody = DocumentApp.openById(docIDs[i]).getActiveSection();
    var totalElements = otherBody.getNumChildren();
    for( var j = 0; j < totalElements; ++j ) {
      var element = otherBody.getChild(j).copy();
      var type = element.getType();
      if( type == DocumentApp.ElementType.PARAGRAPH )
        body.appendParagraph(element);
      else if( type == DocumentApp.ElementType.TABLE )
        body.appendTable(element);
      else if( type == DocumentApp.ElementType.LIST_ITEM )
        body.appendListItem(element);
      else
        throw new Error("According to the doc this type couldn't appear in the body: "+type);
    }
  }
}
...