L'API Google Docs permet de convertir des paragraphes simples en listes à puces et de supprimer les puces des paragraphes.
Convertir un paragraphe en liste
Une opération de mise en forme courante consiste à convertir des paragraphes en liste à puces.
Pour créer une liste, utilisez la méthode documents.batchUpdate
et fournissez un CreateParagraphBulletsRequest
.
Incluez un Range
pour spécifier les cellules concernées et un BulletGlyphPreset
pour définir le format du point.
Tous les paragraphes qui chevauchent la plage donnée sont mis en forme avec des puces. Si la plage spécifiée chevauche un tableau, les puces sont appliquées dans les cellules du tableau. Le niveau d'imbrication de chaque paragraphe est déterminé en comptant les tabulations avant chaque paragraphe.
Vous ne pouvez pas ajuster le niveau d'imbrication d'une puce existante. Vous devez plutôt supprimer la puce, définir les tabulations avant le paragraphe, puis recréer la puce. Pour en savoir plus, consultez Supprimer des puces d'une liste.
Vous pouvez également utiliser CreateParagraphBulletsRequest
pour modifier le style de puce d'une liste existante.
L'exemple de code suivant montre une requête par lot qui insère d'abord du texte au début du document, puis crée une liste à partir des paragraphes couvrant les 50 premiers caractères. BulletGlyphPreset
utilise BULLET_ARROW_DIAMOND_DISC
, ce qui signifie que les trois premiers niveaux d'imbrication de la liste à puces sont représentés par une flèche, un losange et un disque.
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()
Supprimer les puces d'une liste
Pour supprimer les puces d'une liste de paragraphes, utilisez la méthode documents.batchUpdate
et fournissez un DeleteParagraphBulletsRequest
.
Incluez un Range
pour spécifier les cellules concernées.
La méthode supprime tous les puces qui se chevauchent avec la plage donnée, quel que soit le niveau d'imbrication. Pour préserver visuellement le niveau d'imbrication, un retrait est ajouté au début de chaque paragraphe correspondant.
L'exemple de code suivant montre une requête par lot qui supprime les puces d'une liste de paragraphes.
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()