Mit Listen arbeiten

Die Google Docs API unterstützt das Konvertieren von einfachen Absätzen in Aufzählungslisten und das Entfernen von Aufzählungszeichen aus Absätzen.

Absatz in eine Liste umwandeln

Eine häufige Absatzformatierungsoperation ist das Umwandeln von Absätzen in eine Aufzählungsliste.

Verwenden Sie zum Erstellen einer Liste die Methode documents.batchUpdate und geben Sie ein CreateParagraphBulletsRequest an. Fügen Sie ein Range ein, um die betroffenen Zellen anzugeben, 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 den Absatz setzen und dann das Aufzählungszeichen wieder 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()
Wandeln Sie einen Absatz in eine Liste um.
Abbildung 1: Wandeln Sie einen Absatz in eine Liste um.

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. Fügen Sie ein Range ein, um die betroffenen Zellen 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.

Im folgenden Codebeispiel wird eine Batchanfrage zum Löschen von Aufzählungszeichen aus einer Absatzliste gezeigt.

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()