Questa pagina spiega come formattare il testo utilizzando l'API Google Documenti.
Informazioni sulla formattazione
Esistono due diversi tipi di formattazione che puoi applicare al testo contenuti del documento:
- Puoi modificare la formattazione dei caratteri, ad esempio carattere, colore o sottolineatura.
- Puoi modificare la formattazione del paragrafo, ad esempio l'inserimento o l'interlinea.
Modifica della formattazione dei caratteri
La formattazione dei caratteri determina la visualizzazione dei caratteri di testo nel documento.
La formattazione applicata sostituisce la formattazione predefinita ereditata lo TextStyle del paragrafo sottostante. Al contrario, i caratteri di cui non hai impostato la formattazione continuano a ereditare dagli stili del paragrafo.
Per modificare la formattazione dei caratteri del testo, usa batchUpdate
con
UpdateTextStyleRequest.
Devi fornire un intervallo
che include le seguenti informazioni:
- Un
segmentId
che identifica l'intestazione, il piè di pagina o la nota a piè di pagina o, se non specificato, il corpo contiene il testo. startIndex
eendIndex
che definiscono l'intervallo di testo all'interno delle segmento da formattare.- Un elemento
tabId
che identifica la scheda che contiene il testo.
Nell'esempio seguente vengono eseguite diverse operazioni di stile del testo contenuto nell'intestazione:
- Imposta il carattere dei caratteri da 1 a 5 in grassetto corsivo.
- Imposta il colore dei caratteri da 6-10 a
blue
carattere Times New Roman da 14 pt. - Link ipertestuali da 11 a 15 a
www.example.com
.
Un modo semplice per farlo è creare un elenco di richieste e quindi utilizzando un metodo batchUpdate chiama:
Java
List<Request> requests = new ArrayList<>(); requests.add(new Request().setUpdateTextStyle(new UpdateTextStyleRequest() .setTextStyle(new TextStyle() .setBold(true) .setItalic(true)) .setRange(new Range() .setStartIndex(1) .setEndIndex(5) .setTabId(TAB_ID)) .setFields("bold"))); requests.add(new Request() .setUpdateTextStyle(new UpdateTextStyleRequest() .setRange(new Range() .setStartIndex(6) .setEndIndex(10) .setTabId(TAB_ID)) .setTextStyle(new TextStyle() .setWeightedFontFamily(new WeightedFontFamily() .setFontFamily("Times New Roman")) .setFontSize(new Dimension() .setMagnitude(14.0) .setUnit("PT")) .setForegroundColor(new OptionalColor() .setColor(new Color().setRgbColor(new RgbColor() .setBlue(1.0F) .setGreen(0.0F) .setRed(0.0F))))) .setFields("foregroundColor,weightedFontFamily,fontSize"))); requests.add(new Request() .setUpdateTextStyle(new UpdateTextStyleRequest() .setRange(new Range() .setStartIndex(11) .setEndIndex(15) .setTabId(TAB_ID)) .setTextStyle(new TextStyle() .setLink(new Link() .setUrl("www.example.com"))) .setFields("link"))); BatchUpdateDocumentRequest body = new BatchUpdateDocumentRequest().setRequests(requests); BatchUpdateDocumentResponse response = docsService.documents() .batchUpdate(DOCUMENT_ID, body).execute();
Python
requests = [ { 'updateTextStyle': { 'range': { 'startIndex': 1, 'endIndex': 5, 'tabId': TAB_ID }, 'textStyle': { 'bold': True, 'italic': True }, 'fields': 'bold,italic' } }, { 'updateTextStyle': { 'range': { 'startIndex': 6, 'endIndex': 10, 'tabId': TAB_ID }, 'textStyle': { 'weightedFontFamily': { 'fontFamily': 'Times New Roman' }, 'fontSize': { 'magnitude': 14, 'unit': 'PT' }, 'foregroundColor': { 'color': { 'rgbColor': { 'blue': 1.0, 'green': 0.0, 'red': 0.0 } } } }, 'fields': 'foregroundColor,weightedFontFamily,fontSize' } }, { 'updateTextStyle': { 'range': { 'startIndex': 11, 'endIndex': 15, 'tabId': TAB_ID }, 'textStyle': { 'link': { 'url': 'www.example.com' } }, 'fields': 'link' } } ] result = service.documents().batchUpdate( documentId=DOCUMENT_ID, body={'requests': requests}).execute()
Modifica della formattazione del paragrafo
L'API Google Documenti consente di aggiornare la formattazione dei paragrafi, che determina il Vengono visualizzati blocchi di testo nel documento, incluse funzionalità come l'allineamento e rientro.
La formattazione applicata sostituisce la formattazione predefinita ereditata lo stile del paragrafo sottostante. Al contrario, qualsiasi caratteristica di formattazione non impostare continua a ereditare dallo stile paragrafo. Per ulteriori informazioni sul paragrafo gli stili e l'ereditarietà, vedi ParagraphStyle.
L'esempio seguente specifica la seguente formattazione per un paragrafo:
- Un'intestazione come stile denominato
- Spaziatura personalizzata sopra
- Spaziatura personalizzata sotto
- Un bordo sinistro personalizzato
Tutte le altre funzioni di formattazione del paragrafo continuano a ereditare allo stile con nome sottostante.
Java
List<Request> requests = new ArrayList<>(); requests.add(new Request().setUpdateParagraphStyle(new UpdateParagraphStyleRequest() .setRange(new Range() .setStartIndex(1) .setEndIndex(10) .setTabId(TAB_ID)) .setParagraphStyle(new ParagraphStyle() .setNamedStyleType("HEADING_1") .setSpaceAbove(new Dimension() .setMagnitude(10.0) .setUnit("PT")) .setSpaceBelow(new Dimension() .setMagnitude(10.0) .setUnit("PT"))) .setFields("namedStyleType,spaceAbove,spaceBelow") )); requests.add(new Request().setUpdateParagraphStyle(new UpdateParagraphStyleRequest() .setRange(new Range() .setStartIndex(10) .setEndIndex(20) .setTabId(TAB_ID)) .setParagraphStyle(new ParagraphStyle() .setBorderLeft(new ParagraphBorder() .setColor(new OptionalColor() .setColor(new Color() .setRgbColor(new RgbColor() .setBlue(1.0F) .setGreen(0.0F) .setRed(0.0F) ) ) ) .setDashStyle("DASH") .setPadding(new Dimension() .setMagnitude(20.0) .setUnit("PT")) .setWidth(new Dimension() .setMagnitude(15.0) .setUnit("PT") ) ) ) .setFields("borderLeft") )); BatchUpdateDocumentRequest body = new BatchUpdateDocumentRequest().setRequests(requests); BatchUpdateDocumentResponse response = docsService.documents() .batchUpdate(DOCUMENT_ID, body).execute();
Python
requests = [ { 'updateParagraphStyle': { 'range': { 'startIndex': 1, 'endIndex': 10, 'tabId': TAB_ID }, 'paragraphStyle': { 'namedStyleType': 'HEADING_1', 'spaceAbove': { 'magnitude': 10.0, 'unit': 'PT' }, 'spaceBelow': { 'magnitude': 10.0, 'unit': 'PT' } }, 'fields': 'namedStyleType,spaceAbove,spaceBelow' } }, { 'updateParagraphStyle': { 'range': { 'startIndex': 10, 'endIndex': 20, 'tabId': TAB_ID }, 'paragraphStyle': { 'borderLeft': { 'color': { 'color': { 'rgbColor': { 'blue': 1.0, 'green': 0.0, 'red': 0.0 } } }, 'dashStyle': 'DASH', 'padding': { 'magnitude': 20.0, 'unit': 'PT' }, 'width': { 'magnitude': 15.0, 'unit': 'PT' }, } }, 'fields': 'borderLeft' } } ] result = service.documents().batchUpdate( documentId=DOCUMENT_ID, body={'requests': requests}).execute()