2017-01-15 3 views
1

16 : 9이 아닌 새로운 4 : 3 프리젠 테이션을 만들려고합니다.Google 슬라이드 API에서 PageSize로 프리젠 테이션을 만들 수 없습니다.

이 참조를 읽고 루비 코드를 작성했지만 작동하지 않았습니다. 새로운 프리젠 테이션의 높이는 내가 지정한 것과 다릅니다. 3 사항

Method: presentations.create  |  Slides API  |  Google Developers

# foo.rb 
require 'google/apis/slides_v1' 
Slide = Google::Apis::SlidesV1 # alias 
slides_service = Slide::SlidesService.new 
# authorize... 
new_presentation_object = Slide::Presentation.new(
    title: "test", 
    page_size: Slide::Size.new(
    width: Slide::Dimension.new(magnitude: 6_858_000, unit: 'EMU'), 
    height: Slide::Dimension.new(magnitude: 9_141_000, unit: 'EMU') 
) 
) 
presentation = slide_service.create_presentation(new_presentation_object, fields: "pageSize,presentationId") 
presentation.page_size 
# => #<Google::Apis::SlidesV1::Size:0x007f99ef1fb630 
# @height=#<Google::Apis::SlidesV1::Dimension:0x007f99ef1f8278 @magnitude=5143500, @unit="EMU">, 
# @width=#<Google::Apis::SlidesV1::Dimension:0x007f99ef1fa550 @magnitude=9144000, @unit="EMU">> 

어떻게 새로운 4를 만들려면 어떻게해야합니까?
PageSize하지만 CreatePresentation을 변경할 API는 없지만 PageSize를 변경할 수있는 아이디어는 언제나 환영합니다.

답변

1

이 문제의 해결 방법을 발견했습니다.

  1. 새 프레젠테이션을 만듭니다. 이것을 템플릿으로 사용합니다.
  2. 원하는대로 PageSize를 변경하십시오. 참조 : Change the size of your slides - Docs editors Help
  3. Google 드라이브 API를 통해 프레젠테이션을 복사합니다. 참조 : Files: copy  |  Drive REST API  |  Google Developers

그런 다음 새로운 프레젠테이션을 제공합니다. 우리는 PageSize를 동적으로 결정할 수는 없지만, 이것은 잘 작동합니다.

+0

지금하는 것이 가장 좋은 방법입니다. [문서] (https://developers.google.com/slides/reference/rest/v1/presentations/create)에 따라 CreatePresentation은 입력 개체의 프레젠테이션 제목 만 사용합니다. –