Operasi tabel

Google Slides API memungkinkan Anda membuat dan mengedit tabel di halaman. Contoh di halaman ini menunjukkan beberapa operasi tabel 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.
  • TABLE_ID—Menunjukkan tempat Anda memberikan ID objek elemen halaman untuk tabel yang sedang Anda kerjakan. Anda dapat menentukan ID ini untuk elemen yang Anda buat (dengan beberapa pembatasan) 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.

Membuat tabel

Contoh kode presentations.batchUpdate berikut menunjukkan cara menggunakan metode CreateTableRequest untuk menambahkan tabel ke slide yang ditentukan oleh PAGE_ID.

Tabel ini memiliki delapan baris dan lima kolom. Perhatikan bahwa Slides API mengabaikan kolom size atau transform yang disediakan sebagai bagian dari elementProperties. Sebagai gantinya, API akan membuat tabel yang secara kasar terletak di tengah slide dan berukuran untuk mengakomodasi jumlah baris dan kolom yang ditentukan, jika memungkinkan.

Berikut adalah protokol permintaan untuk membuat tabel:

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "createTable": {
        "objectId": TABLE_ID,
        "elementProperties": {
          "pageObjectId": PAGE_ID,
        },
        "rows": 8,
        "columns": 5
      }
    }
  ]
}

Hapus baris atau kolom tabel

Contoh kode presentations.batchUpdate berikut menunjukkan cara menggunakan metode DeleteTableRowRequest untuk menghapus baris keenam. Kemudian, metode DeleteTableColumnRequest untuk menghapus kolom keempat. Tabel ini ditentukan oleh TABLE_ID. rowIndex dan columnIndex dalam cellLocation didasarkan pada nol.

Berikut adalah protokol permintaan untuk menghapus baris atau kolom tabel:

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
        }
      }
    }
  ]
}

Edit data tabel

Contoh kode presentations.batchUpdate berikut menunjukkan cara menggunakan metode DeleteTextRequest untuk menghapus semua teks dalam sel dalam textRange. Kemudian, proses ini menggunakan metode InsertTextRequest untuk menggantinya dengan teks baru "Kangaroo".

Tabel ditentukan oleh TABLE_ID. Sel yang terpengaruh berada di baris kelima dan kolom ketiga. Baik rowIndex maupun columnIndex dalam cellLocation berbasis nol.

Berikut adalah protokol permintaan untuk mengedit data tabel:

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
      }
    }
  ]
}

Memformat baris header tabel

Contoh kode presentations.batchUpdate berikut menunjukkan cara menggunakan metode UpdateTableCellPropertiesRequest untuk memformat baris header elemen tabel, dalam tableRange, yang ditentukan oleh TABLE_ID. Selanjutnya, kode ini menggunakan metode TableCellProperties untuk menetapkan warna latar belakang baris header ke hitam.

Setiap permintaan berikut menggunakan metode UpdateTextStyleRequest untuk menetapkan format teks dalam satu sel baris header ke font Cambria 18 pt tebal dalam textRange. Anda perlu mengulangi permintaan ini untuk setiap sel tambahan di header.

rowIndex dan columnIndex dalam location dan cellLocation berbasis nol.

Berikut adalah protokol permintaan untuk memformat baris header tabel:

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....
  ]
}

Berikut tampilan baris header berformat setelah pembaruan ini:

Hasil urutan format baris header.

Sisipkan baris atau kolom tabel

Contoh kode presentations.batchUpdate berikut menunjukkan cara menggunakan metode InsertTableRowsRequest untuk menambahkan tiga baris di bawah baris keenam. Kemudian, metode InsertTableColumnsRequest untuk menambahkan dua kolom di sebelah kiri kolom keempat dalam tabel yang sama.

Tabel ditentukan oleh TABLE_ID. Baik rowIndex maupun columnIndex dalam cellLocation berbasis nol.

Berikut adalah protokol permintaan untuk menyisipkan baris atau kolom tabel:

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
      }
    }
  ]
}