Mit der Google Docs API lassen sich Listen in neuen Dokumenten erstellen, vorhandene einfache Absätze in Aufzählungslisten umwandeln und Aufzählungszeichen aus Absätzen entfernen.
Nummerierte Liste in einem neuen Dokument erstellen
Mit der Docs API können Sie eine nummerierte Liste in einem neuen Dokument erstellen, indem Sie Text einfügen und dann in einer einzelnen Batchanfrage einen Listenstil auf den Text anwenden.
So erstellen Sie eine nummerierte Liste in einem neuen Dokument:
Verwenden Sie die Methode
documents.create, um ein Dokument zu erstellen.Verwenden Sie die Methode
documents.batchUpdateund geben Sie eineInsertTextRequestan, um dem Dokument Inhalte hinzuzufügen. Verwenden Sie Zeilenvorschubzeichen (\n), um die Listenelemente zu trennen.Fügen Sie in derselben Batch-Aktualisierung ein
CreateParagraphBulletsRequest, einRangezum Angeben des Textbereichs und einBulletGlyphPresetzum Festlegen des Musters für die Nummerierung ein.
Das folgende Codebeispiel zeigt, wie ein Dokument erstellt und dann eine nummerierte Liste mit drei Elementen eingefügt wird. Für BulletGlyphPreset wird NUMBERED_DECIMAL_ALPHA_ROMAN verwendet, um die Liste zu formatieren. Das bedeutet, dass die ersten drei Verschachtelungsebenen der nummerierten Liste durch eine Dezimalzahl, einen Kleinbuchstaben und eine römische Ziffer in Kleinbuchstaben dargestellt werden.
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}")
Ersetzen Sie TAB_ID durch die ID des Tabs, der den Listeninhalt enthält.
Absatz in eine Liste umwandeln
Ein häufiger Vorgang zur Absatzformatierung ist das Umwandeln vorhandener Absätze in eine Aufzählungsliste.
Verwenden Sie zum Erstellen einer Liste die Methode documents.batchUpdate und geben Sie ein CreateParagraphBulletsRequest an.
Geben Sie ein Range an, um den betroffenen Text festzulegen, und ein BulletGlyphPreset, um das Muster für das Aufzählungszeichen festzulegen.
Alle Absätze, die sich mit dem angegebenen Bereich überschneiden, werden mit Aufzählungszeichen versehen. Wenn sich der angegebene Bereich mit einer Tabelle überschneidet, werden die Aufzählungszeichen in den Tabellenzellen angewendet. Die Verschachtelungsebene jedes Absatzes wird durch Zählen der führenden Tabulatoren vor jedem Absatz bestimmt.
Sie können die Einrückungsebene eines vorhandenen Aufzählungszeichens nicht anpassen. Stattdessen müssen Sie das Aufzählungszeichen löschen, die führenden Tabulatoren vor dem Absatz einfügen und das Aufzählungszeichen dann neu erstellen. Weitere Informationen finden Sie unter Aufzählungszeichen aus einer Liste entfernen.
Sie können auch CreateParagraphBulletsRequest verwenden, um den Aufzählungszeichenstil für eine vorhandene Liste zu ändern.
Das folgende Codebeispiel zeigt eine Batchanfrage, mit der zuerst Text am Anfang des Dokuments eingefügt und dann eine Liste aus den Absätzen erstellt wird, die die ersten 50 Zeichen umfassen. Im BulletGlyphPreset wird BULLET_ARROW_DIAMOND_DISC verwendet. Das bedeutet, dass die ersten drei Verschachtelungsebenen der Aufzählungsliste durch einen Pfeil, ein Rhombus und einen Kreis dargestellt werden.
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()
Ersetzen Sie TAB_ID durch die ID des Tabs, der den Listeninhalt enthält, oder lassen Sie sie weg, um standardmäßig den ersten Tab im Dokument zu verwenden.
Aufzählungszeichen aus einer Liste entfernen
Wenn Sie Aufzählungszeichen aus einer Absatzliste entfernen möchten, verwenden Sie die Methode documents.batchUpdate und geben Sie ein DeleteParagraphBulletsRequest an.
Geben Sie eine Range an, um den betroffenen Text anzugeben.
Mit der Methode werden alle Aufzählungszeichen gelöscht, die sich mit dem angegebenen Bereich überschneiden, unabhängig von der Schachtelungsebene. Um die Verschachtelungsebene visuell beizubehalten, wird am Anfang jedes entsprechenden Absatzes eine Einrückung hinzugefügt.
Das folgende Codebeispiel zeigt eine Batchanfrage, mit der Aufzählungszeichen aus einer Absatzliste gelöscht werden.
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()
Ersetzen Sie TAB_ID durch die ID des Tabs, der den Listeninhalt enthält, oder lassen Sie sie weg, um standardmäßig den ersten Tab im Dokument zu verwenden.