Puedes editar y aplicar estilo al texto con rangos de texto, que se representan con el tipo TextRange
. Un TextRange
representa un segmento de texto dentro de una forma o una celda de una tabla. Si se llama a getText()
en una forma o celda de tabla, se devuelve un rango de texto que abarca todo el texto.
Si usas métodos que editan cómo se ajusta el texto dentro de una forma, se desactivará cualquier configuración de ajuste automático aplicada a la forma.
Cómo usar rangos de texto
Un rango de texto tiene dos índices que delimitan el segmento de texto que abarca: el índice de inicio y el índice de finalización. Puedes determinar estos índices con las funciones getStartIndex()
y getEndIndex()
.
Para leer el contenido de un rango de texto, usa las funciones asString()
o asRenderedString()
.
Para recuperar un subrango dentro de un rango de texto, usa la función getRange()
.
La siguiente secuencia de comandos crea un cuadro de texto en la primera diapositiva y establece su contenido de texto en "Hello world!". Luego, recupera un subrango que abarca solo "Hello".
El rango de texto que devuelve una forma o una celda de tabla siempre abarcará todo el texto, incluso si se inserta y borra texto. Por lo tanto, el ejemplo anterior produce las siguientes instrucciones de registro:
Start: 0; End: 13; Content: Hello world! Start: 0; End: 5; Content: Hello
Cómo insertar y borrar texto
También puedes insertar y borrar formas de texto y celdas de tablas con rangos de texto.
insertText()
yappendText()
te permiten insertar texto.setText()
reemplaza el texto de un rango de texto por el texto proporcionado.clear()
borra texto dentro de un rango de texto.
En la siguiente secuencia de comandos, se muestra el uso de estas funciones:
Esta secuencia de comandos crea un cuadro de texto en la primera diapositiva y establece su contenido de texto en "Hello world!". Luego, borra los caracteres del 6 al 11 ("world") y, en su lugar, inserta el texto "galaxy" en el índice 6. En el ejemplo anterior, se produce la siguiente instrucción de registro:
Start: 0; End: 14; Content: Hello galaxy!
Buscar y reemplazar
Usa la función replaceAllText()
en la presentación o la página para realizar una búsqueda y reemplazo globales en toda la presentación o en una página específica.
La función find()
en TextRange devuelve las instancias de una cadena dentro del rango. Se puede usar junto con setText()
para realizar la función de buscar y reemplazar dentro de una forma o celda de tabla.
Párrafos, elementos de lista y ejecuciones
TextRange
proporciona funciones para devolver colecciones útiles de entidades de texto.
Algunas de estas funciones incluyen las siguientes:
getParagraphs(),
, que proporciona todos los párrafos que se superponen con el rango de texto. Un párrafo es una secuencia de texto que termina con el carácter de salto de línea, "\n".getListParagraphs(),
, que devuelve los elementos de la lista en el rango de texto actual.getRuns(),
, que proporciona los tramos de texto que se superponen con el rango de texto actual. Un tramo de texto es un segmento de texto en el que todos los caracteres tienen el mismo estilo de texto.
Estilo del texto
El estilo de texto determina la renderización de los caracteres de texto en tu presentación, lo que incluye la fuente, el color y la vinculación.
La función getTextStyle()
de un rango de texto proporciona un objeto TextStyle
que se usa para aplicar estilo al texto. El objeto TextStyle
abarca el mismo texto que su objeto TextRange
principal.
En el ejemplo anterior, primero se crea un cuadro de texto en la primera diapositiva y se establece su contenido en "Hola ". Luego, se agrega el texto "mundo". El texto recién agregado se muestra en negrita, se vincula a www.example.com
y su color se establece en rojo.
Cuando se leen estilos, la función devuelve nulo si el rango tiene varios valores para el estilo. Por lo tanto, la muestra anterior produce las siguientes instrucciones de registro:
Text: Hello; Bold: false Text: world!; Bold: true Text: Hello world!; Bold: null
Existen muchos otros estilos que se pueden aplicar al texto. Puedes encontrar más detalles en la documentación de referencia de TextStyle
.
Estilo de párrafo
Los estilos de párrafo se aplican a párrafos completos y abarcan aspectos como la alineación del texto y el espaciado entre líneas. La función getParagraphStyle() en TextRange
proporciona un objeto ParagraphStyle
para aplicar estilo a todos los párrafos que se superponen con el rango de texto principal.
En el siguiente ejemplo, se crea un cuadro de texto en la primera diapositiva con cuatro párrafos y, luego, se alinea al centro los tres primeros.
Diseño de listas
Al igual que ParagraphStyle
, ListStyle
se puede usar para aplicar estilo a todos los párrafos que se superponen con el rango de texto principal.
En el ejemplo anterior, se crea un cuadro de texto en la primera diapositiva que contiene cuatro párrafos: el segundo párrafo tiene una sangría y el tercer párrafo tiene dos sangrías. Luego, aplica un ajuste predeterminado de lista a todos los párrafos. Por último, se registra el nivel de anidación de cada párrafo. (El nivel de anidación del párrafo proviene de la cantidad de tabulaciones que hay antes del texto del párrafo). Por lo tanto, la secuencia de comandos anterior produce las siguientes instrucciones de registro:
Paragraph 1's nesting level: 0 Paragraph 2's nesting level: 1 Paragraph 3's nesting level: 2 Paragraph 4's nesting level: 0