TextRange
türüyle temsil edilen metin aralıklarını kullanarak metni düzenleyebilir ve stilini belirleyebilirsiniz. TextRange
, bir şekil içindeki veya tablo hücresi içindeki bir metin segmentini temsil eder. Bir şekil veya tablo hücresinde getText()
çağrısı yapıldığında metnin tamamını kapsayan bir metin aralığı döndürülür.
Metnin bir şekle nasıl sığacağını düzenleyen yöntemler kullanırsanız şekle uygulanan tüm otomatik sığdırma ayarları devre dışı bırakılır.
Metin aralıklarını kullanma
Bir metin aralığında, bir metin aralığının kapsadığı metin segmentini sınırlayan iki dizin bulunur: başlangıç dizini ve bitiş dizini. getStartIndex()
ve getEndIndex()
işlevlerini kullanarak bu dizinleri belirleyebilirsiniz.
Bir metin aralığının içeriğini okumak için asString()
veya asRenderedString()
işlevlerini kullanın.
Bir metin aralığından alt aralık almak için getRange()
işlevini kullanın.
Aşağıdaki komut dosyası, ilk slaytta bir metin kutusu oluşturur ve metin içeriğini "Merhaba dünya!" olarak ayarlar. Ardından, yalnızca "Hello" ifadesini kapsayan bir alt aralık alır.
Bir şekil ya da tablo hücresinin döndürdüğü metin aralığı, metin eklenmiş ve silinmiş olsa bile, her zaman metnin tamamını kapsar. Dolayısıyla, yukarıdaki örnek aşağıdaki günlük ifadelerini oluşturur:
Start: 0; End: 13; Content: Hello world! Start: 0; End: 5; Content: Hello
Metin ekleme ve silme
Ayrıca, metin aralıkları kullanarak metin şekilleri ve tablo hücreleri ekleyip silebilirsiniz.
insertText()
veappendText()
metin eklemenize olanak tanır.setText()
, bir metin aralığındaki metni sağlanan metinle değiştirir.clear()
, bir metin aralığındaki metni siler.
Aşağıdaki komut dosyası bu işlevlerin kullanımını gösterir:
Bu komut dosyası, ilk slaytta bir metin kutusu oluşturur ve metin içeriğini "Merhaba dünya!" olarak ayarlar. Daha sonra, 6 ile 11 arasındaki karakterleri ("dünya") siler ve bunun yerine 6. dizine "galaksi" metnini ekler. Yukarıdaki örnek aşağıdaki günlük ifadesini oluşturur:
Start: 0; End: 14; Content: Hello galaxy!
Ara ve değiştir
Tüm sunuda veya belirli bir sayfada global bul ve değiştir işlemini gerçekleştirmek için sunumda veya sayfada replaceAllText()
işlevini kullanın.
TextRange üzerindeki find()
işlevi, aralık içindeki bir dizenin örneklerini döndürür. Bir şekil veya tablo hücresinde bulma ve değiştirme işlemleri gerçekleştirmek için setText()
ile birlikte kullanılabilir.
Paragraflar, liste öğeleri ve çalıştırmalar
TextRange
, metin varlıklarından oluşan yararlı koleksiyon döndürecek işlevler sağlar.
Bu işlevlerden bazıları şunlardır:
getParagraphs(),
: Metin aralığıyla çakışan tüm paragrafları sağlar. Paragraf, "\n" yeni satır karakteriyle sona eren bir metin dizisidir.getListParagraphs(),
: Geçerli metin aralığındaki liste öğelerini döndürür.getRuns(),
: Mevcut metin aralığıyla çakışan metin çalıştırmalarını sağlar. Metin çalıştırma, tüm karakterlerin aynı metin stiline sahip olduğu bir metin segmentidir.
Metin stili
Metin stili; yazı tipi, renk ve köprü oluşturma dahil olmak üzere, sununuzda metin karakterlerinin oluşturulmasını belirler.
Bir metin aralığının getTextStyle()
işlevi, metnin stilini belirlemek için kullanılan bir TextStyle
nesnesi sağlar. TextStyle
nesnesi, TextRange
üst öğesi ile aynı metni kapsıyor.
Yukarıdaki örnek ilk olarak ilk slaytta bir metin kutusu oluşturur ve içeriğini "Hello " olarak ayarlar. Ardından "dünya!" metnini ekler. Yeni eklenen metin kalın yazılmıştır, www.example.com
ile bağlantılıdır ve rengi kırmızı olarak ayarlanmıştır.
Stilleri okurken, aralıkta bu stil için birden fazla değer varsa işlev null değerini döndürür. Dolayısıyla, yukarıdaki örnek aşağıdaki günlük ifadelerini oluşturur:
Text: Hello; Bold: false Text: world!; Bold: true Text: Hello world!; Bold: null
Metne uygulanabilecek daha birçok stil vardır. TextStyle
referans belgelerinde daha fazla bilgiye ulaşabilirsiniz.
Paragraf stili
Paragraf stilleri tüm paragraflar için geçerlidir ve metin hizalaması ve satır aralığı gibi özellikleri içerir. TextRange
içindeki getParagraphStyle() işlevi, üst metin aralığıyla çakışan tüm paragrafların stilini belirlemek için bir ParagraphStyle
nesnesi sağlar.
Aşağıdaki örnek, ilk slaytta dört paragraflı bir metin kutusu oluşturur, ardından ilk üç paragrafı ortaya hizalar.
Liste stili
ParagraphStyle
ile benzer şekilde, üst metin aralığıyla çakışan tüm paragrafların stilini belirlemek için ListStyle
kullanılabilir.
Yukarıdaki örnekte, ilk slaytta dört paragraf içeren bir metin kutusu oluşturulur: İkinci paragraf bir kez girintilendi ve üçüncü paragraf iki kez girintilendi. Ardından tüm paragraflara bir liste hazır ayarı uygular. Son olarak, her paragrafın iç içe yerleştirme seviyesi günlüğe kaydedilir. (Paragrafın iç içe yerleştirme seviyesi, paragraf metninden önceki sekme sayısından gelir.) Yukarıdaki komut dosyası aşağıdaki günlük ifadelerini oluşturur:
Paragraph 1's nesting level: 0 Paragraph 2's nesting level: 1 Paragraph 3's nesting level: 2 Paragraph 4's nesting level: 0