소개

Google Slides API를 사용하여 Google Slides를 만들고 수정할 수 있습니다.

앱은 Google Slides API와 통합하여 사용자와 시스템이 제공하는 데이터로부터 아름다운 슬라이드 덱을 자동으로 만들 수 있습니다. 예를 들어, 데이터베이스에서 고객 세부정보를 사용하여 미리 디자인된 템플릿 및 선택된 구성 옵션과 결합하여, 수동으로 만드는 데 소용되는 시간보다 짧은 시간에 완성된 프레젠테이션을 만들 수 있습니다.

API 개요

프레젠테이션 컬렉션은 프레젠테이션 내에서 요소를 가져오고 업데이트할 수 있는 메서드를 제공합니다.

대부분의 Slides API 작업은 아마도 프레젠테이션을 만들고 업데이트하는 작업일 것입니다. 이런 작업은 batchUpdate 메서드를 사용하여 수행합니다. 이 메서드는 다음과 같은 작업을 할 수 있는 Request 객체 목록을 취합니다.

  • 슬라이드 만들기
  • 슬라이드에 도형 또는 테이블과 같은 요소 추가
  • 텍스트 삽입, 변경 및 제거
  • 요소에 변환 적용
  • 슬라이드 순서 변경

자세한 내용은 일괄 업데이트를 참조하세요. API를 사용하는 방법의 간단한 예는 시작하기 가이드를 참조하세요.

프레젠테이션 구조

Slides API에서 프레젠테이션은 페이지 요소를 포함하는 페이지로 구성되어 있습니다.

프레젠테이션 ID는 URL에서 도출될 수 있습니다.

https://docs.google.com/presentation/d/presentation ID/edit

페이지 및 페이지 요소는 객체 ID로 식별됩니다.

페이지

Google Slides는 다음과 같은 3가지 유형의 페이지를 가집니다.

마스터 슬라이드 마스터는 이 마스터를 사용하는 모든 슬라이드에 나타나는 기본 텍스트 스타일, 배경 및 페이지 요소를 정의합니다. 모든 슬라이드에 나타나야 하는 페이지 요소는 마스터에 추가되어야 합니다. 대부분의 프레젠테이션에는 하나의 마스터가 있지만 마스터가 여러 개이거나 0개인 프레젠테이션도 있습니다.
레이아웃 레이아웃은 페이지 요소가 레이아웃을 사용하여 슬라이드에 기본적으로 정렬되는 방법에 대한 템플릿 역할을 합니다. 각 레이아웃은 한 개의 마스터와 연결됩니다.
슬라이드 이 페이지는 잠재고객에게 제공하는 콘텐츠를 포함합니다. 대부분의 슬라이드는 마스터와 레이아웃을 기반으로 합니다. 슬라이드를 만들 때 각 슬라이드에 사용할 레이아웃을 지정할 수 있습니다.

페이지 요소

페이지 요소는 페이지에 배치되는 시각적인 구성 요소입니다. API는 여러 유형의 페이지 요소를 노출합니다.

Group 개별 단위로 취급되는 페이지 요소 집합. 단체로 이동, 배율 조정 및 회전할 수 있습니다.
Shape 사각형, 타원 및 텍스트 상자와 같은 일반적인 시각적 객체. 도형은 텍스트를 포함할 수 있으므로 슬라이드를 제작하기 위한 가장 일반적인 페이지 요소입니다.
Image Slides로 가져온 그래픽.
Video Slides로 가져온 동영상.
Line 시각적 선, 곡선 또는 연결선.
Table 콘텐츠 그리드.
WordArt 도형처럼 동작하는 시각적 텍스트 요소.
SheetsChart Google Sheets에서 Slides로 가져온 차트.

일괄 업데이트

batchUpdate 메서드를 통해 다양한 프레젠테이션 요소를 업데이트할 수 있습니다. 변경사항은 일괄적으로 그룹화되므로, 한 요청이 실패하면 (잠재적으로 종속된) 다른 변경사항들은 기록되지 않습니다.

batchUpdate 메서드는 하나 이상의 Request 객체를 취하며, 각 객체는 수행할 단일 유형의 요청을 지정합니다. 많은 다양한 유형의 요청이 있습니다. 다음은 서로 다른 범주로 그룹화한 요청 유형입니다.

슬라이드 작업: CreateSlideRequest
UpdateSlidesPositionRequest
DuplicateObjectRequest
UpdatePagePropertiesRequest
DeleteObjectRequest
페이지 요소 작업: CreateShapeRequest
UpdatePageElementTransformRequest
UpdateShapePropertiesRequest
DuplicateObjectRequest
DeleteObjectRequest
테이블 작업: CreateTableRequest
InsertTableRowsRequest
InsertTableColumnsRequest
DeleteTableRowRequest
DeleteTableColumnRequest
UpdateTableCellPropertiesRequest
DeleteObjectRequest
차트 작업: CreateSheetsChartRequest
RefreshSheetsChartRequest
DeleteObjectRequest
이미지 및 동영상 작업: CreateImageRequest
CreateVideoRequest
UpdateImagePropertiesRequest
UpdateVideoPropertiesRequest
ReplaceAllShapesWithImageRequest
DuplicateObjectRequest
DeleteObjectRequest
텍스트 작업: InsertTextRequest
DeleteTextRequest
ReplaceAllTextRequest
CreateParagraphBulletsRequest
UpdateTextStyleRequest

batchUpdate 메서드는 각 요청에 대해 Response를 포함하는 요청 본문을 반환합니다. 각 응답은 해당 요청과 동일한 인덱스를 사용합니다. 적용 가능한 응답이 없는 요청의 경우 해당 인덱스에서 응답이 비어 있습니다. 일반적으로 다양한 Create 요청은 응답이 있으므로 새로 추가된 객체의 ID를 알 수 있습니다.

객체 ID 작업

Slides API에서 프레젠테이션은 페이지페이지 요소로 구성되어 있습니다. 이러한 객체는 프레젠테이션 내부에 고유한 객체 ID 문자열을 포함합니다.

만들 때 객체 ID 지정

batchUpdate 메서드를 사용하여 페이지 또는 페이지 요소를 만들 때 새 객체에 대한 객체 ID를 선택적으로 지정할 수 있습니다. 이를 통해 객체를 만들어 동일한 batchUpdate 요청 내에서 수정하고, Slides API 호출 수를 최소화하고, 할당량 사용을 줄일 수 있습니다.

대부분의 경우 무작위 객체 ID를 생성하는 것이 좋습니다. 예를 들어, Java를 사용 중인 경우 java.util.UUID.randomUUID().toString()이 유용합니다.

객체 ID는 변경될 수 있으므로 애플리케이션이 장시간 동안 객체를 추적하도록 하려면 객체 ID에 의존하지 마십시오. 자세한 내용은 다음 절을 참조하세요.

객체 ID를 사용하지 않고 객체 추적

Slides API 요청을 수행할 때 일반적으로 객체 ID가 보존됩니다. (예외는 메서드 참조 문서를 참조하세요.) Drive API를 사용하여 전체 프레젠테이션의 복사본을 만드는 경우에도 객체 ID가 보존됩니다.

그러나 Slides UI에서 프레젠테이션을 변경한 후에 객체 ID가 변경되지 않는다고 보장할 수 없습니다. 예를 들어, Slides UI를 사용하여 페이지 요소를 붙여 넣은 다음 원본을 삭제할 경우, 페이지 요소가 새 고유한 ID를 갖게 되고 이전에 API를 통해 지정한 ID는 손실됩니다. 따라서 애플리케이션 저장소에 객체 ID를 저장하는 것은 바람직하지 않습니다. 그 대신 프레젠테이션에서 텍스트 콘텐츠 또는 대체 텍스트로 객체를 검색해야 합니다.

새로 만든 프레젠테이션은 일반적으로 기본 슬라이드, 마스터 및 텍스트 상자에 대해 일관된 ID 집합을 사용합니다. 이러한 ID는 시간이 지나면서 변경될 수 있으므로 이 기능에 의존하지 않는 것이 좋습니다. 대신 create() 또는 get() 호출로 반환되는 프레젠테이션 객체를 사용하여 수정할 요소를 찾으십시오.

다음에 대한 의견 보내기...