2
votes

I have some Google Apps scripts that use the DocumentApp .replaceText method to find a text string in a Google Document and replace it with a different text string.

var file = DocsList.getFileById('xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx');
var newTextString = 'foo\nbar';
file.replaceText('Old text string',newTextString);

The \n works to make line breaks, but is there a way to format the text with bold/italics/colors/etc?

I tried to use HTML tags and inline CSS styles with the span tag, but that didn't work, it just outputs the text including the tags. I remember how Google Docs used to have an HTML button and you could see the markup that made up the content of the Google doc, but they took that out.

1

1 Answers

3
votes

Use the functions describe at the API site here

You can manipulate the text setting all styles as much as you want. For example:

var file = DocsList.getFileById('xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx');
file.replaceText('Old text string',newTextString);
var newTextString = 'foo\nbar';

var doc = DocumentApp.openById('DOCUMENT_ID_GOES_HERE');
var text = doc.editAsText();
text.setItalic(startOffset, endOffsetInclusive, italic)