Class Document

سند

سندی که شامل یک یا چند شیء 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

addFooter()

اگر بخشی به عنوان پاورقی وجود نداشته باشد، آن را به اولین تب یا برای اسکریپت‌هایی که به یک سند متصل هستند، به تب فعال اضافه می‌کند. برای افزودن بخش پاورقی به هر تبی، از متد DocumentTab.addFooter() استفاده کنید.

// 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 footer to the document's active or first tab.
const footer = doc.addFooter();

// Sets the footer text to 'This is a footer.'
footer.setText('This is a footer');

بازگشت

FooterSection — بخش پاورقی برگه.

مجوز

اسکریپت‌هایی که از این روش استفاده می‌کنند، نیاز به مجوز با یک یا چند مورد از حوزه‌های زیر دارند:

  • 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() باشد.

بازگشت

NamedRangeNamedRange .

مجوز

اسکریپت‌هایی که از این روش استفاده می‌کنند، نیاز به مجوز با یک یا چند مورد از حوزه‌های زیر دارند:

  • 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 |nullTab فعال فعلی کاربر، یا 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 |nullBookmark با شناسه داده شده، یا اگر چنین 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()

لیست ویرایشگران این Document را دریافت می‌کند.

بازگشت

User[] — آرایه‌ای از کاربران با اجازه ویرایش.

مجوز

اسکریپت‌هایی که از این روش استفاده می‌کنند، نیاز به مجوز با یک یا چند مورد از حوزه‌های زیر دارند:

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

getFooter()

بخش پاورقی اولین تب یا برای اسکریپت‌هایی که به یک سند متصل هستند، بخش پاورقی تب فعال را بازیابی می‌کند. برای دریافت بخش پاورقی هر تب، از متد DocumentTab.getFooter() استفاده کنید.

// 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 footer and logs it to the console.
console.log(doc.getFooter().getText());

بازگشت

FooterSection |null — پاورقی برگه.

مجوز

اسکریپت‌هایی که از این روش استفاده می‌کنند، نیاز به مجوز با یک یا چند مورد از حوزه‌های زیر دارند:

  • https://www.googleapis.com/auth/documents.currentonly
  • https://www.googleapis.com/auth/documents

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 |nullNamedRange با شناسه داده شده، یا 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 |nullTab با شناسه مشخص شده، یا اگر چنین 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 در همان عنصر نگهدارنده.

بازگشت

PositionPosition جدید.

مجوز

اسکریپت‌هایی که از این روش استفاده می‌کنند، نیاز به مجوز با یک یا چند مورد از حوزه‌های زیر دارند:

  • 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