Comportamiento y reglas de edición estructurales
Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
En esta sección, se describen los comportamientos y las limitaciones que debes comprender cuando editas documentos con la API de Google Docs.
En general, no puedes ejecutar ediciones que provoquen la estructura no válida de los elementos dentro de un documento. Revisa cada método de solicitud documents.batchUpdate
para conocer las restricciones y reglas que se aplican a esas solicitudes.
En las siguientes secciones, se resumen las reglas clave de estos métodos.
Insertar texto
- Si insertas un carácter de salto de línea, se crea implícitamente un
Paragraph
en ese índice. El estilo de párrafo del párrafo nuevo se copia del párrafo en el índice de inserción actual, incluidas las listas y las viñetas.
- El texto debe insertarse dentro de los límites de un
Paragraph
existente. Por ejemplo, no se puede insertar texto en el índice de inicio de una tabla. El texto debe insertarse en el párrafo anterior.
- Es posible que la API ajuste la ubicación de forma implícita para evitar inserciones dentro de clústeres de grafemas Unicode. Cuando esto sucede, el texto se inserta inmediatamente después del clúster de grafemas.
- Los estilos de texto para el texto insertado se determinan automáticamente y, por lo general, conservan el estilo del texto adyacente. Por lo general, el estilo de texto del texto insertado coincide con el texto inmediatamente anterior al índice de inserción.
- Algunos caracteres de control (
U+0000-U+0008, U+000C-U+001F
) y caracteres del área de uso privado del plano multilingüe básico de Unicode (U+E000-U+F8FF
) se quitan del texto insertado.
- Para obtener más información, consulta Cómo insertar, borrar y mover texto.
Cómo insertar imágenes intercaladas
- La imagen debe pesar menos de 50 MB, no puede superar los 25 megapíxeles y debe estar en uno de los formatos PNG, JPEG o GIF.
- El URI proporcionado debe ser de acceso público y tener una longitud máxima de 2 KB.
- La imagen debe insertarse dentro de los límites de un
Paragraph
existente. Por ejemplo, no se puede insertar texto en el índice de inicio de una tabla.
- Las imágenes no se pueden insertar dentro de una nota al pie o una ecuación.
- Para obtener más información, consulta Cómo insertar imágenes intercaladas.
Dale formato al texto
- Cuando aplicas formato a nivel de párrafo a un rango, el formato se aplica a cualquier párrafo que se superponga de forma parcial o completa con ese rango.
- El rango se puede extender para incluir saltos de línea adyacentes.
- Si el rango contiene por completo un párrafo que pertenece a una lista, la viñeta del párrafo también se actualiza con el estilo de texto coincidente.
- Para obtener más información, consulta Cómo dar formato al texto.
Cómo crear viñetas de párrafo
- Crea viñetas para todos los párrafos que se superponen con el rango determinado.
- La cantidad de tabulaciones iniciales antes de cada párrafo determina el nivel de anidación de cada párrafo.
- Las tabulaciones iniciales se quitan cuando se crean las viñetas, lo que podría cambiar los índices de las partes del texto.
- Si agregas viñetas de párrafo que coincidan con las de una lista inmediatamente antes del párrafo de destino, el párrafo se unirá a la lista.
- Para obtener más información, consulta Trabaja con listas.
Borrar texto
Borrar texto que cruza el límite de un párrafo puede provocar cambios en los estilos de párrafo, las listas, los objetos posicionados y los marcadores, ya que los dos párrafos se combinan.
No se permiten los borrados que provoquen una estructura de documento no válida. Estos son algunos ejemplos de solicitudes de eliminación no válidas:
Borrar una unidad de código de un par sustituto
Borra el último carácter de nueva línea de un Body
, Header
, Footer
, Footnote
, TableCell
o TableOfContents
.
Borrar el inicio o el final de un Table
, TableOfContents
o Equation
sin borrar todo el elemento
Borra el carácter de nueva línea antes de un Table
, TableOfContents
o SectionBreak
sin borrar el elemento.
Borrar filas o celdas individuales de una tabla Se permite borrar el contenido de una celda de la tabla.
Para obtener más información, consulta Cómo insertar, borrar y mover texto.
Salvo que se indique lo contrario, el contenido de esta página está sujeto a la licencia Atribución 4.0 de Creative Commons, y los ejemplos de código están sujetos a la licencia Apache 2.0. Para obtener más información, consulta las políticas del sitio de Google Developers. Java es una marca registrada de Oracle o sus afiliados.
Última actualización: 2025-08-29 (UTC)
[null,null,["Última actualización: 2025-08-29 (UTC)"],[],[],null,["# Structural edit rules and behavior\n\nThis section describes behaviors and limitations that you must understand when\nyou edit documents using the Google Docs API.\n\nIn general, you cannot execute edits that cause the invalid structure of\nelements within a document. Review each\n[`documents.batchUpdate`](/workspace/docs/api/reference/rest/v1/documents/batchUpdate)\nrequest method for constraints and rules that apply to those\n[requests](/workspace/docs/api/reference/rest/v1/documents/request).\n\nThe following sections summarize the key rules across these methods.\n\nInsert text\n-----------\n\n- Inserting a newline character implicitly creates a [`Paragraph`](/workspace/docs/api/reference/rest/v1/documents#paragraph) at that index. The paragraph style of the new paragraph is copied from the paragraph at the current insertion index, including lists and bullets.\n- Text must be inserted within the bounds of an existing `Paragraph`. For example, text cannot be inserted at a table's start index. The text must be inserted in the preceding paragraph.\n- The API may implicitly adjust the location to prevent insertions within Unicode grapheme clusters. When this happens, the text is inserted immediately after the grapheme cluster.\n- Text styles for inserted text are determined automatically, generally preserving the styling of neighboring text. Typically, the text style for the inserted text matches the text immediately before the insertion index.\n- Some control characters (`U+0000-U+0008, U+000C-U+001F`) and characters from the Unicode Basic Multilingual Plane Private Use Area (`U+E000-U+F8FF`) are stripped out of inserted text.\n- For more information, see [Insert, delete, and move\n text](/workspace/docs/api/how-tos/move-text).\n\nInsert inline images\n--------------------\n\n- Image must be less than 50 MB in size, cannot exceed 25 megapixels, and must be in one of PNG, JPEG, or GIF formats.\n- The provided URI must be publicly accessible and at most 2 KB in length.\n- Image must be inserted within the bounds of an existing `Paragraph`. For example, text cannot be inserted at a table's start index.\n- Images can't be inserted inside a footnote or equation.\n- For more information, see [Insert inline\n images](/workspace/docs/api/how-tos/images).\n\nFormat text\n-----------\n\n- When you apply paragraph-level formatting to a range, the formatting is applied to any paragraph that's partially or completely overlapped by that range.\n- The range might be extended to include adjacent newlines.\n- If the range fully contains a paragraph belonging to a list, the paragraph's bullet is also updated with the matching text style.\n- For more information, see [Format\n text](/workspace/docs/api/how-tos/format-text).\n\nCreate paragraph bullets\n------------------------\n\n- Creates bullets for all paragraphs that overlap with the given range.\n- The nesting level of each paragraph is determined by the number of leading tabs before each paragraph.\n- The leading tabs are removed when creating the bullets, which might change the indexes of parts of the text.\n- If you add paragraph bullets that match those of a list immediately before the target paragraph, the paragraph is joined to the list.\n- For more information, see [Work with lists](/workspace/docs/api/how-tos/lists).\n\nDelete text\n-----------\n\n- Deleting text that crosses a paragraph boundary might cause changes to\n paragraph styles, lists, positioned objects, and bookmarks as the two\n paragraphs are merged.\n\n- Deletions that cause an invalid document structure are not permitted. Some\n examples of invalid delete requests include:\n\n - Deleting one code unit of a surrogate pair.\n\n - Deleting the last newline character of a\n [`Body`](/workspace/docs/api/reference/rest/v1/documents#body),\n [`Header`](/workspace/docs/api/reference/rest/v1/documents#header),\n [`Footer`](/workspace/docs/api/reference/rest/v1/documents#footer),\n [`Footnote`](/workspace/docs/api/reference/rest/v1/documents#footnote),\n [`TableCell`](/workspace/docs/api/reference/rest/v1/documents#tablecell), or\n [`TableOfContents`](/workspace/docs/api/reference/rest/v1/documents#tableofcontents).\n\n - Deleting the start or end of a\n [`Table`](/workspace/docs/api/reference/rest/v1/documents#table),\n `TableOfContents`, or\n [`Equation`](/workspace/docs/api/reference/rest/v1/documents#equation)\n without deleting the entire element.\n\n - Deleting the newline character before a `Table`, `TableOfContents`, or\n [`SectionBreak`](/workspace/docs/api/reference/rest/v1/documents#sectionbreak)\n without deleting the element.\n\n - Deleting individual rows or cells of a table. Deleting the content in a\n table cell is allowed.\n\n- For more information, see [Insert, delete, and move\n text](/workspace/docs/api/how-tos/move-text).\n\nRelated topics\n--------------\n\n- [Structure of a Google Docs document](/workspace/docs/api/concepts/structure)\n- [Requests and responses](/workspace/docs/api/concepts/request-response)"]]