Utilizza gli elenchi

L'API Documenti Google supporta la conversione di paragrafi semplici in elenchi puntati e la rimozione dei punti elenco dai paragrafi.

Convertire un paragrafo in un elenco

Un'operazione di formattazione del paragrafo comune è la conversione dei paragrafi in un elenco con elenchi puntati.

Per creare un elenco, utilizza il metodo documents.batchUpdate e fornisci un CreateParagraphBulletsRequest. Includi un Range per specificare le celle interessate e un BulletGlyphPreset per impostare il pattern per il punto elenco.

Tutti i paragrafi che si sovrappongono all'intervallo specificato sono con elenchi puntati. Se l'intervallo specificato si sovrappone a una tabella, i numeri iniziali vengono applicati all'interno delle celle della tabella. Il livello di nidificazione di ogni paragrafo viene determinato conteggiando le tabulazioni iniziali davanti a ogni paragrafo.

Non puoi modificare il livello di nidificazione di un punto elenco esistente. Devi invece eliminare il punto elenco, impostare le tabulazioni iniziali prima del paragrafo e creare di nuovo il punto elenco. Per ulteriori informazioni, consulta la sezione Rimuovere i punti elenco da un elenco.

Puoi anche utilizzare CreateParagraphBulletsRequest per modificare lo stile dei punti elenco di un elenco esistente.

Il seguente esempio di codice mostra una richiesta batch che inserisce prima il testo all'inizio del documento e poi crea un elenco dai paragrafi che coprono i primi 50 caratteri. BulletGlyphPreset utilizza BULLET_ARROW_DIAMOND_DISC, il che significa che i primi tre livelli di nidificazione dell'elenco con elenchi puntati sono rappresentati da una freccia, un diamante e un disco.

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

Convertire un paragrafo in un elenco.
Figura 1. Convertire un paragrafo in un elenco.

Rimuovere i punti elenco da un elenco

Per rimuovere i punti elenco da un elenco di paragrafi, utilizza il metodo documents.batchUpdate e fornisci un DeleteParagraphBulletsRequest. Includi un Range per specificare le celle interessate.

Il metodo elimina tutti i punti elenco che si sovrappongono all'intervallo specificato, indipendentemente dal livello di nidificazione. Per preservare visivamente il livello di nidificazione, viene aggiunto un rientro all'inizio di ogni paragrafo corrispondente.

Il seguente esempio di codice mostra una richiesta batch che elimina i numeri da un elenco di paragrafi.

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