Class DocumentTab

Вкладка «Документ»

Вкладка документа, содержащая форматированный текст и такие элементы, как таблицы и списки.

Получите вкладку документа, используя Document.getTabs()[tabIndex].asDocumentTab() .

// Get a specific document tab based on the tab ID.
// TODO(developer): Replace the IDs with your own.
const documentTab =
    DocumentApp.openById('123abc').getTab('123abc').asDocumentTab();

Методы

Метод Тип возврата Краткое описание
add Bookmark(position) Bookmark Добавляет Bookmark в указанную Position .
add Footer() Footer Section Добавляет раздел нижнего колонтитула вкладки, если его нет.
add Header() Header Section Добавляет раздел заголовка вкладки, если его нет.
add Named Range(name, range) Named Range Добавляет Named Range , который представляет собой Range с именем и идентификатором, который можно использовать для последующего извлечения.
get Body() Body Получает Body вкладки.
get Bookmark(id) Bookmark Получает Bookmark с заданным идентификатором.
get Bookmarks() Bookmark[] Получает все объекты Bookmark на вкладке.
get Footer() Footer Section Получает нижний колонтитул вкладки, если он существует.
get Footnotes() Footnote[] Извлекает все элементы Footnote в теле вкладки.
get Header() Header Section Получает раздел заголовка вкладки, если он существует.
get Named Range By Id(id) Named Range Получает Named Range с заданным идентификатором.
get Named Ranges() Named Range[] Получает все объекты Named Range на вкладке.
get Named Ranges(name) Named Range[] Получает все объекты Named Range на вкладке с заданным именем.
new Position(element, offset) Position Создает новую Position , которая является ссылкой на местоположение на вкладке относительно определенного элемента.
new Range() Range Builder Создает построитель, используемый для создания объектов Range из элементов вкладки.

Подробная документация

add Bookmark(position)

Добавляет Bookmark в указанную Position .

// Opens the Docs file and retrieves the tab by its IDs. If you created your
// script from within a Google Docs file, you can use
// DocumentApp.getActiveDocument().getActiveTab() instead.
// TODO(developer): Replace the IDs with your own.
const documentTab =
    DocumentApp.openById('123abc').getTab('123abc').asDocumentTab();

// Gets the tab body and adds a paragraph.
const paragraph = documentTab.getBody().appendParagraph('My new paragraph.');

// Creates a position at the first character of the paragraph text.
const position = documentTab.newPosition(paragraph.getChild(0), 0);

// Adds a bookmark at the first character of the paragraph text.
const bookmark = documentTab.addBookmark(position);

// Logs the bookmark ID to the console.
console.log(bookmark.getId());

Параметры

Имя Тип Описание
position Position Положение новой закладки.

Возвращаться

Bookmark — Новая закладка.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

add Footer()

Добавляет раздел нижнего колонтитула вкладки, если его нет.

// Opens the Docs file and retrieves the tab by its IDs. If you created your
// script from within a Google Docs file, you can use
// DocumentApp.getActiveDocument().getActiveTab() instead.
// TODO(developer): Replace the IDs with your own.
const documentTab =
    DocumentApp.openById('123abc').getTab('123abc').asDocumentTab();

// Adds a footer to the tab.
const footer = documentTab.addFooter();

// Sets the footer text to 'This is a footer.'
footer.setText('This is a footer');

Возвращаться

Footer Section — нижний колонтитул вкладки.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

add Header()

Добавляет раздел заголовка вкладки, если его нет.

// Opens the Docs file and retrieves the tab by its IDs. If you created your
// script from within a Google Docs file, you can use
// DocumentApp.getActiveDocument().getActiveTab() instead.
// TODO(developer): Replace the IDs with your own.
const documentTab =
    DocumentApp.openById('123abc').getTab('123abc').asDocumentTab();

// Adds a header to the tab.
const header = documentTab.addHeader();

// Sets the header text to 'This is a header.'
header.setText('This is a header');

Возвращаться

Header Section — заголовок вкладки.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

add Named Range(name, range)

Добавляет Named Range , который представляет собой Range с именем и идентификатором, который можно использовать для последующего извлечения. Имена не обязательно уникальны, даже на разных вкладках; несколько разных диапазонов в одном документе могут иметь одно и то же имя, как класс в HTML. Идентификаторы, напротив, уникальны внутри документа, как идентификатор в HTML. После добавления Named Range его нельзя изменить, его можно только удалить.

