Untuk menggunakan Slides API secara efektif, Anda perlu memahami arsitektur presentasi dan komponennya, serta interaksi antara komponen ini. Halaman ini memberikan ringkasan mendetail tentang topik berikut:
- Model konseptual komponen presentasi
- Cara API merepresentasikan komponen ini
- Properti gaya komponen
Dengan membaca ringkasan konsep ini dan ringkasan konsep lainnya, Anda akan lebih mudah memahami dan menggunakan panduan cara, dokumentasi referensi, dan contoh resep.
Presentasi, halaman, dan elemen halaman
Elemen penampung terluar di Google Slide adalah presentasi. Ini adalah unit yang dapat disimpan di Google Drive, dibagikan kepada pengguna lain, dan sebagainya.
Setiap presentasi berisi berbagai jenis halaman. Salah satu jenis halaman adalah slide, yaitu halaman yang dilihat dan dibalik oleh pengguna saat presentasi dirender di layar.
Setiap halaman berisi sejumlah elemen halaman, yang bersama-sama membentuk konten halaman, seperti yang ditunjukkan dalam diagram berikut:
Selain slide, ada jenis halaman lain yang memungkinkan Anda menerapkan desain ke berbagai slide, sehingga menciptakan tampilan yang konsisten. Jenis halaman lainnya ini adalah master dan tata letak, dan propertinya menentukan cara slide dirender, seperti yang ditunjukkan dalam diagram berikut:
Master — Halaman master memiliki dua tujuan. Placeholder di master berisi default untuk gaya teks yang digunakan di seluruh presentasi Anda. Latar belakang dan bentuk lainnya di slide master membentuk latar belakang default untuk semua slide berdasarkan master tersebut. Jika Anda memiliki logo perusahaan yang ingin muncul di setiap slide dalam presentasi, tempatkan di master.
Tata letak — Template tata letak menentukan cara konten disusun di setiap jenis slide. Jika ingin semua slide judul terlihat dengan cara tertentu, misalnya, Anda dapat mengedit template tata letak judul.
Ada dua jenis halaman lainnya—halaman catatan dan master catatan—yang sebagian besar relevan untuk menggunakan catatan pembicara.
Jenis dan struktur representasi API
Bagian ini menjelaskan cara model konseptual Google Slide, seperti yang dijelaskan di atas, direpresentasikan di Slides API.
Diagram berikut menggambarkan hubungan antara presentasi, halaman, dan elemen halaman sebagai jenis di Slides API:
Bagian berikut menunjukkan cara jenis ini direpresentasikan dalam JSON.
Presentasi
Presentasi mencakup sejumlah properti, dan berisi halaman yang ada di dalamnya:
{
"presentationId": string,
"pageSize": { object(Size) },
"slides": [ { object(Page) } ],
"title": string,
"masters": [ { object(Page) } ],
"layouts": [ { object(Page) } ],
"notesMaster": object(Page),
"locale": string,
}
Halaman
Halaman mencakup serangkaian properti, dan berisi elemen halaman yang ada di dalamnya:
{
"objectId": string,
"pageType": enum(PageType),
"pageElements": [ { object(PageElement) } ],
"pageProperties": { object(PageProperties) },
// Union field properties can be only one of the following:
"slideProperties": { object(SlideProperties) },
"layoutProperties": { object(LayoutProperties) },
"notesProperties": { object(NotesProperties) },
// End of list of possible types for union field properties.
}
Elemen halaman
Elemen halaman adalah komponen visual yang ditempatkan di halaman. Elemen halaman di API berisi sejumlah properti, termasuk kolom yang bervariasi sesuai dengan jenis elemen halaman:
{
"objectId": string,
"size": { object(Size) },
"transform": { object(AffineTransform) },
"title": string,
"description": string,
// Union field element_kind can be only one of the following:
"elementGroup": { object(Group) },
"shape": { object(Shape) },
"image": { object(Image) },
"video": { object(Video) },
"line": { object(Line) },
"table": { object(Table) },
"wordArt": { object(WordArt) },
"sheetsChart": { object(SheetsChart) },
// End of list of possible types for union field element_kind.
}
Ada beberapa jenis elemen halaman, seperti yang ditentukan oleh kolom gabungan
element_kind
dalam definisi di atas. Jenis elemen halaman ini dijelaskan dalam tabel berikut:
Jenis elemen | Deskripsi |
---|---|
Grup | Kumpulan elemen halaman yang diperlakukan sebagai unit individual. Keduanya dapat dipindahkan, diskalakan, dan diputar secara bersamaan. |
Bentuk | Objek visual biasa, seperti persegi panjang, elipsis, dan kotak teks. Bentuk dapat berisi teks, sehingga merupakan elemen halaman yang paling umum untuk membuat slide. |
Gambar | Grafik yang diimpor ke Slide. |
Video | Video yang diimpor ke Slide. |
Garis | Garis, kurva, atau konektor visual. |
Tabel | Petak konten. |
WordArt | Elemen teks visual yang berperilaku lebih seperti bentuk. |
SheetsChart | Diagram yang diimpor ke Slide dari Google Spreadsheet. |
Properti halaman dan elemen halaman
Slides API memungkinkan Anda membaca dan memperbarui tampilan halaman dan elemen halaman dalam presentasi. Elemen halaman yang berbeda mendukung properti yang berbeda yang mengontrol cara elemen halaman dirender.
Setiap jenis elemen halaman memiliki elemen properti yang sesuai dan pesan pembaruan properti, misalnya:
- Ada jenis elemen halaman Bentuk
- Kolom propertinya adalah shapeProperties
- Permintaan untuk memperbarui properti ini adalah UpdateShapePropertiesRequest
Kumpulan elemen/properti/permintaan pembaruan yang sama ada untuk setiap jenis elemen halaman: Image/imageProperties/UpdateImageProperties, dan sebagainya.
Anda dapat membaca atribut properti di mana pun Anda menemukannya saat membaca elemen; untuk mengubah nilai di dalamnya, gunakan dengan jenis permintaan yang cocok sebagai payload untuk metode batchUpdate, yang memungkinkan Anda mengubah nilai ini dalam presentasi.
Jenis properti
Ada beberapa properti yang umum di antara beberapa jenis objek di Slides API:
Properti | Deskripsi |
---|---|
Warna | Warna di Slides API dapat berupa nilai RGB atau referensi ke warna tema. Warna tema disebut berdasarkan namanya (misalnya "DARK1") dan dapat dipetakan ke nilai RGB menggunakan skema warna halaman. Skema warna ini biasanya diperbarui saat mengubah tema presentasi di editor Slide. |
Isi | Isi mewakili rendering ruang kosong di dalam objek. Pengisian yang paling umum didukung di Slide adalah pengisian solid, dengan bagian dalam objek diisi dengan satu warna solid. Isi juga dapat digunakan untuk latar belakang Halaman. |
Garis batas | Garis batas mewakili kumpulan garis yang mengelilingi elemen halaman. Warna garis dikontrol dengan Isi. Pemanggil juga dapat menyesuaikan lebar dan gaya garis batas. |
Bayangan | Bayangan mewakili efek visual yang dimaksudkan untuk meniru bayangan fisik yang dilemparkan oleh objek. Saat ini, bayangan di Slides API bersifat hanya baca. |
Memperbarui properti
Untuk memperbarui properti, gunakan permintaan Update...Properties
yang sesuai dalam panggilan batchUpdate—misalnya, UpdateShapeProperties
untuk Bentuk. Permintaan ini
menerima pesan properti lengkap dan dapat menggunakan
mask kolom untuk menentukan kolom mana dalam
pesan properti yang harus diperbarui.
Warisan properti
Halaman atau elemen halaman dapat mewarisi properti dari objek induknya. Properti objek, termasuk properti yang ditentukan dan properti yang diwarisi, menentukan tampilan visual akhirnya.
- Properti halaman — Halaman mewarisi properti apa pun yang tidak ditentukan, tetapi ditentukan dalam tata letak atau master yang menjadi dasarnya.
- Properti bentuk — Bentuk dapat ditandai sebagai placeholder, yang memungkinkan Anda secara eksplisit mereferensikan bentuk placeholder lain (di tata letak induk halaman atau master) tempat properti diwarisi.
Ide-ide ini dijelaskan lebih lanjut dalam paragraf berikut.
Pewarisan properti halaman
Struktur slide, tata letak, dan master menentukan hierarki pewarisan dalam presentasi: slide mewarisi dari tata letak, dan tata letak mewarisi dari master. Tata letak induk dan master slide ditentukan di kolom slideProperties slide.
Halaman dapat mewarisi properti, seperti latar belakang dan skema warna, dari halaman induk. Untuk mewarisi properti, halaman turunan cukup tidak menetapkan nilai untuk properti tersebut dalam pesan PageProperties. Dengan tidak "mengganti" nilai yang ditentukan oleh induk, halaman akan menerima nilai yang diwarisi.
Diagram berikut menunjukkan slide yang mewarisi properti dari tata letak, yang mewarisi dari master:
Properti yang digunakan untuk merender slide adalah kombinasi dari properti yang ditentukan dan properti yang diwarisi. Dalam contoh ini, nilai yang di-resolve yang digunakan untuk merender Slide 1 adalah sebagai berikut:
- PropertyA adalah "Merah".
- PropertyB adalah "Orange".
Pewarisan properti bentuk
Bentuk dapat mewarisi properti, seperti isi, garis batas, atau bayangan, dari bentuk
lain. Bentuk adalah placeholder jika kolom
Shape.placeholder
ditetapkan. Kolom Shape.placeholder.parentObjectId
placeholder turunan
mengidentifikasi placeholder induknya. Saat Anda membuat slide baru berdasarkan
tata letak, placeholder apa pun dalam tata letak tersebut akan muncul sebagai bentuk turunan di slide baru.
Demikian pula, placeholder di halaman master dapat bertindak sebagai induk placeholder
tata letak.
Dengan hierarki pewarisan ini ditentukan, halaman turunan mewarisi properti dengan tidak menetapkan nilai tersebut dalam pesan ShapeProperties. Dengan tidak mengganti nilai yang ditentukan oleh induk, bentuk turunan akan menerima nilai yang diwarisi.
Diagram berikut menunjukkan pewarisan properti antara tiga placeholder yang terdapat dalam slide, tata letak, dan master:
Properti yang digunakan untuk merender bentuk placeholder adalah kombinasi dari properti yang ditentukan dan properti yang diwarisi. Dalam contoh ini, nilai yang di-resolve untuk bentuk ini adalah sebagai berikut:
- Placeholder1: propertyA dirender sebagai "Yellow", propertyB sebagai "Green".
- Placeholder2: propertyA dirender sebagai "Yellow", propertyB sebagai "Purple".
- Placeholder3: propertyA dirender sebagai "Yellow", propertyB sebagai "Purple".
Bentuk adalah satu-satunya jenis elemen halaman yang dapat memiliki induk. Jenis lain, seperti gambar, tabel, dan diagram, tidak dapat menjadi placeholder dan tidak dapat memiliki induk.
"Menyembunyikan" properti menggunakan PropertyState
Enumerasi
PropertyState
mengontrol apakah properti bentuk benar-benar digunakan untuk rendering,
atau apakah nilai hanya digunakan untuk pewarisan oleh bentuk turunan. Properti dengan
status properti NOT_RENDERED
tidak akan digunakan saat merender bentuk di
halamannya, tetapi turunan yang memiliki status properti RENDERED
yang sesuai
masih dapat mewarisi properti ini.
Diagram berikut menunjukkan pewarisan properti antara tiga placeholder yang memanipulasi kolom PropertyState:
Rendering properti bentuk dapat terpengaruh oleh kolom PropertyState. Dalam contoh ini, nilai yang di-resolve untuk bentuk ini adalah sebagai berikut:
- Placeholder1: propertyA dirender sebagai "Merah".
- Placeholder2: propertyA tidak dirender. Jika ini adalah properti garis batas, Placeholder2 tidak akan memiliki garis batas.
- Placeholder3: propertyA tidak dirender.
Ada satu kemungkinan nilai lagi dari enumerasi
PropertyState: status properti INHERIT
berarti status properti itu sendiri
diwarisi, dan nilai induk harus digunakan. Bentuk tanpa induk
tidak dapat memiliki status properti INHERIT
.