Aturan dan perilaku pengeditan struktural
Tetap teratur dengan koleksi
Simpan dan kategorikan konten berdasarkan preferensi Anda.
Bagian ini menjelaskan perilaku dan batasan yang harus Anda pahami saat
mengedit dokumen menggunakan Google Dokumen API.
Secara umum, Anda tidak dapat menjalankan pengeditan yang menyebabkan struktur elemen dalam dokumen menjadi tidak valid. Tinjau setiap
documents.batchUpdate
metode permintaan untuk mengetahui batasan dan aturan yang berlaku untuk
permintaan tersebut.
Bagian berikut merangkum aturan utama di seluruh metode ini.
Sisipkan teks
- Menyisipkan karakter baris baru secara implisit akan membuat
Paragraph
pada
indeks tersebut. Gaya paragraf paragraf baru disalin dari
paragraf pada indeks penyisipan saat ini, termasuk daftar dan butir.
- Teks harus disisipkan dalam batas
Paragraph
yang ada. Misalnya, teks tidak dapat disisipkan pada indeks awal tabel. Teks harus
disisipkan dalam paragraf sebelumnya.
- API dapat secara implisit menyesuaikan lokasi untuk mencegah penyisipan dalam
kelompok grafem Unicode. Jika hal ini terjadi, teks akan disisipkan
tepat setelah gugus grafem.
- Gaya teks untuk teks yang disisipkan ditentukan secara otomatis, umumnya
mempertahankan gaya teks di sekitarnya. Biasanya, gaya teks untuk
teks yang disisipkan cocok dengan teks tepat sebelum indeks penyisipan.
- Beberapa karakter kontrol (
U+0000-U+0008, U+000C-U+001F
) dan karakter dari
Area Penggunaan Pribadi Bidang Multibahasa Dasar Unicode (U+E000-U+F8FF
) akan
dihapus dari teks yang disisipkan.
- Untuk mengetahui informasi selengkapnya, lihat Menyisipkan, menghapus, dan memindahkan
teks.
Menyisipkan gambar inline
- Ukuran gambar harus kurang dari 50 MB, tidak boleh melebihi 25 megapiksel, dan harus dalam salah satu format PNG, JPEG, atau GIF.
- URI yang diberikan harus dapat diakses secara publik dan panjangnya maksimal 2 KB.
- Gambar harus disisipkan dalam batas
Paragraph
yang ada. Misalnya, teks tidak dapat disisipkan pada indeks awal tabel.
- Gambar tidak dapat disisipkan di dalam catatan kaki atau persamaan.
- Untuk mengetahui informasi selengkapnya, lihat Menyisipkan gambar inline.
Memformat teks
- Saat Anda menerapkan pemformatan tingkat paragraf ke rentang, pemformatan tersebut
diterapkan ke paragraf apa pun yang sebagian atau seluruhnya tumpang-tindih dengan
rentang tersebut.
- Rentang dapat diperluas untuk menyertakan baris baru yang berdekatan.
- Jika rentang sepenuhnya berisi paragraf yang termasuk dalam daftar, butir
paragraf juga diperbarui dengan gaya teks yang cocok.
- Untuk mengetahui informasi selengkapnya, lihat Memformat
teks.
Membuat butir paragraf
- Membuat poin-poin untuk semua paragraf yang tumpang-tindih dengan rentang yang diberikan.
- Tingkat bertingkat setiap paragraf ditentukan oleh jumlah tab di awal
sebelum setiap paragraf.
- Tab di awal dihapus saat membuat butir, yang dapat mengubah indeks bagian teks.
- Jika Anda menambahkan butir paragraf yang cocok dengan butir daftar tepat sebelum
paragraf target, paragraf tersebut akan digabungkan ke daftar.
- Untuk mengetahui informasi selengkapnya, lihat Bekerja dengan daftar.
Hapus teks
Menghapus teks yang melintasi batas paragraf dapat menyebabkan perubahan pada
gaya paragraf, daftar, objek yang diposisikan, dan bookmark saat kedua
paragraf digabungkan.
Penghapusan yang menyebabkan struktur dokumen tidak valid tidak diizinkan. Beberapa
contoh permintaan penghapusan yang tidak valid meliputi:
Menghapus satu unit kode pasangan surrogate.
Menghapus karakter baris baru terakhir dari
Body
,
Header
,
Footer
,
Footnote
,
TableCell
, atau
TableOfContents
.
Menghapus awal atau akhir
Table
,
TableOfContents
, atau
Equation
tanpa menghapus seluruh elemen.
Menghapus karakter baris baru sebelum Table
, TableOfContents
, atau
SectionBreak
tanpa menghapus elemen.
Menghapus baris atau sel individual dari tabel. Menghapus konten dalam sel tabel diizinkan.
Untuk mengetahui informasi selengkapnya, lihat Menyisipkan, menghapus, dan memindahkan
teks.
Kecuali dinyatakan lain, konten di halaman ini dilisensikan berdasarkan Lisensi Creative Commons Attribution 4.0, sedangkan contoh kode dilisensikan berdasarkan Lisensi Apache 2.0. Untuk mengetahui informasi selengkapnya, lihat Kebijakan Situs Google Developers. Java adalah merek dagang terdaftar dari Oracle dan/atau afiliasinya.
Terakhir diperbarui pada 2025-08-29 UTC.
[null,null,["Terakhir diperbarui pada 2025-08-29 UTC."],[],[],null,["# Structural edit rules and behavior\n\nThis section describes behaviors and limitations that you must understand when\nyou edit documents using the Google Docs API.\n\nIn general, you cannot execute edits that cause the invalid structure of\nelements within a document. Review each\n[`documents.batchUpdate`](/workspace/docs/api/reference/rest/v1/documents/batchUpdate)\nrequest method for constraints and rules that apply to those\n[requests](/workspace/docs/api/reference/rest/v1/documents/request).\n\nThe following sections summarize the key rules across these methods.\n\nInsert text\n-----------\n\n- Inserting a newline character implicitly creates a [`Paragraph`](/workspace/docs/api/reference/rest/v1/documents#paragraph) at that index. The paragraph style of the new paragraph is copied from the paragraph at the current insertion index, including lists and bullets.\n- Text must be inserted within the bounds of an existing `Paragraph`. For example, text cannot be inserted at a table's start index. The text must be inserted in the preceding paragraph.\n- The API may implicitly adjust the location to prevent insertions within Unicode grapheme clusters. When this happens, the text is inserted immediately after the grapheme cluster.\n- Text styles for inserted text are determined automatically, generally preserving the styling of neighboring text. Typically, the text style for the inserted text matches the text immediately before the insertion index.\n- Some control characters (`U+0000-U+0008, U+000C-U+001F`) and characters from the Unicode Basic Multilingual Plane Private Use Area (`U+E000-U+F8FF`) are stripped out of inserted text.\n- For more information, see [Insert, delete, and move\n text](/workspace/docs/api/how-tos/move-text).\n\nInsert inline images\n--------------------\n\n- Image must be less than 50 MB in size, cannot exceed 25 megapixels, and must be in one of PNG, JPEG, or GIF formats.\n- The provided URI must be publicly accessible and at most 2 KB in length.\n- Image must be inserted within the bounds of an existing `Paragraph`. For example, text cannot be inserted at a table's start index.\n- Images can't be inserted inside a footnote or equation.\n- For more information, see [Insert inline\n images](/workspace/docs/api/how-tos/images).\n\nFormat text\n-----------\n\n- When you apply paragraph-level formatting to a range, the formatting is applied to any paragraph that's partially or completely overlapped by that range.\n- The range might be extended to include adjacent newlines.\n- If the range fully contains a paragraph belonging to a list, the paragraph's bullet is also updated with the matching text style.\n- For more information, see [Format\n text](/workspace/docs/api/how-tos/format-text).\n\nCreate paragraph bullets\n------------------------\n\n- Creates bullets for all paragraphs that overlap with the given range.\n- The nesting level of each paragraph is determined by the number of leading tabs before each paragraph.\n- The leading tabs are removed when creating the bullets, which might change the indexes of parts of the text.\n- If you add paragraph bullets that match those of a list immediately before the target paragraph, the paragraph is joined to the list.\n- For more information, see [Work with lists](/workspace/docs/api/how-tos/lists).\n\nDelete text\n-----------\n\n- Deleting text that crosses a paragraph boundary might cause changes to\n paragraph styles, lists, positioned objects, and bookmarks as the two\n paragraphs are merged.\n\n- Deletions that cause an invalid document structure are not permitted. Some\n examples of invalid delete requests include:\n\n - Deleting one code unit of a surrogate pair.\n\n - Deleting the last newline character of a\n [`Body`](/workspace/docs/api/reference/rest/v1/documents#body),\n [`Header`](/workspace/docs/api/reference/rest/v1/documents#header),\n [`Footer`](/workspace/docs/api/reference/rest/v1/documents#footer),\n [`Footnote`](/workspace/docs/api/reference/rest/v1/documents#footnote),\n [`TableCell`](/workspace/docs/api/reference/rest/v1/documents#tablecell), or\n [`TableOfContents`](/workspace/docs/api/reference/rest/v1/documents#tableofcontents).\n\n - Deleting the start or end of a\n [`Table`](/workspace/docs/api/reference/rest/v1/documents#table),\n `TableOfContents`, or\n [`Equation`](/workspace/docs/api/reference/rest/v1/documents#equation)\n without deleting the entire element.\n\n - Deleting the newline character before a `Table`, `TableOfContents`, or\n [`SectionBreak`](/workspace/docs/api/reference/rest/v1/documents#sectionbreak)\n without deleting the element.\n\n - Deleting individual rows or cells of a table. Deleting the content in a\n table cell is allowed.\n\n- For more information, see [Insert, delete, and move\n text](/workspace/docs/api/how-tos/move-text).\n\nRelated topics\n--------------\n\n- [Structure of a Google Docs document](/workspace/docs/api/concepts/structure)\n- [Requests and responses](/workspace/docs/api/concepts/request-response)"]]