프레젠테이션 작업

Google Slides API를 사용하면 프레젠테이션 파일을 만들고 기존 파일을 관리할 수 있습니다. 이 페이지의 예에서는 presentations.batchUpdate 메서드를 사용하여 일반적인 페이지 표시 작업을 보여줍니다.

이러한 예는 언어에 구애받지 않는 HTTP 요청으로 표시됩니다. Google API 클라이언트 라이브러리를 사용하여 여러 언어로 일괄 업데이트를 구현하는 방법을 알아보려면 다음 가이드를 참고하세요.

프레젠테이션 만들기

다음 presentations.create 코드 샘플은 'My New Presentation'이라는 제목의 빈 프레젠테이션 파일을 만드는 방법을 보여줍니다.

application/vnd.google-apps.presentationMIME 유형으로 지정하여 Google Drive API files.create 메서드를 사용하여 빈 프레젠테이션 파일을 만들 수도 있습니다.

다음은 프레젠테이션을 만드는 요청 프로토콜입니다.

POST https://slides.googleapis.com/v1/presentations
{   "title": "My New Presentation" }

기존 프레젠테이션 파일 나열

Slides API는 프레젠테이션 목록을 가져오는 메서드를 제공하지 않지만 Drive API는 제공합니다. files.list 메서드(아래에 표시됨)는 필드 마스크를 사용하여 Drive에서 프레젠테이션 파일 목록을 반환합니다. 목록에는 파일 ID, 파일 이름, 파일을 여는 링크가 포함됩니다. 요청은 application/vnd.google-apps.presentationMIME 유형으로도 지정합니다.

다음은 기존 프레젠테이션 파일을 나열하는 요청 프로토콜입니다.

GET https://www.googleapis.com/drive/v3/files?q="mimeType=application/vnd.google-apps.presentation"&fields=files(id,name,webViewLink)

이 요청에 대한 응답의 구조는 다음과 같습니다.

{  "files": [     {      "id": "abcdefghijklmnopqrstuvwxyz0123456789",      "name": "Project Vision",      "webViewLink": "https://docs.google.com/a/google.com/presentation/d/abcdefghijklmnopqrstuvwxyz0123456789/edit?usp=drivesdk"     },     {      "id": "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789",      "name": "Untitled Presentation",      "webViewLink": "https://docs.google.com/a/google.com/presentation/d/ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789/edit?usp=drivesdk"     },     ...   ] }

프레젠테이션 전체에서 텍스트 바꾸기

다음 presentations.batchUpdate 코드 샘플은 ReplaceAllTextRequest 메서드를 사용하여 PRESENTATION_ID로 지정된 프레젠테이션 전체에서 텍스트를 바꾸는 방법을 보여줍니다. 프레젠테이션 URL에서 프레젠테이션 ID 값을 확인할 수 있습니다.

'Gizmo Corp.' 문자열의 모든 인스턴스가 'Gadget Inc.' 텍스트로 대체됩니다. 여기에는 텍스트 상자 및 기타 도형, 슬라이드, 마스터 내의 텍스트가 포함됩니다. 이 경우 matchCasetrue로 설정하여 텍스트 대체가 대소문자를 구분합니다.

다음은 프레젠테이션 전체에서 텍스트를 바꾸는 요청 프로토콜입니다.

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{   "requests": [     {       "replaceAllText": {           "containsText": {             "text": "Gizmo Corp.",             "matchCase": true           },           "replaceText": "Gadget Inc."       }     }   ] }