Google Slaytlar API'si, sayfalarda tablolar oluşturmanıza ve düzenlemenize olanak tanır. Bu sayfadaki örneklerde presentations.batchUpdate
yöntemini kullanan bazı yaygın tablo işlemleri gösterilmektedir.
Bu örneklerde aşağıdaki değişkenler kullanılmaktadır:
- PRESENTATION_ID: Sunu kimliğini nereden sağladığınızı belirtir. Bu kimliğin değerini sunu URL'sinden bulabilirsiniz.
- PAGE_ID - Sayfa nesne kimliklerini nereden sağladığınızı belirtir. Bunun değerini URL'den veya bir API okuma isteği kullanarak alabilirsiniz.
- TABLE_ID - Üzerinde çalıştığınız tablonun sayfa öğesi nesne kimliğini nerede sağladığınızı belirtir. Oluşturduğunuz öğeler için bu kimliği belirtebilir (bazı kısıtlamalarla) veya Slaytlar API'nin otomatik olarak kimlik oluşturmasına izin verebilirsiniz. Öğe Kimlikleri, API okuma isteği aracılığıyla alınabilir.
Bu örnekler, dilden bağımsız olmaları için HTTP istekleri olarak sunulur. Google API istemci kitaplıklarını kullanarak toplu güncellemenin farklı dillerde nasıl uygulanacağını öğrenmek için Şekil ve metin ekleme bölümüne bakın.
Tablo oluşturma
Aşağıdaki presentations.batchUpdate
kod örneğinde, PAGE_ID tarafından belirtilen slayta tablo eklemek için CreateTableRequest
yönteminin nasıl kullanılacağı gösterilmektedir.
Bu tabloda sekiz satır ve beş sütun bulunur. Slaytlar API'nin elementProperties
kapsamında sağlanan tüm size
veya transform
alanlarını yoksaydığını unutmayın.
Bunun yerine API, kabaca slaytta ortalanmış ve mümkünse belirtilen sayıda satır ve sütunu barındıracak şekilde boyutlandırılmış bir tablo oluşturur.
Aşağıda, tablo oluşturmak için gereken istek protokolü verilmiştir:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "createTable": { "objectId": TABLE_ID, "elementProperties": { "pageObjectId": PAGE_ID, }, "rows": 8, "columns": 5 } } ] }
Tablo satırlarını veya sütunlarını sil
Aşağıdaki presentations.batchUpdate
kod örneğinde, altıncı satırı kaldırmak için DeleteTableRowRequest
yönteminin nasıl kullanılacağı gösterilmektedir. Daha sonra dördüncü sütunu kaldırmak için DeleteTableColumnRequest
yöntemini kullanır. Tablo, TABLE_ID ile belirtilir. cellLocation
içindeki rowIndex
ve columnIndex
sıfır tabanlıdır.
Tablo satırlarını veya sütunlarını silmek için gereken istek protokolü aşağıda verilmiştir:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "deleteTableRow": { "tableObjectId": TABLE_ID, "cellLocation": { "rowIndex": 5 } } }, { "deleteTableColumn": { "tableObjectId": TABLE_ID, "cellLocation": { "columnIndex": 3 } } } ] }
Tablo verilerini düzenle
Aşağıdaki presentations.batchUpdate
kod örneğinde, textRange
içindeki bir hücrede yer alan tüm metni kaldırmak için DeleteTextRequest
yönteminin nasıl kullanılacağı gösterilmektedir. Ardından bu metni yeni "Kanguru" metniyle değiştirmek için InsertTextRequest
yöntemini kullanır.
Tablo, TABLE_ID tarafından belirtilir. Etkilenen hücre beşinci
satır ve üçüncü sütundadır. cellLocation
içindeki rowIndex
ve columnIndex
sıfır tabanlıdır.
Tablo verilerini düzenlemek için kullanılan istek protokolü aşağıda verilmiştir:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "deleteText": { "objectId": TABLE_ID, "cellLocation": { "rowIndex": 4, "columnIndex": 2 }, "textRange": { "type": "ALL", } } }, { "insertText": { "objectId": TABLE_ID, "cellLocation": { "rowIndex": 4, "columnIndex": 2 }, "text": "Kangaroo", "insertionIndex": 0 } } ] }
Tablo başlığı satırını biçimlendirme
Aşağıdaki presentations.batchUpdate
kod örneğinde, tablo öğesinin başlık satırını TABLE_ID ile belirtilen tableRange
içinde biçimlendirmek için UpdateTableCellPropertiesRequest
yönteminin nasıl kullanılacağı gösterilmektedir. Ardından, başlık satırının arka plan rengini siyah olarak ayarlamak için TableCellProperties
yöntemini kullanır.
Aşağıdaki her istekte, başlık satırının bir hücresindeki metin biçimini textRange
içinde kalın, beyaz 18 punto Cambria yazı tipi olarak ayarlamak için UpdateTextStyleRequest
yöntemi kullanılmaktadır. Ardından başlıktaki her ek hücre için bu isteği tekrarlamanız gerekir.
location
ve cellLocation
içindeki rowIndex
ve columnIndex
sıfır tabanlıdır.
Tablo başlığı satırını biçimlendirmek için gereken istek protokolü aşağıda verilmiştir:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "updateTableCellProperties": { "objectId": TABLE_ID, "tableRange": { "location": { "rowIndex": 0, "columnIndex": 0 }, "rowSpan": 1, "columnSpan": 3 }, "tableCellProperties": { "tableCellBackgroundFill": { "solidFill": { "color": { "rgbColor": { "red": 0.0, "green": 0.0, "blue": 0.0 } } } } }, "fields": "tableCellBackgroundFill.solidFill.color" } }, { "updateTextStyle": { "objectId": TABLE_ID, "cellLocation": { "rowIndex": 0, "columnIndex": 0 }, "style": { "foregroundColor": { "opaqueColor": { "rgbColor": { "red": 1.0, "green": 1.0, "blue": 1.0 } } }, "bold": true, "fontFamily": "Cambria", "fontSize": { "magnitude": 18, "unit": "PT" } }, "textRange": { "type": "ALL" }, "fields": "foregroundColor,bold,fontFamily,fontSize" } }, // Repeat the above request for each additional cell in the header row.... ] }
Bu güncellemelerden sonra biçimlendirilmiş başlık satırı şu şekilde görünür:
Tablo satırları veya sütunları ekle
Aşağıdaki presentations.batchUpdate
kod örneğinde, altıncı satırın altına üç satır eklemek için InsertTableRowsRequest
yönteminin nasıl kullanılacağı gösterilmektedir. Daha sonra, aynı tablodaki dördüncü sütunun soluna iki sütun eklemek için InsertTableColumnsRequest
yöntemini kullanır.
Tablo, TABLE_ID tarafından belirtilir. cellLocation
içindeki rowIndex
ve columnIndex
sıfır tabanlıdır.
Tablo satırları veya sütunları eklemek için gereken istek protokolü aşağıda verilmiştir:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "insertTableRows": { "tableObjectId": TABLE_ID, "cellLocation": { "rowIndex": 5 }, "insertBelow": true, "number": 3 } }, { "insertTableColumns": { "tableObjectId": TABLE_ID, "cellLocation": { "columnIndex": 3 }, "insertRight": false, "number": 2 } } ] }