Google Slaytlar API'si, slayt oluşturmanıza, taşımanıza ve silmenize olanak tanır. Bu sayfada, presentations.batchUpdate
yönteminin kullanıldığı bazı yaygın slayt işlemleri gösterilmektedir.
Bu örneklerde aşağıdaki değişkenler kullanılmaktadır:
- PRESENTATION_ID: Sunu kimliğini nerede sağladığınızı belirtir. Bu kimliğin değerini sunuş URL'sinden öğrenebilirsiniz.
- PAGE_ID ve PAGE_ID2: Sayfa nesnesi kimliklerini nerede sağladığınızı gösterir. Bunun değerini URL'den veya API okuma isteği kullanarak alabilirsiniz.
Bu örnekler, dil açısından tarafsız olması için HTTP istekleri olarak sunulur. Google API istemci kitaplıklarını kullanarak farklı dillerde toplu güncelleme yapmayı öğrenmek için Slayt oluşturma ve Şekil ve metin ekleme başlıklı kılavuzları inceleyin.
Slayt kopyalama
Aşağıdaki presentations.batchUpdate
kod örneğinde, bir slaytı kopyalamak ve sunudaki orijinal slayttan sonra eklemek için DuplicateObjectRequest
yönteminin nasıl kullanılacağı gösterilmektedir.
Orijinal slayt, PAGE_ID ile belirtilir.
İstek, sayfa öğesi kimliklerinin bir kısmının veya tamamının kopyada bulunup bulunmaması gerektiğini (bazı kısıtlamalarla) belirtmenize olanak tanır. Bu örnekte, orijinal slayt bir tablo öğesi (TABLE_ELEMENT_ID ile belirtilir) içerir. Bu tablo öğesi, slayt kopyasındaki (COPY_PAGE_ID ile belirtilir) yeni bir tabloyla (COPY_TABLE_ELEMENT_ID ile belirtilir) eşlenir. Kopyadaki diğer tüm öğelere rastgele kimlikler verilir.
Metin kutuları, resimler, tablolar, temel şekiller, çizgiler ve yerleştirilmiş videolar dahil olmak üzere bir PageElement
öğesini kopyalama hakkında daha fazla bilgi için Öğe kopyalama ve düzenleme başlıklı örnek bölümü inceleyin.
Bir slaytı kopyalamak için istek protokolü aşağıda verilmiştir:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "duplicateObject": { "objectId": PAGE_ID, "objectIds": { "PAGE_ID": "COPY_PAGE_ID", "TABLE_ELEMENT_ID": "COPY_TABLE_ELEMENT_ID" } } } ] }
Slayt oluşturma
Aşağıdaki presentations.batchUpdate
kod örneğinde, CreateSlideRequest
yönteminin bir slayt oluşturmak ve sunuya sıfır tabanlı insertionIndex
kullanarak dördüncü slayt olarak eklemek için nasıl kullanılacağı gösterilmektedir.
Yeni slayt, TITLE_AND_TWO_COLUMNS
'ın PredefinedLayout
değerini kullanacak şekilde ayarlanmıştır. Slayt için PAGE_ID olarak kullanılacak bir dize belirtebilir (bazı kısıtlamalarla) veya API'nin istekte alanı atlayarak PAGE_ID oluşturmasına izin verebilirsiniz.
Slayt oluşturma istek protokolü aşağıda verilmiştir:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "createSlide": { "objectId": "PAGE_ID", "insertionIndex": 3, "slideLayoutReference": { "predefinedLayout": "TITLE_AND_TWO_COLUMNS" } } } ] }
Slayt oluşturma ve yer tutucuları değiştirme
Aşağıdaki presentations.batchUpdate
kod örneğinde, TITLE_AND_TWO_COLUMNS
öğesinin PredefinedLayout
değerini kullanarak slayt oluşturmak için CreateSlideRequest
yönteminin nasıl kullanılacağı gösterilmektedir.
Slayt için PAGE_ID olarak kullanılacak bir dize belirtebilirsiniz (bazı kısıtlamalarla).
placeholderIdMappings
, TITLE
öğesinin Type
değerini kullanır. TITLE_ID, slaytın yer tutucu şekline referans verir. Bu sayede şekil değiştirilebilir.
Aşağıda, slayt oluşturmak ve yer tutucuları değiştirmek için istek protokolü verilmiştir:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "createSlide": { "objectId": PAGE_ID, "slideLayoutReference": { "predefinedLayout": "TITLE_AND_TWO_COLUMNS" }, "placeholderIdMappings": [ { "layoutPlaceholder": { "type": "TITLE", "index": 0 }, "objectId": TITLE_ID, }, ], } }, { "insertText": { "objectId": TITLE_ID, "text": "This is my slide title", } }, ] }
Slaytları yeni bir konuma taşıma
Aşağıdaki
presentations.batchUpdate
kod örneğinde, belirtilen iki slaytı alıp göreli sıralamalarını koruyarak sununun başına taşımak için UpdateSlidesPositionRequest
yönteminin nasıl kullanılacağı gösterilmektedir.
Belirtilen slayt kimlikleri (PAGE_ID ve PAGE_ID2), mevcut sunu sırasına göre ve yineleme olmadan sağlanmalıdır. Sıfır tabanlı insertionIndex
, taşımadan önceki sıraya göre slaytların nereye ekleneceğini belirtir. Değer, sıfır ile sunudaki slayt sayısı arasında (sayılar dahil) olmalıdır.
Slaytları yeni bir konuma taşımak için istek protokolü aşağıda verilmiştir:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "updateSlidesPosition": { "slideObjectIds": [ PAGE_ID, PAGE_ID2 ], "insertionIndex": 0 } } ] }
Slayt arka plan resmi ayarlama
Aşağıdaki presentations.batchUpdate
kod örneğinde, PAGE_ID tarafından belirtilen bir slaytın arka plan resmini ayarlamak için UpdatePagePropertiesRequest
yönteminin nasıl kullanılacağı gösterilmektedir. API, IMAGE_URL kullanarak resmi alır.
Diğer özelliklerin korunması için yalnızca slayt arka planının değiştirilmesi gerektiğini belirtmek üzere alan maskesi kullanılır. Alan maskeleri kullanmak da performansı artırır.
Alternatif olarak, bir slaytın arka planını düz bir renge ayarlamak için UpdatePagePropertiesRequest
yöntemi de kullanılabilir.
Slayt arka plan resmi ayarlamak için istek protokolü aşağıda verilmiştir:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "updatePageProperties": { "objectId": PAGE_ID, "pageProperties": { "pageBackgroundFill": { "stretchedPictureFill": { "contentUrl": IMAGE_URL } } }, "fields": "pageBackgroundFill" } } ] }
Küçük resim oluşturma
Sayfanın küçük resmini içerik URL'si olarak döndüren presentations.pages.getThumbnail
yöntemini çağırarak sunuda belirli bir sayfanın en son sürümünün küçük resmini oluşturabilirsiniz. Resim URL'sinin varsayılan ömrü 30 dakikadır.
Sorgu parametresi olarak ThumbnailProperties
alanını kullanarak döndürülen mimeType
ve thumbnailSize
değerlerini de belirtebilirsiniz.
Sayfanın küçük resmini ThumbnailProperties
grubuyla oluşturmak için istek protokolü aşağıda verilmiştir:
GET https://slides.googleapis.com/v1/presentations/PRESENTATION_ID/pages/PAGE_ID/thumbnail?thumbnailProperties.mimeType=PNG&thumbnailProperties.thumbnailSize=MEDIUM
{ "width": 800, "height": 450, "contentUrl": "CONTENT_URL" }