Metni Biçimlendir

Bu sayfada, Google Dokümanlar API'sı kullanılarak metinlerin nasıl biçimlendirileceği açıklanmaktadır.

Biçimlendirme hakkında

Metne uygulayabileceğiniz iki farklı biçimlendirme türü vardır dokümanınızın içeriği:

  • Yazı tipi, renk veya alt çizgi gibi karakter biçimlendirmelerini değiştirebilirsiniz.
  • Paragraf biçimlendirmesini, girinti veya satır aralığı gibi değiştirebilirsiniz.

Karakter biçimlendirmesini değiştirme

Karakter biçimlendirmesi, uygulayacaksınız.

Uyguladığınız biçimlendirmeler, devralınan varsayılan biçimlendirmeyi geçersiz kılar alt kısımdaki paragrafın TextStyle'ını kullanın. Öte yandan, biçimlendirmesini ayarlamadığınız karakterler değiştirebilirsiniz.

Metnin karakter biçimlendirmesini değiştirmek için batchUpdate öğesini UpdateTextStyleRequest. Aralık belirtmeniz gerekir. şunu içeren bir nesne olacaktır:

  • Bir segmentId üstbilgi, altbilgi, dipnot veya belirtilmemişse, gövde - metni içerir.
  • içindeki metin aralığını tanımlayan startIndex ve endIndex biçimlendirilmesi gerekir.
  • Hangi sekmenin metni içerdiğini tanımlayan bir tabId.

Aşağıdaki örnekte, metin üzerinde çeşitli metin biçimlendirme işlemleri içerir:

  • 1-5 arasındaki karakterlerin yazı tipini kalın italik olarak ayarlar.
  • 6-10 arası karakterlerin rengini blue 14 punto Times New Roman yazı tipine ayarlar.
  • 11-15 arasındaki karakterlere www.example.com bağlantısı veriyor.

Bunu yapmanın kolay bir yolu istek listesi hazırlamak ve tek bir batchUpdate arayın:

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()

Paragraf biçimlendirmesini değiştirme

Google Dokümanlar API'sı paragraf biçimlendirmesini güncellemenize olanak tanır. Bu güncelleme, Hizalama gibi özellikler de dahil olmak üzere dokümanınızda metin blokları oluşturulur girin.

Uyguladığınız biçimlendirmeler, devralınan varsayılan biçimlendirmeyi geçersiz kılar kullanmam gerekecek. Öte yandan, kullandığınız tüm biçimlendirme özellikleri paragraf stilinden devralmaya devam olarak ayarlamayın. Paragraf hakkında daha fazla bilgi için stiller ve devralma hakkında ParagraphStyle.

Aşağıdaki örnekte bir paragraf için şu biçimlendirme gösterilmektedir:

  • Adlandırılmış stil olarak bir başlık
  • Yukarıda özel aralık
  • Altta özel aralık
  • Özel bir sol kenarlık

Paragrafın geri kalan tüm biçimlendirme özellikleri temel adlandırılmış stildir.

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()