고급 Docs 서비스를 사용하면 Apps Script에서 Google Docs API를 사용할 수 있습니다. Apps Script의 기본 제공 Docs 서비스와 마찬가지로 이 API를 사용하면 스크립트가 Google Docs의 콘텐츠를 읽고, 수정하고, 형식을 지정할 수 있습니다. 대부분의 경우 기본 제공 서비스가 더 사용하기 쉽지만 이 고급 서비스는 몇 가지 추가 기능을 제공합니다.
참조
이 서비스에 관한 자세한 내용은 Docs API의 참조 문서를 참고하세요. Apps Script의 모든 고급 서비스와 마찬가지로 고급 Docs 서비스는 공개 API와 동일한 객체, 메서드, 매개변수를 사용합니다. 자세한 내용은 메서드 서명 결정 방법을 참고하세요.
문제를 신고하고 기타 지원을 확인하려면 Docs API 지원 가이드를 참고하세요.
샘플 코드
아래 샘플 코드는 API의 버전 1을 사용합니다.
문서 만들기
이 샘플에서는 새 문서를 만듭니다.
텍스트 찾기 및 바꾸기
이 샘플은 문서의 모든 탭에서 텍스트 쌍을 찾아서 바꿉니다. 이는 템플릿 문서 사본의 자리표시자를 데이터베이스의 값으로 대체할 때 유용합니다.
텍스트 삽입 및 스타일 지정
이 샘플은 문서의 첫 번째 탭 시작 부분에 새 텍스트를 삽입하고 특정 글꼴과 크기로 스타일을 지정합니다. 가능하면 효율성을 위해 여러 작업을 단일 batchUpdate
호출로 일괄 처리해야 합니다.
첫 번째 단락 읽기
이 샘플은 문서의 첫 번째 탭에 있는 첫 번째 단락의 텍스트를 로깅합니다. Docs API의 단락은 구조화된 특성을 가지고 있으므로 여러 하위 요소의 텍스트를 결합해야 합니다.
권장사항
일괄 업데이트
고급 Docs 서비스를 사용하는 경우 루프에서 batchUpdate
를 호출하는 대신 배열에서 여러 요청을 결합합니다.
안 함: 루프에서 batchUpdate
를 호출합니다.
var textToReplace = ['foo', 'bar'];
for (var i = 0; i < textToReplace.length; i++) {
Docs.Documents.batchUpdate({
requests: [{
replaceAllText: ...
}]
}, docId);
}
실행: 업데이트 배열을 사용하여 batchUpdate
를 호출합니다.
var requests = [];
var textToReplace = ['foo', 'bar'];
for (var i = 0; i < textToReplace.length; i++) {
requests.push({ replaceAllText: ... });
}
Docs.Documents.batchUpdate({
requests: requests
}, docId);