프레젠테이션 작업

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.'의 모든 인스턴스는 '가젯 Inc.'라는 텍스트로 대체됩니다. 여기에는 텍스트 상자 및 기타 도형, 슬라이드, 마스터 내 텍스트도 포함됩니다. 이 경우 텍스트 바꾸기는 matchCasetrue로 설정하여 대소문자를 구분합니다.

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

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