Любой скрипт, обращающийся к вкладке, может получить доступ к Named Range . Чтобы избежать непреднамеренных конфликтов между сценариями, рассмотрите возможность добавления к именам диапазонов префиксов с уникальной строкой.

// Creates a named range that includes every table in a tab by its ID.
// TODO(developer): Replace the IDs with your own.
const documentTab =
    DocumentApp.openById('123abc').getTab('123abc').asDocumentTab();
const rangeBuilder = documentTab.newRange();
const tables = documentTab.getBody().getTables();
for (let i = 0; i < tables.length; i++) {
  rangeBuilder.addElement(tables[i]);
}
documentTab.addNamedRange('Tab t.0 tables', rangeBuilder.build());

Параметры

Имя Тип Описание
name String Имя диапазона, которое не обязательно должно быть уникальным; Имена диапазонов должны содержать от 1 до 256 символов.
range Range Диапазон элементов, которые можно связать с именем; диапазон может быть результатом поиска или создан вручную с помощью new Range() .

Возвращаться

Named RangeNamed Range .

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

get Body()

Получает Body вкладки.

Вкладки могут содержать разделы разных типов (например, Header Section , Footer Section ). Активным разделом вкладки является Body .

Методы элемента на Document Tab делегируют Body .

// Opens the Docs file and retrieves the tab by its IDs. If you created your
// script from within a Google Docs file, you can use
// DocumentApp.getActiveDocument().getActiveTab() instead.
// TODO(developer): Replace the IDs with your own.
const documentTab =
    DocumentApp.openById('123abc').getTab('123abc').asDocumentTab();

// Gets the tab body.
const body = documentTab.getBody();

// Gets the body text and logs it to the console.
console.log(body.getText());

Возвращаться

Body — раздел тела вкладки.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

get Bookmark(id)

Получает Bookmark с заданным идентификатором. Этот метод возвращает null , если на этой вкладке такой Bookmark не существует.

// Opens the Docs file and retrieves the tab by its IDs. If you created your
// script from within a Google Docs file, you can use
// DocumentApp.getActiveDocument().getActiveTab() instead.
// TODO(developer): Replace the IDs with your own.
const documentTab =
    DocumentApp.openById('123abc').getTab('123abc').asDocumentTab();

// Gets the bookmark by its ID.
const bookmark = documentTab.getBookmark('id.xyz654321');

// If the bookmark exists within the tab, logs the character offset of its
// position to the console. Otherwise, logs 'No bookmark exists with the given
// ID.' to the console.
if (bookmark) {
  console.log(bookmark.getPosition().getOffset());
} else {
  console.log('No bookmark exists with the given ID.');
}

Параметры

Имя Тип Описание
id String Идентификатор Bookmark .

Возвращаться

BookmarkBookmark с заданным идентификатором или null , если на вкладке такой Bookmark не существует.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

get Bookmarks()

Получает все объекты Bookmark на вкладке.

// Opens the Docs file and retrieves the tab by its IDs. If you created your
// script from within a Google Docs file, you can use
// DocumentApp.getActiveDocument().getActiveTab() instead.
// TODO(developer): Replace the IDs with your own.
const documentTab =
    DocumentApp.openById('123abc').getTab('123abc').asDocumentTab();

// Gets all of the bookmarks in the tab.
const bookmarks = documentTab.getBookmarks();

// Logs the number of bookmarks in the tab to the console.
console.log(bookmarks.length);

Возвращаться

Bookmark[] — Массив объектов Bookmark на вкладке.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

get Footer()

Извлекает нижний колонтитул вкладки, если он существует.

// Opens the Docs file and retrieves the tab by its IDs. If you created your
// script from within a Google Docs file, you can use
// DocumentApp.getActiveDocument().getActiveTab() instead.
// TODO(developer): Replace the IDs with your own.
const documentTab =
    DocumentApp.openById('123abc').getTab('123abc').asDocumentTab();

// Gets the text of the tab's footer and logs it to the console.
console.log(documentTab.getFooter().getText());

Возвращаться

Footer Section — нижний колонтитул вкладки.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

get Footnotes()

Извлекает все элементы Footnote в теле вкладки.

Вызовы для get Footnotes вызывают перебор элементов вкладки. Для больших вкладок избегайте ненужных вызовов этого метода.

// Opens the Docs file and retrieves the tab by its IDs. If you created your
// script from within a Google Docs file, you can use
// DocumentApp.getActiveDocument().getActiveTab() instead.
// TODO(developer): Replace the IDs with your own.
const documentTab =
    DocumentApp.openById('123abc').getTab('123abc').asDocumentTab();

// Gets the first footnote.
const footnote = documentTab.getFootnotes()[0];

// Logs footnote contents to the console.
console.log(footnote.getFootnoteContents().getText());

Возвращаться

Footnote[] — сноски вкладки.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

get Header()

Получает раздел заголовка вкладки, если он существует.

// Opens the Docs file and retrieves the tab by its IDs. If you created your
// script from within a Google Docs file, you can use
// DocumentApp.getActiveDocument().getActiveTab() instead.
// TODO(developer): Replace the IDs with your own.
const documentTab =
    DocumentApp.openById('123abc').getTab('123abc').asDocumentTab();

// Gets the text of the tab's header and logs it to the console.
console.log(documentTab.getHeader().getText());

Возвращаться

Header Section — заголовок вкладки.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

get Named Range By Id(id)

Получает Named Range с заданным идентификатором. Этот метод возвращает null , если на вкладке не существует такого Named Range . Имена не обязательно уникальны, даже на разных вкладках; несколько разных диапазонов в одном документе могут иметь одно и то же имя, как класс в HTML. Идентификаторы, напротив, уникальны внутри вкладки, как идентификатор в HTML.

Параметры

Имя Тип Описание
id String Идентификатор диапазона, уникальный в пределах вкладки.

Возвращаться

Named RangeNamed Range с заданным идентификатором или null , если такой диапазон не существует на вкладке.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

get Named Ranges()

Получает все объекты Named Range на вкладке.

Доступ Named Range можно получить с помощью любого сценария, обращающегося к вкладке. Чтобы избежать непреднамеренных конфликтов между сценариями, рассмотрите возможность добавления к именам диапазонов префиксов с уникальной строкой.

Возвращаться

Named Range[] — массив объектов Named Range на вкладке, возможно, включающий несколько диапазонов с одинаковым именем.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

get Named Ranges(name)

Получает все объекты Named Range на вкладке с заданным именем. Имена не обязательно уникальны, даже на разных вкладках; несколько разных диапазонов в одном документе могут иметь одно и то же имя, как класс в HTML. Идентификаторы, напротив, уникальны внутри вкладки, как идентификатор в HTML.

Доступ Named Range можно получить с помощью любого сценария, обращающегося к вкладке. Чтобы избежать непреднамеренных конфликтов между сценариями, рассмотрите возможность добавления к именам диапазонов префиксов с уникальной строкой.

Параметры

Имя Тип Описание
name String Имя диапазона, которое не обязательно уникально.

Возвращаться

Named Range[] — Массив объектов Named Range на вкладке с заданным именем.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

new Position(element, offset)

Создает новую Position , которая является ссылкой на местоположение на вкладке относительно определенного элемента. Курсор пользователя, помимо прочего, представлен как Position .

// Append a paragraph, then place the user's cursor after the first word of the
// new paragraph.
// TODO(developer): Replace the IDs with your own.
const doc = DocumentApp.openById('123abc');
const documentTab = doc.getTab('123abc').asDocumentTab();
const paragraph = documentTab.getBody().appendParagraph('My new paragraph.');
const position = documentTab.newPosition(paragraph.getChild(0), 2);
doc.setCursor(position);

Параметры

Имя Тип Описание
element Element Элемент, содержащий вновь созданную Position для; это должен быть либо элемент Text , либо элемент-контейнер, например Paragraph .
offset Integer Для элементов Text — количество символов перед Position ; для других элементов — количество дочерних элементов до Position в том же элементе-контейнере.

Возвращаться

Position — Новая Position .

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

new Range()

Создает построитель, используемый для создания объектов Range из элементов вкладки.

// Change the user's selection to a range that includes every table in the tab.
// TODO(developer): Replace the IDs with your own.
const doc = DocumentApp.openById('123abc');
const documentTab = doc.getTab('123abc').asDocumentTab();
const rangeBuilder = documentTab.newRange();
const tables = documentTab.getBody().getTables();
for (let i = 0; i < tables.length; i++) {
  rangeBuilder.addElement(tables[i]);
}
doc.setSelection(rangeBuilder.build());

Возвращаться

Range Builder — Новый строитель.

Авторизация

Сценарии, использующие этот метод, требуют авторизации с одной или несколькими из следующих областей :

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents