Giriş

Google Slaytlar API'si, Google Slaytlar sunuları oluşturmanıza ve mevcut sunularda değişiklik yapmanıza olanak tanır.

Uygulamalar, kullanıcı ve sistem tarafından sağlanan verilerden otomatik olarak göz alıcı slaytlar oluşturmak için Google Slaytlar API'siyle entegre edilebilir. Örneğin, bir veritabanındaki müşteri ayrıntılarını kullanıp bunları önceden tasarlanmış şablonlarla ve belirlenen yapılandırma seçenekleriyle birleştirerek çok kısa bir sürede tamamlanmış sunular oluşturabilirsiniz.

API'ye genel bakış

Sunular koleksiyonu, sunu içindeki öğeleri almanızı ve güncellemenizi sağlayan yöntemler sağlar.

Slaytlar API'si ile yaptığınız çalışmaların çoğu, muhtemelen sunular oluşturup güncelliyor olacaktır. Bunu batchUpdate yöntemini kullanarak yaparsınız. Bu yöntem, aşağıdaki gibi işlemleri yapmanıza olanak tanıyan Request (İstek) nesnelerinin bir listesini alır:

  • Slayt oluştur
  • Slaytlara şekil veya tablo gibi öğeler ekleyebilirsiniz
  • Metin ekleme, değiştirme ve kaldırma
  • Öğelere dönüştürme işlemleri uygulama
  • Slaytların sırasını değiştirme

Daha ayrıntılı bilgi için Toplu güncellemeler bölümüne bakın. API'nin nasıl kullanılacağına dair basit bir uçtan uca örnek için Başlangıç kılavuzlarını inceleyin.

Sununun yapısı

Slaytlar API'sinde sunular, sayfa öğeleri içeren sayfalardan oluşur.

Bir sununun kimliği URL'den alınabilir:

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

Sunu kimliği harfleri, sayıları ve bazı özel karakterleri içeren bir dizedir. Aşağıdaki normal ifade, bir Google E-Tablolar URL'sinden sunu kimliğini ayıklamak için kullanılabilir:

/presentation/d/([a-zA-Z0-9-_]+)

Drive API hakkında bilginiz varsa presentationId, Dosya kaynağının kimliğine karşılık gelir.

Sayfalar ve sayfa öğeleri nesne kimlikleriyle tanımlanır.

Pages

Google Slaytlar aşağıdaki türden sayfalar içerir:

Yüksek lisans Ana slaytlar, bu ana slaydı kullanan tüm slaytlarda görünen varsayılan metin stillerini, arka planı ve sayfa öğelerini tanımlar. Tüm slaytlarda görünmesi gereken sayfa öğeleri ana tabloya eklenmelidir. Çoğu sununun bir ana slaytı olur ancak bazılarında birkaç ana slayt bulunur veya hiç ana slayt yoktur.
Düzenler Düzenler, sayfa öğelerinin bir düzen kullanılarak slaytlarda varsayılan olarak nasıl düzenleneceği konusunda bir şablon işlevi görür. Her düzen bir ana slaytla ilişkilendirilir.
Slaytlar Bu sayfalarda kitlenize sunduğunuz içerikler yer alır. Çoğu slayt bir ana slayta ve bir düzene dayanır. Oluşturulduğunda her bir slayt için hangi düzenin kullanılacağını belirtebilirsiniz.
Notlar Bu sayfalarda, slayttaki konuşmacı notlarının yer aldığı bir şekil de dahil olmak üzere sunum ödevlerinin içeriği bulunur. Her slayta karşılık gelen bir notlar sayfası vardır. Slaytlar API ile yalnızca konuşmacı notları şeklindeki metinler değiştirilebilir.
Notlar ana slaytları Notlar ana sayfaları, tüm not sayfaları için varsayılan metin stillerini ve sayfa öğelerini tanımlar. Notlar ana slaytları, Slaytlar API'sinde salt okunurdur.

Sayfa öğeleri

Sayfa öğeleri, sayfalara yerleştirilen görsel bileşenlerdir. API, çeşitli türlerde sayfa öğeleri sunar:

Grup Ayrı bir birim olarak değerlendirilen sayfa öğeleri kümesi. Bunlar birlikte taşınabilir, ölçeklendirilebilir ve döndürülebilir.
Şekil Dikdörtgenler, üç nokta ve metin kutuları gibi düz bir görsel nesne. Şekiller metin içerebildiğinden, slaytlar oluşturulurken en yaygın sayfa öğeleri kullanılır.
Resim Slaytlar'a aktarılan bir grafik.
Video Slaytlar'a aktarılan bir video.
Çizgi Görsel bir çizgi, eğri veya bağlayıcı.
Tablo İçerik ızgarası.
WordArt Şekil gibi davranan bir görsel metin öğesi.
SheetsChart Google E-Tablolar'dan Slaytlar'a aktarılan bir grafik.

Toplu güncellemeler

batchUpdate yöntemi, bir sununun birçok yönünü güncellemenizi sağlar. Değişiklikler, bir istek başarısız olursa diğer (potansiyel olarak bağımlı) değişikliklerin hiçbiri yazılmayacağı şekilde toplu halde gruplandırılır.

batchUpdate yöntemi, her biri tek bir gerçekleştirilecek istek türünü belirten bir veya daha fazla Request nesnesi alarak çalışır. Çok farklı türde istekler var. Aşağıda, istek türlerinin farklı kategorilere ayrılmış bir dökümü verilmiştir.

Slaytlar'la çalışma: CreateSlideRequest
UpdateSlidesPositionRequest
DuplicateObjectRequest
UpdatePagePropertiesRequest
DeleteObjectRequest
Sayfa Öğeleri ile çalışma: CreateShapeRequest
CreateLineRequest
UpdatePageElementTransformRequest
UpdateShapePropertiesRequest
DuplicateObjectRequest
DeleteObjectRequest
Tablolarla çalışma: CreateTableRequest
InsertTableRowsRequest
InsertTableColumnsRequest
DeleteTableRowRequest
DeleteTableColumnRequest
UpdateTableRowPropertiesRequest
UpdateTableColumnPropertiesRequest
UpdateTableBorderPropertiesRequest
UpdateTableCellPropertiesRequest
MergeTableCellsRequest
UnmergeTableCellsRequest
DeleteObjectRequest
Grafiklerle Çalışma: CreateSheetsChartRequest
RefreshSheetsChartRequest
ReplaceAllShapesWithSheetsChartRequest
DeleteObjectRequest
Resimler ve Videolarla Çalışma: CreateImageRequest
CreateVideoRequest
UpdateImagePropertiesRequest
UpdateVideoPropertiesRequest
ReplaceAllShapesWithImageRequest
DuplicateObjectRequest
DeleteObjectRequest
Metin Üzerinde Çalışma: InsertTextRequest
DeleteTextRequest
ReplaceAllTextRequest
CreateParagraphBulletsRequest
DeleteParagraphBulletsRequest
UpdateTextStyleRequest
UpdateParagraphStyleRequest

batchUpdate yöntemi, her istek için bir Yanıt içeren bir yanıt gövdesi döndürür. Her yanıt, karşılık gelen istekle aynı dizine sahiptir; geçerli bir yanıt bulunmayan istekler için ilgili dizindeki yanıt boş olur. Yeni eklenen nesnenin kimliğini bildiğiniz için çeşitli Create isteklerinin normalde yanıtları vardır.

Nesne kimlikleriyle çalışma

Slaytlar API'sinde sunular sayfalar ve sayfa öğelerinden oluşur. Bu nesneler, bir sunuda benzersiz olan nesne kimliği dizesi içerir.

Oluşturma sırasında nesne kimliklerini belirtme

batchUpdate yöntemini kullanarak sayfalar veya sayfa öğeleri oluştururken isteğe bağlı olarak yeni nesne için bir nesne kimliği belirtebilirsiniz. Bu, bir nesne oluşturup aynı toplu güncelleme isteğinde değiştirmenize olanak tanır. Böylece, Slaytlar API'ye yapılan çağrıların sayısını ve kota kullanımını en aza indirebilirsiniz.

Çoğu durumda rastgele bir nesne kimliği oluşturmanızı öneririz. Örneğin, Java kullanıyorsanız java.util.UUID.randomUUID().toString() iyi çalışacaktır.

Uygulamanız nesneleri daha uzun bir süre boyunca izlemek istediğinde nesne kimliğine güvenmeyin, çünkü değişebilir. Daha fazla bilgi için aşağıdaki bölümü inceleyin.

Nesne kimliğini kullanmadan nesneleri takip etme

Bir Slaytlar API'si isteğinde bulunduğunuzda, normalde nesne kimliği korunur. (İstisnalar, yöntemin referans belgelerinde belirtilmiştir.) Drive API ile sununun tamamının bir kopyasını oluşturmak, nesne kimliklerini de korur.

Bununla birlikte, Slaytlar kullanıcı arayüzünde bir sunu değiştirildikten sonra nesne kimliğinin değişmesini sağlayamazsınız. Örneğin, bir kullanıcı bir sayfa öğesini kopyalayıp yapıştırmak için Slaytlar kullanıcı arayüzünü kullanır ve ardından orijinal öğeyi silerse sayfa öğesinin artık yeni bir benzersiz kimliği olur ve daha önce API aracılığıyla sağladığınız kimlik kaybolur. Bu nedenle, nesne kimliklerini uygulamanızın depolama alanında depolamanızı önermiyoruz. Bunun yerine, sunudaki nesneleri metin içeriği veya alternatif metnine göre bulmanız gerekir.

Yeni oluşturulan sunular normalde varsayılan slaytlar, ana slaytlar ve metin kutuları için tutarlı bir kimlik grubu kullanır. Bu kimlikler zaman içinde değişebildiğinden bu özelliği kullanmanızı önermeyiz. Bunun yerine, create() veya get() çağrılarının döndürdüğü sunu nesnesini kullanarak değiştirmek istediğiniz öğeleri bulun.