سندی که شامل یک یا چند شیء Tab است که هر کدام شامل متن غنی و عناصری مانند جداول و لیستها هستند.
اسناد را میتوان با استفاده از DocumentApp باز یا ایجاد کرد.
// Open a document by ID. let doc = DocumentApp.openById('<my-id>'); // Create and open a document. doc = DocumentApp.create('Document Title');
متدهای کلاس Document که مستقیماً به محتوای متن دسترسی پیدا کرده و آن را تغییر میدهند، یا روی تب فعال (در اسکریپتهای متصل به یک سند خاص) یا روی اولین تب (در صورت عدم وجود تب فعال) عمل میکنند. اسکریپتهایی که به این متدها (مثلاً getBody() ) متکی هستند، میتوانند با استفاده از getTabs() و سپس Tab.asDocumentTab() به پشتیبانی از تبها منتقل شوند.
روشها
| روش | نوع بازگشتی | شرح مختصر |
|---|---|---|
add Bookmark(position) | Bookmark | یک Bookmark در Position داده شده به اولین تب یا برای اسکریپتهایی که به یک سند متصل هستند، به تب فعال اضافه میکند. |
add Editor(emailAddress) | Document | کاربر داده شده را به لیست ویرایشگران Document اضافه میکند. |
add Editor(user) | Document | کاربر داده شده را به لیست ویرایشگران Document اضافه میکند. |
add Editors(emailAddresses) | Document | آرایهی داده شده از کاربران را به لیست ویرایشگران Document اضافه میکند. |
add Footer() | Footer Section | اگر بخشی در پاورقی وجود نداشته باشد، آن را به اولین تب یا برای اسکریپتهایی که به یک سند متصل هستند، به تب فعال اضافه میکند. |
add Header() | Header Section | اگر بخش سربرگ وجود نداشته باشد، آن را به اولین تب یا برای اسکریپتهایی که به یک سند متصل هستند، به تب فعال اضافه میکند. |
add Named Range(name, range) | Named Range | یک Named Range اضافه میکند، که Range است که دارای نام و شناسه برای استفاده در بازیابیهای بعدی، در اولین تب یا برای اسکریپتهایی که به یک سند متصل هستند، در تب فعال، میباشد. |
add Viewer(emailAddress) | Document | کاربر داده شده را به لیست بینندگان Document اضافه میکند. |
add Viewer(user) | Document | کاربر داده شده را به لیست بینندگان Document اضافه میکند. |
add Viewers(emailAddresses) | Document | آرایهی داده شده از کاربران را به لیست بینندگان Document اضافه میکند. |
get Active Tab() | Tab |null | Tab فعال فعلی کاربر در سند را برمیگرداند. |
get As(contentType) | Blob | محتویات Document فعلی را به صورت یک blob از نوع مشخص شده بازیابی میکند. |
get Blob() | Blob | محتوای Document فعلی را به صورت یک حباب (blob) بازیابی میکند. |
get Body() | Body | Body اولین تب یا، برای اسکریپتهایی که به یک سند متصل هستند، Document Body Section تب فعال را بازیابی میکند. |
get Bookmark(id) | Bookmark |null | Bookmark با شناسهی داده شده در اولین تب یا برای اسکریپتهایی که به یک سند متصل هستند، در تب فعال دریافت میکند. |
get Bookmarks() | Bookmark[] | تمام اشیاء Bookmark را در اولین تب یا برای اسکریپتهایی که به یک سند متصل هستند، در تب فعال دریافت میکند. |
get Cursor() | Position |null | مکاننمای کاربر را در تب فعال دریافت میکند. |
get Editors() | User[] | لیست ویرایشگران این Document را دریافت میکند. |
get Footer() | Footer Section |null | بخش پاورقی اولین تب یا، برای اسکریپتهایی که به یک سند متصل هستند، بخش پاورقی تب فعال را بازیابی میکند. |
get Footnotes() | Footnote[] | تمام عناصر Footnote را در بدنهی اولین تب یا برای اسکریپتهایی که به یک سند متصل هستند، در بدنهی تب فعال بازیابی میکند. |
get Header() | Header Section |null | بخش سربرگ اولین تب یا، برای اسکریپتهایی که به یک سند متصل هستند، بخش سربرگ تب فعال را بازیابی میکند. |
get Id() | String | شناسه منحصر به فرد سند را بازیابی میکند. |
get Language() | String|null | کد زبان سند را دریافت میکند. |
get Name() | String | عنوان سند را بازیابی میکند. |
get Named Range By Id(id) | Named Range |null | Named Range با شناسه داده شده در اولین تب یا برای اسکریپتهایی که به یک سند متصل هستند، در تب فعال را دریافت میکند. |
get Named Ranges() | Named Range[] | تمام اشیاء Named Range را در اولین تب یا برای اسکریپتهایی که به یک سند متصل هستند، در تب فعال دریافت میکند. |
get Named Ranges(name) | Named Range[] | تمام اشیاء Named Range را با نام داده شده در اولین تب یا برای اسکریپتهایی که به یک سند متصل هستند، در تب فعال دریافت میکند. |
get Selection() | Range |null | انتخاب کاربر را در تب فعال دریافت میکند. |
get Supported Language Codes() | String[] | تمام کدهای زبانی که در فایلهای Google Docs پشتیبانی میشوند را دریافت میکند. |
get Tab(tabId) | Tab |null | Tab با شناسه (ID) مشخص شده را دریافت میکند. |
get Tabs() | Tab[] | تمام Tab غیر تو در تو که بخشی از سند هستند را دریافت میکند. |
get Url() | String | آدرس اینترنتی (URL) را برای دسترسی به سند فعلی بازیابی میکند. |
get Viewers() | User[] | لیست بینندگان و نظردهندگان این Document را دریافت میکند. |
new Position(element, offset) | Position | یک Position جدید ایجاد میکند که ارجاعی به مکانی در تب، نسبت به یک عنصر خاص در تب اول یا برای اسکریپتهایی که به یک سند متصل هستند، نسبت به تب فعال است. |
new Range() | Range Builder | یک سازنده ایجاد میکند که برای ساخت اشیاء Range از عناصر tab در اولین tab یا برای اسکریپتهایی که به یک سند متصل هستند، از tab فعال استفاده میشود. |
remove Editor(emailAddress) | Document | کاربر داده شده را از لیست ویرایشگران Document حذف میکند. |
remove Editor(user) | Document | کاربر داده شده را از لیست ویرایشگران Document حذف میکند. |
remove Viewer(emailAddress) | Document | کاربر داده شده را از لیست بینندگان و نظردهندگان Document حذف میکند. |
remove Viewer(user) | Document | کاربر داده شده را از لیست بینندگان و نظردهندگان Document حذف میکند. |
save And Close() | void | Document فعلی را ذخیره میکند. |
set Active Tab(tabId) | void | Tab انتخاب شده توسط کاربر در سند فعلی را به تبی با شناسه مشخص شده تنظیم میکند. |
set Cursor(position) | Document | مکاننمای کاربر را با توجه به Position تنظیم میکند. |
set Language(languageCode) | Document | کد زبان سند را تنظیم میکند. |
set Name(name) | Document | عنوان سند را تنظیم میکند. |
set Selection(range) | Document | با توجه به Range ، انتخاب کاربر را در تب فعال تنظیم میکند. |
مستندات دقیق
addBookmark(position)
یک Bookmark در Position داده شده به اولین تب یا برای اسکریپتهایی که به یک سند متصل هستند، به تب فعال اضافه میکند. برای افزودن یک نشانک به هر تبی، از متد DocumentTab.addBookmark(position) استفاده کنید.
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Gets the active or first tab's body and adds a paragraph. const paragraph = doc.getBody().appendParagraph('My new paragraph.'); // Creates a position at the first character of the paragraph text. const position = doc.newPosition(paragraph.getChild(0), 0); // Adds a bookmark at the first character of the paragraph text. const bookmark = doc.addBookmark(position); // Logs the bookmark ID to the console. console.log(bookmark.getId());
پارامترها
| نام | نوع | توضیحات |
|---|---|---|
position | Position | موقعیت نشانک جدید. |
بازگشت
Bookmark — نشانک جدید.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
addEditor(emailAddress)
کاربر داده شده را به لیست ویرایشگران Document اضافه میکند. اگر کاربر از قبل در لیست بینندگان باشد، این متد کاربر را از لیست بینندگان خارج میکند.
پارامترها
| نام | نوع | توضیحات |
|---|---|---|
email Address | String | آدرس ایمیل کاربر برای اضافه کردن. |
بازگشت
Document — این Document ، برای زنجیرهسازی.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
addEditor(user)
کاربر داده شده را به لیست ویرایشگران Document اضافه میکند. اگر کاربر از قبل در لیست بینندگان باشد، این متد کاربر را از لیست بینندگان خارج میکند.
پارامترها
| نام | نوع | توضیحات |
|---|---|---|
user | User | نمایشی از کاربر برای اضافه کردن. |
بازگشت
Document — این Document ، برای زنجیرهسازی.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
addEditors(emailAddresses)
آرایهی داده شده از کاربران را به لیست ویرایشگران Document اضافه میکند. اگر هر یک از کاربران از قبل در لیست بینندگان باشند، این متد آنها را از لیست بینندگان خارج میکند.
پارامترها
| نام | نوع | توضیحات |
|---|---|---|
email Addresses | String[] | آرایهای از آدرسهای ایمیل کاربران برای اضافه کردن. |
بازگشت
Document — این Document ، برای زنجیرهسازی.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
addHeader()
اگر بخشی به عنوان سربرگ وجود نداشته باشد، آن را به اولین تب یا برای اسکریپتهایی که به یک سند متصل هستند، به تب فعال اضافه میکند. برای افزودن یک بخش سربرگ به هر تبی، از متد DocumentTab.addHeader() استفاده کنید.
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Adds a header to the document's active or first tab. const header = doc.addHeader(); // Sets the header text to 'This is a header.' header.setText('This is a header');
بازگشت
HeaderSection — سربرگ برگه.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
addNamedRange(name, range)
یک NamedRange اضافه میکند، که Range است که دارای نام و شناسه برای استفاده در بازیابی بعدی، در اولین تب یا برای اسکریپتهایی که به یک سند متصل هستند، در تب فعال، میباشد. برای اضافه کردن یک NamedRange در هر تب، از متد DocumentTab.addNamedRange(name, range) استفاده کنید. نامها لزوماً منحصر به فرد نیستند؛ چندین محدوده مختلف در یک سند میتوانند نام یکسانی داشته باشند، دقیقاً مانند یک کلاس در HTML. در مقابل، شناسهها در داخل سند منحصر به فرد هستند، مانند یک شناسه در HTML. پس از اضافه کردن یک NamedRange به یک سند، نمیتوانید آن را تغییر دهید، فقط میتوانید آن را حذف کنید.
هر اسکریپتی که به سند دسترسی پیدا کند، میتواند به یک NamedRange دسترسی پیدا کند. برای جلوگیری از تداخل ناخواسته بین اسکریپتها، پیشوند نام محدودهها را با یک رشته منحصر به فرد در نظر بگیرید.
// Creates a named range that includes every table in the active tab. const doc = DocumentApp.getActiveDocument(); const rangeBuilder = doc.newRange(); const tables = doc.getBody().getTables(); for (let i = 0; i < tables.length; i++) { rangeBuilder.addElement(tables[i]); } // Adds the named range to the document's active tab. doc.addNamedRange('Document tables', rangeBuilder.build());
پارامترها
| نام | نوع | توضیحات |
|---|---|---|
name | String | نام محدوده، که نیازی به منحصر به فرد بودن ندارد؛ نام محدوده باید بین ۱ تا ۲۵۶ کاراکتر باشد. |
range | Range | محدوده عناصری که باید به نام مرتبط شوند؛ این محدوده میتواند انتخاب فعال ، نتیجه جستجو یا ساخته شده دستی با new Range() باشد. |
بازگشت
NamedRange — NamedRange .
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
addViewer(emailAddress)
کاربر داده شده را به لیست بینندگان Document اضافه میکند. اگر کاربر از قبل در لیست ویرایشگران باشد، این متد هیچ تاثیری ندارد.
پارامترها
| نام | نوع | توضیحات |
|---|---|---|
email Address | String | آدرس ایمیل کاربر برای اضافه کردن. |
بازگشت
Document — این Document ، برای زنجیرهسازی.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
addViewer(user)
کاربر داده شده را به لیست بینندگان Document اضافه میکند. اگر کاربر از قبل در لیست ویرایشگران باشد، این متد هیچ تاثیری ندارد.
پارامترها
| نام | نوع | توضیحات |
|---|---|---|
user | User | نمایشی از کاربر برای اضافه کردن. |
بازگشت
Document — این Document ، برای زنجیرهسازی.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
addViewers(emailAddresses)
آرایهی داده شده از کاربران را به لیست بینندگان Document اضافه میکند. اگر هر یک از کاربران از قبل در لیست ویرایشگران باشند، این متد هیچ تاثیری روی آنها ندارد.
پارامترها
| نام | نوع | توضیحات |
|---|---|---|
email Addresses | String[] | آرایهای از آدرسهای ایمیل کاربران برای اضافه کردن. |
بازگشت
Document — این Document ، برای زنجیرهسازی.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
getActiveTab()
Tab فعال فعلی کاربر در سند را دریافت میکند. یک اسکریپت فقط میتواند به تب فعال کاربری که اسکریپت را اجرا میکند دسترسی داشته باشد، و فقط در صورتی که اسکریپت به سند متصل باشد.
// Display a dialog box that shows the title of the tab that the // user is currently viewing. const tab = DocumentApp.getActiveDocument().getActiveTab(); DocumentApp.getUi().alert(`ID of selected tab: ${tab.getTitle()}`);
بازگشت
Tab |null — Tab فعال فعلی کاربر، یا null اگر اسکریپت به سند محدود نشده باشد.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
getAs(contentType)
محتویات Document فعلی را به صورت یک blob از نوع مشخص شده بازیابی میکند.
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Gets the document as a PDF. const pdf = doc.getAs('application/pdf'); // Logs the name of the PDF to the console. console.log(pdf.getName());
پارامترها
| نام | نوع | توضیحات |
|---|---|---|
content Type | String | نوع MIME برای تبدیل به 'application/pdf' و 'text/markdown' پشتیبانی میشوند. |
بازگشت
Blob — سند فعلی به عنوان یک blob.
getBlob()
محتوای Document فعلی را به صورت یک حباب (blob) بازیابی میکند.
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Retrieves the current document's contents as a blob and logs it to the // console. console.log(doc.getBlob().getContentType());
بازگشت
Blob — سند فعلی به عنوان یک blob.
getBody()
Body اولین تب یا، برای اسکریپتهایی که به یک سند متصل هستند، DocumentBodySection تب فعال را بازیابی میکند. برای دریافت DocumentBodySection هر تب، از متد DocumentTab.getBody() استفاده کنید.
تبها میتوانند شامل انواع مختلفی از بخشها باشند (برای مثال، HeaderSection ، FooterSection ). بخش فعال برای یک تب، Body است.
متدهای عنصر در Document به Body واگذار میشوند.
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Gets the active or first tab's body. const body = doc.getBody(); // Gets the body text and logs it to the console. console.log(body.getText());
بازگشت
Body — بخش بدنهی تب.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
getBookmark(id)
Bookmark با شناسهی داده شده در اولین تب یا برای اسکریپتهایی که به یک سند متصل هستند، در تب فعال دریافت میکند. برای دریافت یک بوکمارک در هر تب، از متد DocumentTab.getBookmark(id) استفاده کنید. اگر چنین Bookmark در تب وجود نداشته باشد، این متد null را برمیگرداند.
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Gets the bookmark by its ID in the document's active or first tab. const bookmark = doc.getBookmark('id.xyz654321'); // If the bookmark exists, logs the character offset of its position to the // console. otherwise, logs 'No bookmark exists with the given ID.' to the // console. if (bookmark) { console.log(bookmark.getPosition().getOffset()); } else { console.log('No bookmark exists with the given ID.'); }
پارامترها
| نام | نوع | توضیحات |
|---|---|---|
id | String | شناسهی Bookmark . |
بازگشت
Bookmark |null — Bookmark با شناسه داده شده، یا اگر چنین Bookmark در برگه وجود نداشته باشد، null .
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
getBookmarks()
تمام اشیاء Bookmark را در اولین تب یا برای اسکریپتهایی که به یک سند متصل هستند، در تب فعال دریافت میکند. برای دریافت تمام بوکمارکها در هر تبی، از متد DocumentTab.getBookmarks() استفاده کنید.
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. const doc = DocumentApp.openById('123abc'); // Gets all of the bookmarks in the document's active or first tab. const bookmarks = doc.getBookmarks(); // Logs the number of bookmarks in the tab to the console. console.log(bookmarks.length);
بازگشت
Bookmark[] — آرایهای از اشیاء Bookmark در تب.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
getCursor()
مکاننمای کاربر را در تب فعال دریافت میکند. یک اسکریپت فقط میتواند به مکاننمای کاربری که اسکریپت را اجرا میکند دسترسی داشته باشد، و فقط در صورتی که اسکریپت به سند متصل باشد.
// Insert some text at the cursor position and make it bold. const cursor = DocumentApp.getActiveDocument().getCursor(); if (cursor) { // Attempt to insert text at the cursor position. If the insertion returns // null, the cursor's containing element doesn't allow insertions, so show the // user an error message. const element = cursor.insertText('ಠ‿ಠ'); if (element) { element.setBold(true); } else { DocumentApp.getUi().alert('Cannot insert text here.'); } } else { DocumentApp.getUi().alert('Cannot find a cursor.'); }
بازگشت
Position |null — نمایش مکاننمای کاربر، یا اگر کاربر مکاننمایی در تب نداشته باشد یا اگر اسکریپت به سند محدود نشده باشد، null .
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
getEditors()
getFootnotes()
تمام عناصر Footnote را در بدنهی اولین تب یا برای اسکریپتهایی که به یک سند متصل هستند، در بدنهی تب فعال بازیابی میکند. برای دریافت تمام پاورقیها در هر تب، از متد DocumentTab.getFootnotes() استفاده کنید.
فراخوانیهای getFootnotes باعث تکرار عناصر تب میشوند. برای تبهای بزرگ، از فراخوانیهای غیرضروری این متد خودداری کنید.
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Gets the first footnote in the active or first tab's body. const footnote = doc.getFootnotes()[0]; // Logs footnote contents to the console. console.log(footnote.getFootnoteContents().getText());
بازگشت
Footnote[] — پاورقیهای برگه.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
getHeader()
بخش سربرگ اولین تب یا، برای اسکریپتهایی که به یک سند متصل هستند، بخش سربرگ تب فعال را بازیابی میکند. برای دریافت بخش سربرگ هر تب، از متد DocumentTab.getHeader() استفاده کنید.
// Opens the Docs file by its ID. If you created your script from within // a Google Docs file, you can use DocumentApp.getActiveDocument() instead. // TODO(developer): Replace the ID with your own. const doc = DocumentApp.openById('123abc'); // Gets the text of the active or first tab's header and logs it to the console. console.log(doc.getHeader().getText());
بازگشت
HeaderSection |null — سربرگ برگه.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
getId()
شناسه منحصر به فرد سند را بازیابی میکند. شناسه سند با DocumentApp.openById() برای باز کردن یک نمونه سند خاص استفاده میشود.
بازگشت
String - شناسه سند.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
getLanguage()
کد زبان سند را دریافت میکند. این زبانی است که در ویرایشگر سند در مسیر File > Language نشان داده شده است، که ممکن است زبان واقعی موجود در سند نباشد.
بازگشت
String|null — زبان سند، یا null اگر تعریف نشده باشد.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
getName()
عنوان سند را بازیابی میکند.
بازگشت
String - عنوان سند.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
getNamedRangeById(id)
NamedRange با شناسه داده شده در اولین تب یا برای اسکریپتهایی که به یک سند متصل هستند، در تب فعال دریافت میکند. برای دریافت NamedRange با شناسه داده شده در هر تب، از متد DocumentTab.getNamedRangeById(id) استفاده کنید. اگر چنین NamedRange در تب وجود نداشته باشد، این متد null را برمیگرداند. نامها لزوماً منحصر به فرد نیستند، حتی در بین تبها؛ چندین محدوده مختلف در یک تب ممکن است نام یکسانی داشته باشند، دقیقاً مانند یک کلاس در HTML. در مقابل، شناسهها در داخل تب منحصر به فرد هستند، مانند یک شناسه در HTML.
پارامترها
| نام | نوع | توضیحات |
|---|---|---|
id | String | شناسهی محدوده، که در هر برگه منحصر به فرد است. |
بازگشت
NamedRange |null — NamedRange با شناسه داده شده، یا null اگر چنین محدودهای در تب وجود نداشته باشد.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
getNamedRanges()
تمام اشیاء NamedRange را در اولین تب یا برای اسکریپتهایی که به یک سند متصل هستند، در تب فعال دریافت میکند. برای دریافت تمام اشیاء NamedRange در هر تبی، از متد DocumentTab.getNamedRanges() استفاده کنید.
هر اسکریپتی که به تب دسترسی پیدا کند، میتواند به یک NamedRange دسترسی پیدا کند. برای جلوگیری از تداخل ناخواسته بین اسکریپتها، میتوانید نام دامنهها را با یک رشته منحصر به فرد پیشوند کنید.
بازگشت
NamedRange[] — آرایهای از اشیاء NamedRange در تب، که احتمالاً شامل چندین محدوده با نام یکسان است.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
getNamedRanges(name)
تمام اشیاء NamedRange را با نام داده شده در اولین تب یا برای اسکریپتهایی که به یک سند متصل هستند، در تب فعال دریافت میکند. برای دریافت تمام اشیاء NamedRange در هر تب، از متد DocumentTab.getNamedRanges(name) استفاده کنید. نامها لزوماً منحصر به فرد نیستند، حتی در بین تبها؛ چندین محدوده مختلف در یک تب ممکن است نام یکسانی داشته باشند، دقیقاً مانند یک کلاس در HTML. در مقابل، شناسهها در داخل تب منحصر به فرد هستند، مانند یک شناسه در HTML.
یک NamedRange میتواند توسط هر اسکریپتی که به سند دسترسی دارد، قابل دسترسی باشد. برای جلوگیری از تداخل ناخواسته بین اسکریپتها، پیشوند نام محدودهها را با یک رشته منحصر به فرد در نظر بگیرید.
پارامترها
| نام | نوع | توضیحات |
|---|---|---|
name | String | نام محدوده، که لزوماً منحصر به فرد نیست. |
بازگشت
NamedRange[] — آرایهای از اشیاء NamedRange در تب با نام داده شده.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
getSelection()
انتخاب کاربر را در تب فعال دریافت میکند. یک اسکریپت فقط میتواند به انتخاب کاربری که اسکریپت را اجرا میکند دسترسی داشته باشد، و فقط در صورتی که اسکریپت به سند متصل باشد.
// Display a dialog box that tells the user how many elements are included in // the selection. const selection = DocumentApp.getActiveDocument().getSelection(); if (selection) { const elements = selection.getRangeElements(); DocumentApp.getUi().alert(`Number of selected elements: ${elements.length}`); } else { DocumentApp.getUi().alert('Nothing is selected.'); }
بازگشت
Range |null — نمایشی از انتخاب کاربر، یا null اگر کاربر چیزی در برگه انتخاب نکرده باشد، اگر فقط انتهای یک پاراگراف انتخاب شده باشد، اگر فقط انتهای یک پاراگراف و یک خط جدید انتخاب شده باشند، یا اگر اسکریپت به سند محدود نشده باشد.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
getSupportedLanguageCodes()
تمام کدهای زبانی که در فایلهای Google Docs پشتیبانی میشوند را دریافت میکند.
بازگشت
String[] — آرایهای از کدهای زبان.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
getTab(tabId)
Tab را با شناسه مشخص شده دریافت میکند. اگر چنین Tab وجود نداشته باشد، این متد null را برمیگرداند. میتواند به Tab ها در هر سطح تودرتو دسترسی داشته باشد.
پارامترها
| نام | نوع | توضیحات |
|---|---|---|
tab Id | String | شناسهی برگهای که قرار است دریافت شود. |
بازگشت
Tab |null — Tab با شناسه مشخص شده، یا اگر چنین Tab وجود نداشته باشد، null .
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
getTabs()
تمام Tab غیر تو در تو که بخشی از سند هستند را دریافت میکند.
تبها میتوانند شامل تبهای فرزند باشند، تبی که درون تب دیگری قرار گرفته است. تبهای فرزند با استفاده از Tab.getChildTabs() قابل دسترسی هستند.
بازگشت
Tab[] — فهرست تمام Tab هایی که بخشی از سند هستند.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
getUrl()
آدرس اینترنتی (URL) را برای دسترسی به سند فعلی بازیابی میکند.
const doc = DocumentApp.getActiveDocument(); // Send out the link to open the document. MailApp.sendEmail('<email-address>', doc.getName(), doc.getUrl());
بازگشت
String - آدرس اینترنتی (URL) برای دسترسی به سند فعلی.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
getViewers()
لیست بینندگان و نظردهندگان این Document را دریافت میکند.
بازگشت
User[] — آرایهای از کاربران با مجوز مشاهده یا نظر دادن.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
newPosition(element, offset)
یک Position جدید ایجاد میکند که ارجاعی به مکانی در تب، نسبت به یک عنصر خاص در تب اول یا برای اسکریپتهایی که به یک سند متصل هستند، تب فعال است. برای ایجاد یک Position نسبت به مکانی در هر تب، از متد DocumentTab.newPosition(element, offset) استفاده کنید. مکاننمای کاربر به عنوان یک Position نمایش داده میشود، در میان کاربردهای دیگر.
// Append a paragraph to the active tab, then place the user's cursor after the // first word of the new paragraph. const doc = DocumentApp.getActiveDocument(); const paragraph = doc.getBody().appendParagraph('My new paragraph.'); const position = doc.newPosition(paragraph.getChild(0), 2); doc.setCursor(position);
پارامترها
| نام | نوع | توضیحات |
|---|---|---|
element | Element | عنصری که باید شامل Position جدید باشد؛ این عنصر باید یا یک عنصر Text ) یا یک عنصر نگهدارنده مانند Paragraph باشد. |
offset | Integer | برای عناصر Text ، تعداد کاراکترهای قبل از Position ؛ برای سایر عناصر، تعداد عناصر فرزند قبل از Position در همان عنصر نگهدارنده. |
بازگشت
Position — Position جدید.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
newRange()
یک سازنده ایجاد میکند که برای ساخت اشیاء Range از عناصر tab در اولین tab یا برای اسکریپتهایی که به یک سند متصل هستند، از tab فعال استفاده میشود. برای ایجاد یک سازنده که برای ساخت اشیاء DocumentRange از عناصر tab در هر tab استفاده میشود، از متد DocumentTab.newRange() استفاده کنید.
// Change the user's selection to a range that includes every table in the // active tab. const doc = DocumentApp.getActiveDocument(); const rangeBuilder = doc.newRange(); const tables = doc.getBody().getTables(); for (let i = 0; i < tables.length; i++) { rangeBuilder.addElement(tables[i]); } doc.setSelection(rangeBuilder.build());
بازگشت
RangeBuilder — سازنده جدید.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
removeEditor(emailAddress)
کاربر داده شده را از فهرست ویرایشگران Document حذف میکند. این روش، دسترسی کاربران به Document را در صورتی که به کلاسی از کاربران با دسترسی عمومی تعلق داشته باشند، مسدود نمیکند - برای مثال، اگر Document با کل دامنه کاربر به اشتراک گذاشته شده باشد، یا اگر Document در یک درایو مشترک باشد که کاربر میتواند به آن دسترسی داشته باشد.
برای فایلهای درایو، این کار کاربر را از فهرست مشاهدهکنندگان نیز حذف میکند.
پارامترها
| نام | نوع | توضیحات |
|---|---|---|
email Address | String | آدرس ایمیل کاربر برای حذف. |
بازگشت
Document — این Document ، برای زنجیرهسازی.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
removeEditor(user)
کاربر داده شده را از فهرست ویرایشگران Document حذف میکند. این روش، دسترسی کاربران به Document را در صورتی که به کلاسی از کاربران با دسترسی عمومی تعلق داشته باشند، مسدود نمیکند - برای مثال، اگر Document با کل دامنه کاربر به اشتراک گذاشته شده باشد، یا اگر Document در یک درایو مشترک باشد که کاربر میتواند به آن دسترسی داشته باشد.
برای فایلهای درایو، این کار کاربر را از فهرست مشاهدهکنندگان نیز حذف میکند.
پارامترها
| نام | نوع | توضیحات |
|---|---|---|
user | User | نمایندهای از کاربر که باید حذف شود. |
بازگشت
Document — این Document ، برای زنجیرهسازی.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
removeViewer(emailAddress)
کاربر داده شده را از فهرست بینندگان و نظردهندگان Document حذف میکند. این روش در صورتی که کاربر ویرایشگر باشد، نه بیننده یا نظردهنده، هیچ تاثیری ندارد. این روش همچنین دسترسی کاربران به Document را در صورتی که متعلق به کلاسی از کاربران با دسترسی عمومی باشند، مسدود نمیکند - برای مثال، اگر Document با کل دامنه کاربر به اشتراک گذاشته شده باشد، یا اگر Document در یک درایو مشترک باشد که کاربر میتواند به آن دسترسی داشته باشد.
برای فایلهای درایو، این کار کاربر را از فهرست ویرایشگرها نیز حذف میکند.
پارامترها
| نام | نوع | توضیحات |
|---|---|---|
email Address | String | آدرس ایمیل کاربر برای حذف. |
بازگشت
Document — این Document برای زنجیر کردن.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
removeViewer(user)
کاربر داده شده را از فهرست بینندگان و نظردهندگان Document حذف میکند. این روش در صورتی که کاربر ویرایشگر باشد، نه بیننده، هیچ تاثیری ندارد. این روش همچنین دسترسی کاربران به Document را در صورتی که متعلق به کلاسی از کاربران با دسترسی عمومی باشند، مسدود نمیکند - برای مثال، اگر Document با کل دامنه کاربر به اشتراک گذاشته شده باشد، یا اگر Document در یک درایو مشترک باشد که کاربر میتواند به آن دسترسی داشته باشد.
برای فایلهای درایو، این کار کاربر را از فهرست ویرایشگرها نیز حذف میکند.
پارامترها
| نام | نوع | توضیحات |
|---|---|---|
user | User | نمایندهای از کاربر که باید حذف شود. |
بازگشت
Document — این Document برای زنجیر کردن.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
saveAndClose()
Document فعلی را ذخیره میکند. باعث میشود بهروزرسانیهای در حال انتظار پاک شده و اعمال شوند.
متد saveAndClose() به طور خودکار در پایان اجرای اسکریپت برای هر Document قابل ویرایش باز، فراخوانی میشود.
یک Document بسته شده قابل ویرایش نیست. از DocumentApp.openById() برای بازگشایی مجدد یک سند مشخص جهت ویرایش استفاده کنید.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
setActiveTab(tabId)
Tab انتخاب شده توسط کاربر در سند فعلی را به تبی با شناسه مشخص شده تنظیم میکند.
const doc = DocumentApp.getActiveDocument(); // Sets the user's selected tab by its ID. // TODO(developer): Replace the ID with your own. const tab = doc.setActiveTab('123abc');
پارامترها
| نام | نوع | توضیحات |
|---|---|---|
tab Id | String | شناسهی برگهای که قرار است فعال شود. |
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
setCursor(position)
مکاننمای کاربر را با توجه به Position تنظیم میکند. یک اسکریپت فقط میتواند به مکاننمای کاربری که اسکریپت را اجرا میکند دسترسی داشته باشد، و فقط در صورتی که اسکریپت به سند متصل باشد.
ارائه Position از یک Tab غیرفعال، تب فعال کاربر را تغییر میدهد.
const doc = DocumentApp.getActiveDocument(); const documentTab = doc.getActiveTab().asDocumentTab(); // Append a paragraph, then place the user's cursor after the first word of the // new paragraph. const paragraph = documentTab.getBody().appendParagraph('My new paragraph.'); const position = documentTab.newPosition(paragraph.getChild(0), 2); doc.setCursor(position);
پارامترها
| نام | نوع | توضیحات |
|---|---|---|
position | Position | مکان جدید مکاننما. |
بازگشت
Document — این Document ، برای زنجیرهسازی.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
setLanguage(languageCode)
کد زبان سند را تنظیم میکند. این زبانی است که در ویرایشگر سند در مسیر File > Language نشان داده شده است، که ممکن است زبان واقعی موجود در سند نباشد. برای دریافت تمام کدهای زبان معتبر getSupportedLanguageCodes() استفاده کنید.
پارامترها
| نام | نوع | توضیحات |
|---|---|---|
language Code | String | کد زبان. |
بازگشت
Document — این Document ، برای زنجیرهسازی.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
setName(name)
عنوان سند را تنظیم میکند.
پارامترها
| نام | نوع | توضیحات |
|---|---|---|
name | String | عنوان سند جدید. |
بازگشت
Document — سند فعلی.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
setSelection(range)
انتخاب کاربر در تب فعال را با توجه به یک Range تنظیم میکند. یک اسکریپت فقط میتواند به انتخاب کاربری که اسکریپت را اجرا میکند دسترسی داشته باشد، و فقط در صورتی که اسکریپت به سند متصل باشد.
const doc = DocumentApp.getActiveDocument(); const documentTab = doc.getActiveTab().asDocumentTab(); // Change the user's selection to a range that includes every table in the // document. const rangeBuilder = documentTab.newRange(); const tables = documentTab.getBody().getTables(); for (let i = 0; i < tables.length; i++) { rangeBuilder.addElement(tables[i]); } doc.setSelection(rangeBuilder.build());
پارامترها
| نام | نوع | توضیحات |
|---|---|---|
range | Range | محدوده جدید عناصر برای انتخاب. |
بازگشت
Document — این Document ، برای زنجیرهسازی.
مجوز
اسکریپتهایی که از این روش استفاده میکنند، نیاز به مجوز با یک یا چند مورد از حوزههای زیر دارند:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents