서식 있는 텍스트와 요소(표 및 목록 등)가 포함된 문서 탭
Document.getTabs()[tabIndex].asDocumentTab()
를 사용하여 문서 탭을 검색합니다.
// Get a specific document tab based on the tab ID. // TODO(developer): Replace the IDs with your own. var documentTab = DocumentApp.openById(DOCUMENT_ID).getTab(TAB_ID).asDocumentTab();
메서드
메서드 | 반환 유형 | 간략한 설명 |
---|---|---|
addBookmark(position) | Bookmark | 지정된 Position 에 Bookmark 를 추가합니다. |
addFooter() | FooterSection | 탭 바닥글 섹션이 없는 경우 추가합니다. |
addHeader() | HeaderSection | 탭 헤더 섹션이 없는 경우 추가합니다. |
addNamedRange(name, range) | NamedRange | 다음에 사용할 이름과 ID가 있는 Range 인 NamedRange 를 추가합니다.
있습니다. |
getBody() | Body | 탭의 Body 를 검색합니다. |
getBookmark(id) | Bookmark | 지정된 ID가 있는 Bookmark 를 가져옵니다. |
getBookmarks() | Bookmark[] | 탭의 모든 Bookmark 객체를 가져옵니다. |
getFooter() | FooterSection | 탭의 바닥글 섹션이 있는 경우 해당 섹션을 검색합니다. |
getFootnotes() | Footnote[] | 탭 본문에서 모든 Footnote 요소를 검색합니다. |
getHeader() | HeaderSection | 탭의 헤더 섹션이 있는 경우 검색합니다. |
getNamedRangeById(id) | NamedRange | 지정된 ID가 있는 NamedRange 를 가져옵니다. |
getNamedRanges() | NamedRange[] | 탭의 모든 NamedRange 객체를 가져옵니다. |
getNamedRanges(name) | NamedRange[] | 탭에서 지정된 이름의 모든 NamedRange 객체를 가져옵니다. |
newPosition(element, offset) | Position | 탭의 위치를 가리키는 새 Position 를 만듭니다. 이 객체는
지정할 수 있습니다. |
newRange() | RangeBuilder | 탭 요소에서 Range 객체를 구성하는 데 사용되는 빌더를 만듭니다. |
자세한 문서
addBookmark(position)
지정된 Position
에 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(DOCUMENT_ID).getTab(TAB_ID).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
addHeader()
탭 헤더 섹션이 없는 경우 추가합니다.
// 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(DOCUMENT_ID).getTab(TAB_ID).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');
리턴
HeaderSection
- 탭 헤더입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
addNamedRange(name, range)
다음에 사용할 이름과 ID가 있는 Range
인 NamedRange
를 추가합니다.
있습니다. 탭 간에도 이름이 반드시 고유하지는 않습니다. 여러 다양한 범위로
같은 문서가 HTML의 클래스와 마찬가지로 같은 이름을 공유할 수 있습니다. 반면에 ID는
고유 식별자(예: HTML의 ID)가 문서 내에서 고유해야 합니다. NamedRange
를 추가한 후에는 다음을 할 수 없습니다.
삭제할 수만 있습니다.
탭에 액세스하는 모든 스크립트는 NamedRange
에 액세스할 수 있습니다. 의도치 않은 상황을 방지하기 위해
충돌하지 않는 경우 범위 이름 앞에 고유한 문자열을 사용하는 것이 좋습니다.
// Creates a named range that includes every table in a tab by its ID. // TODO(developer): Replace the IDs with your own. var documentTab = DocumentApp.openById(DOCUMENT_ID).getTab(TAB_ID).asDocumentTab(); var rangeBuilder = documentTab.newRange(); var tables = documentTab.getBody().getTables(); for (var i = 0; i < tables.length; i++) { rangeBuilder.addElement(tables[i]); } documentTab.addNamedRange('Tab t.0 tables', rangeBuilder.build());
매개변수
이름 | 유형 | 설명 |
---|---|---|
name | String | 범위의 이름으로, 고유하지 않아도 됩니다. 범위 이름은 입력할 수 있습니다. |
range | Range | 이름과 연결할 요소의 범위입니다. 범위는 검색 결과가 될 수도 있고 newRange() 를 사용하여 수동으로 구성될 수도 있습니다. |
리턴
NamedRange
- NamedRange
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getBody()
탭의 Body
를 검색합니다.
탭에는 다양한 유형의 섹션이 포함될 수 있습니다 (예: HeaderSection
, FooterSection
). 탭의 활성 섹션은 Body
입니다.
DocumentTab
의 요소 메서드는 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(DOCUMENT_ID).getTab(TAB_ID).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
getBookmark(id)
지정된 ID가 있는 Bookmark
를 가져옵니다. 이 탭에 이러한 Bookmark
가 없으면 이 메서드는 null
를 반환합니다.
// 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(DOCUMENT_ID).getTab(TAB_ID).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 의 ID입니다. |
리턴
Bookmark
: 지정된 ID가 있는 Bookmark
, 또는 없는 경우 null
입니다. Bookmark
탭 내에 존재하는지 확인합니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getBookmarks()
탭의 모든 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(DOCUMENT_ID).getTab(TAB_ID).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
getFootnotes()
탭 본문에서 모든 Footnote
요소를 검색합니다.
getFootnotes
를 호출하면 탭의 요소가 반복됩니다. 큰 탭의 경우
이 메서드에 대한 불필요한 호출을 피하세요.
// 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(DOCUMENT_ID).getTab(TAB_ID).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
getHeader()
탭의 헤더 섹션이 있는 경우 검색합니다.
// 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(DOCUMENT_ID).getTab(TAB_ID).asDocumentTab(); // Gets the text of the tab's header and logs it to the console. console.log(documentTab.getHeader().getText());
리턴
HeaderSection
- 탭의 헤더입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getNamedRangeById(id)
지정된 ID가 있는 NamedRange
를 가져옵니다. 이 메서드가 없으면 null
를 반환합니다.
탭에 NamedRange
이(가) 있습니다. 탭 간에도 이름이 반드시 고유하지는 않습니다.
같은 문서에 있는 여러 다른 범위는
HTML을 선택합니다. 반대로 ID는 HTML의 ID처럼 탭 내에서 고유합니다.
매개변수
이름 | 유형 | 설명 |
---|---|---|
id | String | 범위 ID로, 탭 내에서 고유합니다. |
리턴
NamedRange
- 지정된 ID가 있는 NamedRange
, 또는 이러한 범위가 없는 경우 null
탭
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getNamedRanges()
탭의 모든 NamedRange
객체를 가져옵니다.
NamedRange
는 탭에 액세스하는 모든 스크립트에서 액세스할 수 있습니다. 피해야 할 사항
스크립트 간에 의도하지 않은 충돌이 발생하면 고유한 문자열로 범위 이름 접두사를 사용해 보세요.
리턴
NamedRange[]
- 탭에 있는 NamedRange
객체의 배열로, 여러 객체를 포함할 수 있습니다.
동일한 이름을 가진 범위들로 구성되어 있습니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getNamedRanges(name)
탭에서 지정된 이름의 모든 NamedRange
객체를 가져옵니다. 이름은
탭에서도 고유합니다. 같은 문서에서 서로 다른 여러 범위가 동일한
HTML의 클래스와 유사합니다. 반면에 ID는 탭 내에서 고유합니다(예:
HTML을 선택합니다.
NamedRange
는 탭에 액세스하는 모든 스크립트에서 액세스할 수 있습니다. 피해야 할 사항
스크립트 간에 의도하지 않은 충돌이 발생하면 고유한 문자열로 범위 이름 접두사를 사용해 보세요.
매개변수
이름 | 유형 | 설명 |
---|---|---|
name | String | 범위의 이름으로, 반드시 고유하지는 않습니다. |
리턴
NamedRange[]
- 지정된 이름을 가진 탭의 NamedRange
객체의 배열입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
newPosition(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. var doc = DocumentApp.openById(DOCUMENT_ID); var documentTab = doc.getTab(TAB_ID).asDocumentTab(); var paragraph = documentTab.getBody().appendParagraph('My new paragraph.'); var 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
newRange()
탭 요소에서 Range
객체를 구성하는 데 사용되는 빌더를 만듭니다.
// Change the user's selection to a range that includes every table in the tab. // TODO(developer): Replace the IDs with your own. var doc = DocumentApp.openById(DOCUMENT_ID); var documentTab = doc.getTab(TAB_ID).asDocumentTab(); var rangeBuilder = documentTab.newRange(); var tables = documentTab.getBody().getTables(); for (var i = 0; i < tables.length; i++) { rangeBuilder.addElement(tables[i]); } doc.setSelection(rangeBuilder.build());
리턴
RangeBuilder
- 새 빌더입니다.
승인
이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상으로 승인이 필요합니다.
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents