Невозможно создать презентацию с помощью PageSize в Google Slides API

Я пытаюсь создать новую презентацию 4: 3, а не 16: 9.

Я прочитал эту ссылку и написал несколько рубиновых кодов, но это не сработало. Высота новой презентации отличается от указанной мной.

Метод: Presentations.create | API слайдов | Разработчики Google

# 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: 3?
Я не нашел API для изменения PageSize, кроме CreatePresentation, но любые идеи по изменению PageSize приветствуются.


person hkdnet    schedule 15.01.2017    source источник


Ответы (1)


Я нашел способ обойти эту проблему.

  1. Создайте новую презентацию. Мы используем это как шаблон.
  2. Измените размер страницы по своему усмотрению. См. Изменение размера слайдов - Справка редактора Документов
  3. Скопируйте презентацию через Google Drive API. См .: Файлы: копия | Drive REST API | Разработчики Google

Затем мы получаем новую презентацию. Хотя мы не можем определять размер страницы динамически, мне это подходит.

person hkdnet    schedule 16.01.2017
comment
Это лучший способ сделать это сейчас. Согласно документации CreatePresentation использует только заголовок презентации вне входной объект. - person Maurice Codik; 17.01.2017
comment
Это ссылка на ошибку в Slides API. Если больше людей отметят его, возможно, он будет исправлен, вместо того чтобы требовать обходного пути: Issueetracker.google.com/issues/ 74602138 - person d35348w; 26.05.2021