La API de Documentos de Google admite la conversión de párrafos sin formato en listas con viñetas y la quita de los párrafos.
Cómo convertir un párrafo en una lista
Una operación de formato de párrafos común es convertirlos en una lista con viñetas.
Para crear una lista, usa el método documents.batchUpdate
y proporciona un CreateParagraphBulletsRequest
.
Incluye un objeto Range
a fin de especificar las celdas afectadas y un elemento BulletGlyphPreset
para establecer el patrón de la viñeta.
Se incluirán viñetas en todos los párrafos que se superpongan con el rango especificado. Si el rango especificado se superpone con una tabla, las viñetas se aplican dentro de las celdas de la tabla. El nivel de anidación de cada párrafo se determina mediante el recuento de las primeras pestañas que se encuentran al frente de cada párrafo.
No puedes ajustar el nivel de anidación de una viñeta existente. En su lugar, debes borrar la viñeta, colocar las pestañas iniciales al frente del párrafo y, luego, volver a crear la viñeta. Si deseas obtener más información, consulta Cómo quitar viñetas de una lista.
También puedes usar CreateParagraphBulletsRequest
para cambiar el estilo de viñeta de una lista existente.
En la siguiente muestra de código, se muestra una solicitud por lotes que primero inserta texto al comienzo del documento y, luego, crea una lista de los párrafos que abarcan los primeros 50 caracteres. BulletGlyphPreset
usa BULLET_ARROW_DIAMOND_DISC
, lo que significa que los tres primeros niveles de anidamiento de la lista con viñetas están representados por una flecha, un diamante y un disco.
Java
List<Request> requests = new ArrayList<>(); requests.add(new Request().setInsertText(new InsertTextRequest() .setText("Item One\n") .setLocation(new Location().setIndex(1)))); requests.add(new Request().setCreateParagraphBullets( new CreateParagraphBulletsRequest() .setRange(new Range() .setStartIndex(1) .setEndIndex(50)) .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 }, 'text': 'Item One\n', }}, { 'createParagraphBullets': { 'range': { 'startIndex': 1, 'endIndex': 50 }, 'bulletPreset': 'BULLET_ARROW_DIAMOND_DISC', } } ] result = service.documents().batchUpdate( documentId=DOCUMENT_ID, body={'requests': requests}).execute()
Cómo quitar viñetas de una lista
Para quitar viñetas de una lista de párrafos, usa el método documents.batchUpdate
y proporciona un DeleteParagraphBulletsRequest
.
Incluye un Range
para especificar las celdas afectadas.
El método borra todas las viñetas que se superponen con el rango determinado, sin importar el nivel de anidación. Para preservar visualmente el nivel de anidación, se agrega sangría al inicio de cada párrafo correspondiente.
En la siguiente muestra de código, se incluye una solicitud por lotes que borra viñetas de una lista de párrafos.
Java
List<Request> requests = new ArrayList<>(); requests.add(new Request().setDeleteParagraphBullets( new DeleteParagraphBulletsRequest() .setRange(new Range() .setStartIndex(1) .setEndIndex(50)))); BatchUpdateDocumentRequest body = new BatchUpdateDocumentRequest().setRequests(requests); BatchUpdateDocumentResponse response = docsService.documents() .batchUpdate(DOCUMENT_ID, body).execute();
Python
requests = [ { 'deleteParagraphBullets': { 'range': { 'startIndex': 1, 'endIndex': 50 }, } } ] result = service.documents().batchUpdate( documentId=DOCUMENT_ID, body={'requests': requests}).execute()