میتوانید متن را با استفاده از محدودههای متنی که با نوع TextRange
نشان داده میشوند، ویرایش و سبک دهید. TextRange
قسمتی از متن را در یک شکل یا داخل یک سلول جدول نشان می دهد. فراخوانی getText()
روی یک شکل یا سلول جدول، محدوده متنی را برمی گرداند که کل متن را پوشش می دهد.
اگر از روشهایی استفاده میکنید که نحوه تناسب متن را در یک شکل ویرایش میکنند، هر گونه تنظیمات تنظیم خودکار اعمال شده روی شکل غیرفعال میشود.
استفاده از محدوده متن
یک محدوده متنی دارای دو نمایه است که بخش متن تحت پوشش یک محدوده متن را مشخص می کند: نمایه شروع و نمایه پایان . شما می توانید این شاخص ها را با استفاده از توابع getStartIndex()
و getEndIndex()
تعیین کنید.
برای خواندن محتویات یک محدوده متنی، از توابع asString()
یا asRenderedString()
استفاده کنید.
برای بازیابی یک زیر محدوده از داخل یک محدوده متنی، از تابع getRange()
استفاده کنید.
اسکریپت زیر یک کادر متنی در اسلاید اول ایجاد می کند و محتوای متن آن را روی "Hello world!" تنظیم می کند. سپس زیر محدوده ای را بازیابی می کند که فقط "Hello" را در بر می گیرد.
محدوده متنی که توسط یک سلول شکل یا جدول برگردانده می شود، همیشه کل متن را پوشش می دهد، حتی اگر متن درج و حذف شود. بنابراین مثال بالا دستورات log زیر را تولید می کند:
Start: 0; End: 13; Content: Hello world! Start: 0; End: 5; Content: Hello
درج و حذف متن
همچنین میتوانید اشکال متن و سلولهای جدول را با استفاده از محدودههای متن وارد و حذف کنید.
-
insertText()
وappendText()
به شما امکان می دهند متن را وارد کنید. -
setText()
متن یک محدوده متن را با متن ارائه شده جایگزین می کند. -
clear()
متن را از داخل یک محدوده متن حذف می کند.
اسکریپت زیر استفاده از این توابع را نشان می دهد:
این اسکریپت یک کادر متنی در اسلاید اول ایجاد می کند و محتوای متن آن را روی "Hello world!" تنظیم می کند. سپس کاراکترهای 6 تا 11 ("جهان") را حذف می کند و به جای آن متن "galaxy" را در شاخص 6 درج می کند. مثال بالا دستور log زیر را تولید می کند:
Start: 0; End: 14; Content: Hello galaxy!
جستجو و جایگزین کنید
از تابع replaceAllText()
در ارائه یا صفحه برای انجام یافتن سراسری و جایگزینی در کل ارائه یا یک صفحه خاص استفاده کنید.
تابع find()
در TextRange نمونه های یک رشته را در محدوده برمی گرداند. می توان از آن به همراه setText()
برای انجام Find-and-Replace در یک شکل یا سلول جدول استفاده کرد.
پاراگراف ها، موارد فهرست و اجراها
TextRange
توابعی را برای برگرداندن مجموعه های مفید موجودیت های متنی ارائه می دهد. برخی از این توابع عبارتند از:
-
getParagraphs(),
که تمام پاراگراف هایی را که با محدوده متن همپوشانی دارند را ارائه می دهد. پاراگراف دنباله ای از متن است که با کاراکتر خط جدید "\n" خاتمه می یابد. -
getListParagraphs(),
که آیتم های لیست را در محدوده متن فعلی برمی گرداند. -
getRuns(),
که اجرای متنی را فراهم می کند که با محدوده متن فعلی همپوشانی دارند. اجرای متن بخشی از متن است که در آن همه کاراکترها دارای سبک متن یکسانی هستند.
سبک سازی متن
سبک متن، رندر کاراکترهای متن را در ارائه شما، از جمله فونت، رنگ، و لینک سازی تعیین می کند.
تابع getTextStyle()
یک محدوده متنی یک شی TextStyle
را ارائه می دهد که برای استایل دادن به متن استفاده می شود. شی TextStyle
همان متنی را پوشش می دهد که TextRange
والد آن است.
مثال بالا ابتدا یک کادر متنی در اسلاید اول ایجاد می کند و محتوای آن را روی "Hello" تنظیم می کند. سپس متن "جهان!" را اضافه می کند. متن جدید اضافه شده پررنگ است، به www.example.com
پیوند داده شده است و رنگ آن قرمز تنظیم شده است.
هنگام خواندن سبکها، اگر محدوده دارای مقادیر متعددی برای استایل باشد، تابع null برمیگرداند. بنابراین نمونه بالا عبارات log زیر را تولید می کند:
Text: Hello; Bold: false Text: world!; Bold: true Text: Hello world!; Bold: null
بسیاری از سبک های دیگر نیز وجود دارند که می توانند روی متن اعمال شوند. جزئیات بیشتر را می توان در مستندات مرجع TextStyle
یافت.
سبک پاراگراف
سبکهای پاراگراف برای کل پاراگرافها اعمال میشود و شامل مواردی مانند چینش متن و فاصله بین خطوط میشود. تابع getParagraphStyle() در TextRange
یک آبجکت ParagraphStyle
را برای استایل دادن به تمام پاراگراف هایی که با محدوده متن والد همپوشانی دارند ارائه می کند.
مثال زیر یک کادر متنی در اسلاید اول با چهار پاراگراف ایجاد می کند، سپس سه پاراگراف اول را در مرکز تراز می کند.
یک ظاهر طراحی لیست
مانند ParagraphStyle
، ListStyle
می توان برای استایل دادن به تمام پاراگراف هایی که با محدوده متن اصلی همپوشانی دارند استفاده کرد.
مثال بالا یک کادر متنی در اسلاید اول ایجاد می کند که شامل چهار پاراگراف است: پاراگراف دوم یک بار و پاراگراف سوم دو بار تورفتگی دارد. سپس یک لیست از پیش تعیین شده را برای تمام پاراگراف ها اعمال می کند. در نهایت، سطح تودرتوی هر پاراگراف ثبت می شود. (سطح تودرتوی پاراگراف از تعداد برگه های قبل از متن پاراگراف بدست می آید.) بنابراین اسکریپت بالا عبارات گزارش زیر را تولید می کند:
Paragraph 1's nesting level: 0 Paragraph 2's nesting level: 1 Paragraph 3's nesting level: 2 Paragraph 4's nesting level: 0