Google Slaytlar API'si, sayfalarda tablo oluşturmanıza ve düzenlemenize olanak tanır. Bu sayfadaki örneklerde, presentations.batchUpdate
yöntemi kullanılarak yapılan bazı yaygın tablo 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—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.
- TABLE_ID—Üzerinde çalıştığınız bir tablo için sayfa öğesi nesne kimliğini nerede sağladığınızı gösterir. Oluşturduğunuz öğeler için bu kimliği belirtebilirsiniz (bazı kısıtlamalarla) veya Slides API'nin otomatik olarak bir kimlik oluşturmasına izin verebilirsiniz. Öğe kimlikleri, API okuma isteğiyle alınabilir.
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 Şekil ve metin ekleme başlıklı makaleyi inceleyin.
Tablo oluşturma
Aşağıdaki
presentations.batchUpdate
kod örneğinde, PAGE_ID ile belirtilen bir slayda tablo eklemek için
CreateTableRequest
yönteminin nasıl kullanılacağı gösterilmektedir.
Bu tabloda sekiz satır ve beş sütun var. Slaytlar API'sinin, elementProperties
kapsamında sağlanan tüm size
veya transform
alanlarını yoksaydığını unutmayın.
Bunun yerine API, slaytın ortasına yakın bir tablo oluşturur ve mümkünse belirtilen satır ve sütun sayısını barındıracak şekilde boyutlandırır.
Tablo oluşturmak için kullanılan istek protokolü aşağıda 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ı silme
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. Ardından, dördüncü sütunu kaldırmak için DeleteTableColumnRequest
yöntemini kullanır. Tablo, TABLE_ID tarafından belirtilir. cellLocation
içindeki hem rowIndex
hem de columnIndex
sıfır tabanlıdır.
Tablo satırlarını veya sütunlarını silmek için 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üzenleme
Aşağıdaki presentations.batchUpdate
kod örneğinde, textRange
içindeki bir hücredeki tüm metinleri kaldırmak için DeleteTextRequest
yönteminin nasıl kullanılacağı gösterilmektedir. Ardından, InsertTextRequest
yöntemini kullanarak bu metni "Kanguru" metniyle değiştirir.
Tablo, TABLE_ID tarafından belirtilir. Etkilenen hücre, beşinci satırda ve üçüncü sütundadır. cellLocation
içindeki hem rowIndex
hem de 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ık satırını biçimlendirme
Aşağıdaki presentations.batchUpdate
kod örneğinde, TABLE_ID ile belirtilen tableRange
içinde bir tablo öğesinin başlık satırını 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 siyaha ayarlamak için
TableCellProperties
yöntemini kullanır.
Sonraki her istek, UpdateTextStyleRequest
yöntemini kullanarak 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 ayarlar. Ardından, bu isteği başlıktaki her ek hücre için tekrarlamanız gerekir.
location
ve cellLocation
içindeki hem rowIndex
hem de columnIndex
sıfır tabanlıdır.
Tablo başlığı satırını biçimlendirmek için kullanılan 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.... ] }
Biçimlendirilmiş başlık satırı, bu güncellemelerden sonra aşağıdaki gibi görünür:
Tablo satırları veya sütunları ekleme
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. Ardından, 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 hem rowIndex
hem de columnIndex
sıfır tabanlıdır.
Tablo satırları veya sütunları eklemek için 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 } } ] }