Halaman, Elemen Halaman, dan Properti

Agar dapat menggunakan Slides API secara efektif, Anda harus memahami arsitektur presentasi dan komponennya, serta interaksi antar-komponen ini. Halaman ini memberikan ringkasan mendetail tentang topik-topik ini:

  • Model konseptual komponen presentasi
  • Cara API merepresentasikan komponen ini
  • Properti gaya komponen

Membaca ringkasan konsep ini dan lainnya akan memudahkan Anda memahami dan menggunakan panduan cara penggunaan, dokumentasi referensi, dan contoh kode.

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 a slide, yaitu halaman yang dilihat dan diakses pengguna saat presentasi dirender di layar.

Setiap halaman berisi sejumlah elemen halaman, yang bersama-sama membentuk konten halaman, seperti yang ditunjukkan dalam diagram berikut:

diagram arsitektur slide

Selain slide, ada jenis halaman lain yang memungkinkan Anda menerapkan desain ke banyak slide yang berbeda, sehingga menciptakan tampilan yang konsisten. Jenis halaman lainnya adalah master dan tata letak, dan propertinya menentukan cara slide dirender, seperti yang ditunjukkan dalam diagram berikut:

diagram arsitektur tema

Master — Halaman master memiliki dua tujuan. Placeholder di master berisi nilai 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 ditampilkan di setiap slide dalam presentasi, letakkan logo tersebut di master.

Tata letak — Template tata letak menentukan cara konten disusun di setiap jenis slide. Jika Anda 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 bekerja dengan 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:

diagram gaya ERD

Bagian berikut menunjukkan cara jenis ini direpresentasikan dalam JSON.

Presentasi

Sebuah 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

Sebuah halaman mencakup kumpulan 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 menurut 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. Elemen halaman dapat dipindahkan, diubah skalanya, dan diputar bersama-sama.
Bentuk Objek visual biasa, seperti persegi panjang, elips, dan kotak teks. Bentuk dapat berisi teks, sehingga menjadi elemen halaman yang paling umum untuk membuat slide.
Gambar Grafik yang diimpor ke Slide.
Video Video yang diimpor ke Slide.
Garis Garis visual, kurva, atau konektor.
Tabel Grid 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:

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, sehingga Anda dapat 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 dirujuk berdasarkan nama (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. Isi yang paling umum didukung di Slide adalah isi 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 putus-putus garis batas.
Bayangan Bayangan mewakili efek visual yang dimaksudkan untuk meniru bayangan fisik yang dibuat oleh objek. Saat ini, bayangan di Slides API hanya dapat dibaca.

Memperbarui properti

Untuk memperbarui properti, gunakan permintaan yang sesuai Update...Properties 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, sehingga Anda dapat secara eksplisit mereferensikan bentuk placeholder lain (di tata letak induk atau master halaman) yang akan mewarisi properti.

Ide ini dijelaskan lebih lanjut di paragraf berikut.

Warisan properti halaman

Struktur slide, tata letak, dan master menentukan hierarki warisan dalam presentasi: slide mewarisi dari tata letak, dan tata letak mewarisi dari master. Tata letak dan master induk 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 a nilai untuk properti tersebut dalam PageProperties pesannya. 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:

warisan properti slide

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 "Oranye".

Warisan properti bentuk

Bentuk dapat mewarisi properti, seperti isi, garis batas, atau bayangan, dari bentuk lain. Bentuk adalah placeholder jika kolom Shape.placeholder -nya 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 warisan ini ditentukan, halaman turunan mewarisi properti dengan tidak menetapkan nilai tersebut dalam pesan ShapeProperties -nya. Dengan tidak mengganti nilai yang ditentukan oleh induk, bentuk turunan akan menerima nilai yang diwarisi.

Diagram berikut menunjukkan warisan properti antara tiga placeholder yang terdapat dalam slide, tata letak, dan master:

pewarisan properti bentuk

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 "Kuning", propertyB sebagai "Hijau".
  • Placeholder2: propertyA dirender sebagai "Kuning", propertyB sebagai "Ungu".
  • Placeholder3: propertyA dirender sebagai "Kuning", propertyB sebagai "Ungu".

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 warisan 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 warisan properti antara tiga placeholder yang memanipulasi kolom PropertyState:

status dan pewarisan properti

Rendering properti bentuk dapat dipengaruhi 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 nilai lain yang mungkin 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.