Google Slides API, slayt oluşturmanıza, taşımanıza ve silmenize olanak tanır. Bu sayfadaki örneklerde, presentations.batchUpdate
yöntemi kullanılarak yapılan 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ı gösterir. Bu kimliğin değerini sunum URL'sinden öğrenebilirsiniz.
- PAGE_ID ve PAGE_ID2: Sayfa nesnesi kimliklerini nerede sağladığınızı gösterir. Bu değerin URL'sini alabilir veya API okuma isteği kullanarak değeri edinebilirsiniz.
Bu örnekler, dilden bağımsız olması için HTTP istekleri olarak sunulur. Google API istemci kitaplıklarını kullanarak farklı dillerde toplu güncelleme işlemini nasıl uygulayacağınızı öğrenmek için şu kılavuzlara bakın: Slayt oluşturma ve Şekil ve metin ekleme.
Slayt kopyalama
Aşağıdaki
presentations.batchUpdate
kod örneğinde, bir slaytı kopyalamak ve sunudaki orijinal slaytın sonrasına 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 yer alıp almayacağını belirtmenize olanak tanır (bazı kısıtlamalarla). Bu örnekte, orijinal slaytta bir tablo öğesi (TABLE_ELEMENT_ID ile belirtilir) bulunur. Bu öğe, 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 atanır.
Metin kutuları, resimler, tablolar, temel şekiller, çizgiler ve yerleştirilmiş videolar dahil olmak üzere PageElement
kopyalama hakkında daha fazla bilgi için Öğeleri kopyalama ve düzenleme başlıklı örneğe bakın.
Slayt kopyalama 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 nasıl kullanılacağı gösterilmektedir. Bu yöntemle bir slayt oluşturulup sunuya dördüncü slayt olarak (sıfır tabanlı insertionIndex
kullanılarak) eklenir.
Yeni slayt, TITLE_AND_TWO_COLUMNS
için PredefinedLayout
kullanacak şekilde ayarlanır. Slayt için PAGE_ID olarak kullanılacak bir dize belirtebilirsiniz (bazı kısıtlamalarla) veya istekte alanı atlayarak API'nin PAGE_ID oluşturmasına izin verebilirsiniz.
Slayt oluşturmak için kullanılan 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, CreateSlideRequest
yönteminin PredefinedLayout
kullanılarak TITLE_AND_TWO_COLUMNS
ile slayt oluşturmak için 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 şeklini ifade eder. Bu nedenle değiştirilebilir.
Aşağıda, slayt oluşturmak ve yer tutucuları değiştirmek için kullanılan 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 sununun başına taşımak için UpdateSlidesPositionRequest
yönteminin nasıl kullanılacağı gösterilmektedir. Bu işlem sırasında slaytların göreli sıralaması korunur.
Belirtilen slayt kimlikleri (PAGE_ID ve PAGE_ID2), mevcut sunum sırasına göre ve yinelenmeden sağlanmalıdır. Sıfır tabanlı insertionIndex
, slaytların taşınmadan önceki sıraya göre nereye ekleneceğini gösterir. Değer, sıfır ile sunumdaki slayt sayısı arasında (değerler dahil) olmalıdır.
Slaytları yeni bir konuma taşımak için kullanılan 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 ile 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 renk olarak ayarlamak için UpdatePagePropertiesRequest
yöntemi kullanılabilir.
Slayt arka planı resmi ayarlamak için kullanılan 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
Sunudaki belirli bir sayfanın en son sürümünün küçük resmini, presentations.pages.getThumbnail
yöntemini çağırarak oluşturabilirsiniz. Bu yöntem, sayfanın küçük resmini içerik URL'si olarak döndürür. Resim URL'sinin varsayılan ömrü 30 dakikadır.
Ayrıca, ThumbnailProperties
alanını sorgu parametresi olarak kullanarak döndürülen mimeType
ve thumbnailSize
değerlerini de belirtebilirsiniz.
Aşağıda, ThumbnailProperties
grubuyla sayfanın küçük resmini oluşturmak için kullanılan istek protokolü 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" }