Google Dokumen API mendukung pembuatan daftar dalam dokumen baru, pengubahan paragraf biasa yang ada menjadi daftar berbutir, dan penghapusan butir dari paragraf.
Membuat daftar bernomor dalam dokumen baru
Docs API mendukung pembuatan daftar bernomor dalam dokumen baru dengan menyisipkan teks, lalu menerapkan gaya daftar ke teks dalam satu permintaan batch.
Untuk membuat daftar bernomor dalam dokumen baru:
Gunakan metode
documents.createuntuk membuat dokumen.Gunakan metode
documents.batchUpdatedan berikanInsertTextRequestuntuk menambahkan konten ke dokumen. Gunakan karakter baris baru (\n) untuk memisahkan item daftar.Dalam update batch yang sama, sertakan
CreateParagraphBulletsRequest,Rangeuntuk menentukan rentang teks, danBulletGlyphPresetuntuk menetapkan pola penomoran.
Contoh kode berikut menunjukkan cara membuat dokumen, lalu menyisipkan tiga
item sebagai daftar bernomor. BulletGlyphPreset menggunakan
NUMBERED_DECIMAL_ALPHA_ROMAN untuk memformat daftar. Artinya, tiga
tingkat bertingkat pertama dari daftar bernomor diwakili oleh angka desimal, huruf kecil, dan angka Romawi huruf kecil.
Java
Document doc = new Document().setTitle("New List Document"); doc = docsService.documents().create(doc).execute(); String documentId = doc.getDocumentId(); List<Request> requests = new ArrayList<>(); requests.add(new Request().setInsertText(new InsertTextRequest() .setText("Item 1\nItem 2\nItem 3\n") .setLocation(new Location().setIndex(1).setTabId(TAB_ID)))); requests.add(new Request().setCreateParagraphBullets( new CreateParagraphBulletsRequest() .setRange(new Range() .setStartIndex(1) .setEndIndex(22) .setTabId(TAB_ID)) .setBulletPreset("NUMBERED_DECIMAL_ALPHA_ROMAN"))); BatchUpdateDocumentRequest body = new BatchUpdateDocumentRequest().setRequests(requests); docsService.documents().batchUpdate(documentId, body).execute(); System.out.println("Created document with ID: " + documentId);
Python
title = 'New List Document' body = {'title': title} doc = service.documents().create(body=body).execute() document_id = doc.get('documentId') requests = [ { 'insertText': { 'location': { 'index': 1, 'tabId': TAB_ID }, 'text': 'Item 1\nItem 2\nItem 3\n' } }, { 'createParagraphBullets': { 'range': { 'startIndex': 1, 'endIndex': 22, 'tabId': TAB_ID }, 'bulletPreset': 'NUMBERED_DECIMAL_ALPHA_ROMAN' } } ] result = service.documents().batchUpdate( documentId=document_id, body={'requests': requests}).execute() print(f"Created document with ID: {document_id}")
Ganti TAB_ID dengan ID tab yang berisi konten daftar.
Mengonversi paragraf menjadi daftar
Operasi pemformatan paragraf yang umum adalah mengonversi paragraf yang ada menjadi daftar berbutir.
Untuk membuat daftar, gunakan
metode documents.batchUpdate
dan berikan
CreateParagraphBulletsRequest.
Sertakan Range untuk
menentukan teks yang terpengaruh dan
BulletGlyphPreset
untuk menetapkan pola butir.
Semua paragraf yang tumpang-tindih dengan rentang yang diberikan akan diberi tanda butir. Jika rentang yang ditentukan tumpang-tindih dengan tabel, butir akan diterapkan dalam sel tabel. Tingkat penyusunan setiap paragraf ditentukan dengan menghitung tab di depan setiap paragraf.
Anda tidak dapat menyesuaikan tingkat bertingkat butir yang ada. Sebagai gantinya, Anda harus menghapus butir, menetapkan tab di depan paragraf, lalu membuat butir lagi. Untuk mengetahui informasi selengkapnya, lihat Menghapus butir dari daftar.
Anda juga dapat menggunakan CreateParagraphBulletsRequest untuk mengubah gaya butir untuk
daftar yang ada.
Contoh kode berikut menunjukkan permintaan batch yang pertama-tama menyisipkan teks di awal dokumen, lalu membuat daftar dari paragraf yang mencakup 50 karakter pertama. BulletGlyphPreset menggunakan
BULLET_ARROW_DIAMOND_DISC yang berarti tiga tingkat bertingkat pertama dari
daftar berbutir diwakili oleh panah, berlian, dan cakram.
Java
List<Request> requests = new ArrayList<>(); requests.add(new Request().setInsertText(new InsertTextRequest() .setText("Item One\n") .setLocation(new Location().setIndex(1).setTabId(TAB_ID)))); requests.add(new Request().setCreateParagraphBullets( new CreateParagraphBulletsRequest() .setRange(new Range() .setStartIndex(1) .setEndIndex(50) .setTabId(TAB_ID)) .setBulletPreset("BULLET_ARROW_DIAMOND_DISC"))); BatchUpdateDocumentRequest body = new BatchUpdateDocumentRequest().setRequests(requests); BatchUpdateDocumentResponse response = docsService.documents() .batchUpdate(DOCUMENT_ID, body).execute();
Python
requests = [ { 'insertText': { 'location': { 'index': 1, 'tabId': TAB_ID }, 'text': 'Item One\n', }}, { 'createParagraphBullets': { 'range': { 'startIndex': 1, 'endIndex': 50, 'tabId': TAB_ID }, 'bulletPreset': 'BULLET_ARROW_DIAMOND_DISC', } } ] result = service.documents().batchUpdate( documentId=DOCUMENT_ID, body={'requests': requests}).execute()
Ganti TAB_ID dengan ID tab yang berisi konten daftar, atau hapus untuk menggunakan tab pertama dalam dokumen secara default.
Menghapus butir dari daftar
Untuk menghapus butir dari daftar paragraf, gunakan metode
documents.batchUpdate
dan berikan
DeleteParagraphBulletsRequest.
Sertakan Range untuk
menentukan teks yang terpengaruh.
Metode ini menghapus semua peluru yang tumpang-tindih dengan rentang yang diberikan, terlepas dari tingkat penyusunan. Untuk mempertahankan level bertingkat secara visual, indentasi ditambahkan ke awal setiap paragraf yang sesuai.
Contoh kode berikut menunjukkan permintaan batch yang menghapus butir dari daftar paragraf.
Java
List<Request> requests = new ArrayList<>(); requests.add(new Request().setDeleteParagraphBullets( new DeleteParagraphBulletsRequest() .setRange(new Range() .setStartIndex(1) .setEndIndex(50) .setTabId(TAB_ID)))); BatchUpdateDocumentRequest body = new BatchUpdateDocumentRequest().setRequests(requests); BatchUpdateDocumentResponse response = docsService.documents() .batchUpdate(DOCUMENT_ID, body).execute();
Python
requests = [ { 'deleteParagraphBullets': { 'range': { 'startIndex': 1, 'endIndex': 50, 'tabId': TAB_ID }, } } ] result = service.documents().batchUpdate( documentId=DOCUMENT_ID, body={'requests': requests}).execute()
Ganti TAB_ID dengan ID tab yang berisi konten daftar, atau hapus untuk menggunakan tab pertama dalam dokumen secara default.