Google Slides API memungkinkan Anda menambahkan dan memodifikasi elemen pada halaman presentasi. Contoh
di halaman ini menunjukkan cara melakukan operasi baca umum menggunakan
metode
presentations.batchUpdate
.
Contoh ini menggunakan variabel berikut:
- PRESENTATION_ID—Menunjukkan tempat Anda memberikan ID presentasi. Anda dapat menemukan nilai untuk ID ini dari URL presentasi.
- PAGE_ID—Menunjukkan tempat Anda memberikan ID objek halaman. Anda dapat mengambil nilai ini dari URL atau dengan menggunakan permintaan baca API.
- PAGE_ELEMENT_ID—Menunjukkan tempat Anda memberikan ID objek halaman. Anda dapat menentukan ID ini untuk elemen yang Anda buat (dengan beberapa batasan) atau mengizinkan Slides API untuk membuatnya secara otomatis. ID elemen dapat diambil melalui permintaan baca API.
Contoh ini ditampilkan sebagai permintaan HTTP agar tidak menggunakan bahasa yang netral. Untuk mempelajari cara menerapkan update batch dalam berbagai bahasa menggunakan library klien Google API, lihat Menambahkan bentuk dan teks.
Menambahkan kotak teks ke slide
Contoh kode
presentations.batchUpdate
berikut menunjukkan cara menggunakan
metode CreateShapeRequest
untuk menambahkan kotak teks baru (berisi string "MyAdded Text Box") ke
slide yang ditentukan oleh PAGE_ID. Dua permintaan ditentukan dalam
isi permintaan—satu untuk membuat bentuk kotak teks (dengan ukuran dan
lokasi tertentu) dan yang kedua untuk menyisipkan teks ke dalamnya.
Permintaan pertama menentukan ID objek yang akan digunakan untuk kotak teks. Hal ini memungkinkan permintaan kedua menggunakannya dalam panggilan API yang sama, sehingga mengurangi overhead.
Berikut adalah protokol permintaan untuk menambahkan kotak teks ke slide:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "createShape": { "objectId": PAGE_ELEMENT_ID, "shapeType": "TEXT_BOX", "elementProperties": { "pageObjectId": PAGE_ID, "size": { "width": { "magnitude": 150, "unit": "PT" }, "height": { "magnitude": 50, "unit": "PT" } }, "transform": { "scaleX": 1, "scaleY": 1, "translateX": 200, "translateY": 100, "unit": "PT" } } } }, { "insertText": { "objectId": PAGE_ELEMENT_ID, "text": "My Added Text Box", "insertionIndex": 0 } } ] }
Menambahkan gambar ke slide
Contoh kode
presentations.batchUpdate
berikut menunjukkan cara menggunakan
metode CreateImageRequest
untuk menambahkan gambar ke slide yang ditentukan oleh PAGE_ID. API mengambil gambar menggunakan IMAGE_URL. Permintaan ini juga
menskalakan dan memosisikan gambar di slide.
Berikut adalah protokol permintaan untuk menambahkan gambar ke slide:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "createImage": { "url": IMAGE_URL, "elementProperties": { "pageObjectId": PAGE_ID, "size": { "width": { "magnitude": 30, "unit": "PT" }, "height": { "magnitude": 30, "unit": "PT" } }, "transform": { "scaleX": 1, "scaleY": 1, "translateX": 200, "translateY": 100, "unit": "PT" } } } } ] }
Menghapus halaman atau elemen halaman
Contoh kode
presentations.batchUpdate
berikut menunjukkan cara menggunakan metode
DeleteObjectRequest
untuk menghapus elemen halaman yang ditentukan oleh PAGE_ELEMENT_ID
dan slide yang ditentukan oleh PAGE_ID menggunakan dua permintaan terpisah.
Berikut adalah protokol permintaan untuk menghapus halaman atau elemen halaman:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "deleteObject": { "objectId": PAGE_ELEMENT_ID }, "deleteObject": { "objectId": PAGE_ID } } ] }
Mengedit teks dalam bentuk yang ditentukan
Contoh kode
presentations.batchUpdate
berikut menunjukkan cara menggunakan metode
DeleteTextRequest
untuk mengganti sebagian teks yang ada dalam bentuk yang ditentukan oleh
PAGE_ELEMENT_ID. Caranya, hapus teks terlebih dahulu menggunakan
startIndex
berbasis nol, lalu sisipkan teks baru di posisi tersebut. Dalam contoh
ini, string teks asli "My Shape Text: !!?" diganti dengan "My
Shape Text: Trapesium".
Permintaan ini hanya memengaruhi teks dalam bentuk yang ditetapkan. Untuk mengganti teks di mana saja
dalam presentasi, gunakan
metode
ReplaceAllTextRequest
.
Berikut adalah protokol permintaan untuk mengedit teks dalam bentuk yang ditetapkan:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "deleteText": { "objectId": PAGE_ELEMENT_ID, "textRange": { "type": "FROM_START_INDEX", "startIndex": 15 } } }, { "insertText": { "objectId": PAGE_ELEMENT_ID, "text": "Trapezoid", "insertionIndex": 15 } } ] }
Mengganti tag bentuk dengan gambar
Tag adalah kotak teks atau bentuk dengan nama string unik, seperti "account-holder-name".
Contoh kode
presentations.batchUpdate
berikut menunjukkan cara menggunakan
metode CreateImageRequest
untuk mengganti satu instance tag bentuk dengan gambar, mempertahankan
posisi yang sama, dan menskalakannya agar sesuai dengan ukuran tag sekaligus mempertahankan
rasio aspek gambar.
Permintaan juga dapat digunakan untuk mengganti satu gambar dengan gambar lain. Permintaan terdiri dari penambahan gambar baru, lalu penghapusan tag.
Metode CreateImageRequest
hanya mengganti bentuk yang ditentukan. Untuk mengganti bentuk
tag di mana saja dalam presentasi, gunakan
metode
ReplaceAllShapesWithImageRequest
.
Tag bentuk memiliki properti
PageElement
berikut (yang dapat ditemukan menggunakan
permintaan
presentations.pages.get
):
{ "objectId": PAGE_ELEMENT_ID, "size": { "width": { "magnitude": 3000000, "unit": "EMU" }, "height": { "magnitude": 3000000, "unit": "EMU" } }, "transform": { "scaleX": 1.13, "scaleY": 0.62, "translateX": 4800000, "translateY": 450000, "unit": "EMU" }, "shape": { "shapeType": "RECTANGLE" } }
Bentuk ini berada pada slide yang ditentukan oleh PAGE_ID. Untuk menentukan
gambar yang menggantikan bentuk, API mengambil gambar menggunakan
IMAGE_URL. Untuk mempertahankan rasio lebar tinggi gambar sekaligus membatasinya
ke ukuran tag, metode
CreateImageRequest
menetapkan ukuran gambar ke produk dari ukuran dan skala tag, serta
faktor skala gambar ke 1
. Untuk mengetahui informasi selengkapnya, lihat Mempertahankan rasio
aspek.
Berikut ini protokol permintaan untuk mengganti tag bentuk dengan gambar:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "createImage": { "url": IMAGE_URL, "elementProperties": { "pageObjectId": PAGE_ID, "size": { "width": { "magnitude": 3000000 * 1.13, "unit": "EMU" }, "height": { "magnitude": 3000000 * 0.62, "unit": "EMU" } }, "transform": { "scaleX": 1, "scaleY": 1, "translateX": 4800000, "translateY": 450000, "unit": "PT" } } } }, { "deleteObject": { "objectId": PAGE_ELEMENT_ID } } ] }