مستند يحتوي على كائن Tab
واحد أو أكثر، يحتوي كلٌ منه على نص منسق
والعناصر مثل الجداول والقوائم.
يمكن فتح المستندات أو إنشاؤها باستخدام DocumentApp
.
// Open a document by ID. var doc = DocumentApp.openById("<my-id>"); // Create and open a document. doc = DocumentApp.create("Document Title");
تعمل على الطرق في الفئة Document
التي يمكنها الوصول إلى المحتوى النصي وتعديله مباشرةً
إما علامة التبويب النشطة (في النصوص البرمجية المرتبطة بـ
مستند معين) أو علامة التبويب الأولى (إذا لم تكن علامة التبويب النشطة متاحة). تعتمد النصوص على
يمكن نقل هذه الطرق (على سبيل المثال، getBody()
) إلى علامات التبويب المتاحة باستخدام
getTabs()
ثم Tab.asDocumentTab()
.
الطُرق
الطريقة | نوع الإرجاع | وصف قصير |
---|---|---|
addBookmark(position) | Bookmark | إضافة Bookmark في علامة التبويب Position المحددة إلى علامة التبويب الأولى، أو بالنسبة إلى النصوص البرمجية التي تكون
مرتبط بمستند، علامة التبويب النشطة. |
addEditor(emailAddress) | Document | يؤدي هذا الإجراء إلى إضافة المستخدم المحدّد إلى قائمة محرّري Document . |
addEditor(user) | Document | يؤدي هذا الإجراء إلى إضافة المستخدم المحدّد إلى قائمة محرّري Document . |
addEditors(emailAddresses) | Document | لإضافة مصفوفة معيّنة من المستخدمين إلى قائمة المحرِّرين في Document |
addFooter() | FooterSection | لإضافة قسم تذييل، في حال عدم وجوده، إلى علامة التبويب الأولى أو علامة التبويب النشطة بالنسبة إلى النصوص البرمجية المرتبطة بمستند. |
addHeader() | HeaderSection | يضيف قسم رأس، في حال عدم وجوده، إلى علامة التبويب الأولى أو علامة التبويب النشطة بالنسبة إلى النصوص البرمجية المرتبطة بمستند. |
addNamedRange(name, range) | NamedRange | إضافة NamedRange ، وهو Range الذي يحمل اسمًا ورقم تعريف يمكن استخدامهما
استردادها لاحقًا، في علامة التبويب الأولى أو في علامة التبويب النشطة بالنسبة إلى النصوص البرمجية المرتبطة بمستند. |
addViewer(emailAddress) | Document | لإضافة المستخدم المحدّد إلى قائمة مشاهدي Document |
addViewer(user) | Document | لإضافة المستخدم المحدّد إلى قائمة مشاهدي Document |
addViewers(emailAddresses) | Document | تتم إضافة مصفوفة المستخدمين المحدّدة إلى قائمة مشاهدي Document . |
getActiveTab() | Tab | الحصول على رمز Tab النشط حاليًا للمستخدم في المستند |
getAs(contentType) | Blob | لاسترداد محتوى Document الحالي ككائن ثنائي كبير من النوع المحدّد. |
getBlob() | Blob | لاسترداد محتوى Document الحالي في شكل كائن ثنائي كبير. |
getBody() | Body | لاسترداد Body لعلامة التبويب الأولى، أو DocumentBodySection الخاص بعلامة التبويب النشطة، بالنسبة إلى النصوص البرمجية المرتبطة بمستند. |
getBookmark(id) | Bookmark | يحصل على Bookmark مع المعرّف المحدّد في علامة التبويب الأولى، أو علامة التبويب النشطة بالنسبة إلى النصوص البرمجية المرتبطة بمستند. |
getBookmarks() | Bookmark[] | للحصول على جميع كائنات Bookmark في علامة التبويب الأولى، أو علامة التبويب النشطة بالنسبة إلى النصوص البرمجية المرتبطة بمستند. |
getCursor() | Position | الحصول على مؤشر المستخدم في علامة التبويب النشطة |
getEditors() | User[] | يحصل على قائمة محرّري Document هذا. |
getFooter() | FooterSection | استرداد قسم تذييل علامة التبويب الأولى أو تذييل علامة التبويب النشطة بالنسبة إلى النصوص البرمجية المرتبطة بمستند . |
getFootnotes() | Footnote[] | لاسترداد جميع عناصر Footnote في النص الأساسي لعلامة التبويب الأولى، أو النص الأساسي لعلامة التبويب النشطة المرتبطة بمستند. |
getHeader() | HeaderSection | يسترد قسم رأس علامة التبويب الأولى، أو عنوان علامة التبويب النشطة، بالنسبة إلى النصوص البرمجية المرتبطة بمستند، . |
getId() | String | لاسترداد المعرف الفريد للمستند. |
getLanguage() | String | الحصول على رمز لغة المستند |
getName() | String | استرداد عنوان المستند. |
getNamedRangeById(id) | NamedRange | يحصل على NamedRange مع المعرّف المحدّد في علامة التبويب الأولى، أو علامة التبويب النشطة بالنسبة إلى النصوص البرمجية المرتبطة بمستند. |
getNamedRanges() | NamedRange[] | للحصول على جميع كائنات NamedRange في علامة التبويب الأولى، أو علامة التبويب النشطة بالنسبة إلى النصوص البرمجية المرتبطة بمستند. |
getNamedRanges(name) | NamedRange[] | الحصول على جميع عناصر NamedRange بالاسم المحدّد في علامة التبويب الأولى، أو بالنسبة إلى النصوص البرمجية التي
مرتبطة بمستند، بعلامة التبويب النشطة. |
getSelection() | Range | الحصول على اختيار المستخدم في علامة التبويب "النشطة" |
getSupportedLanguageCodes() | String[] | الحصول على جميع رموز اللغات المتوافقة في ملفات "مستندات Google" |
getTab(tabId) | Tab | الحصول على Tab مع المعرّف المحدّد |
getTabs() | Tab[] | الحصول على جميع Tab غير المتداخلة التي تشكّل جزءًا من المستند. |
getUrl() | String | لاسترداد عنوان URL للوصول إلى المستند الحالي. |
getViewers() | User[] | الحصول على قائمة المشاهدين والمعلِّقين لهذا Document |
newPosition(element, offset) | Position | تنشئ Position جديدة، وهي إشارة إلى موقع جغرافي في علامة التبويب، بالنسبة إلى
عنصر محدد في علامة التبويب الأولى أو علامة التبويب النشطة بالنسبة إلى النصوص البرمجية المرتبطة بمستند. |
newRange() | RangeBuilder | تنشئ أداة إنشاء تُستخدم لإنشاء كائنات Range من عناصر علامة التبويب في
علامة التبويب الأولى أو بالنسبة إلى النصوص البرمجية المرتبطة بـ
المستند، علامة التبويب النشطة. |
removeEditor(emailAddress) | Document | إزالة المستخدم المحدّد من قائمة محرِّري Document |
removeEditor(user) | Document | إزالة المستخدم المحدّد من قائمة محرِّري Document |
removeViewer(emailAddress) | Document | لإزالة المستخدم المحدّد من قائمة المشاهدين والمعلِّقين على Document . |
removeViewer(user) | Document | لإزالة المستخدم المحدّد من قائمة المشاهدين والمعلِّقين على Document . |
saveAndClose() | void | يتم حفظ قيمة Document الحالية. |
setActiveTab(tabId) | void | تضبط هذه السياسة خيار Tab الذي اختاره المستخدم في المستند الحالي على علامة التبويب التي تتضمّن المعرّف المحدّد. |
setCursor(position) | Document | تضبط هذه السياسة مؤشر المستخدم مع تحديد Position . |
setLanguage(languageCode) | Document | لضبط رمز لغة المستند. |
setName(name) | Document | لضبط عنوان المستند. |
setSelection(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(DOCUMENT_ID); // 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
. إذا كان المستخدم قد
في قائمة المشاهدين، تؤدي هذه الطريقة إلى إزالة المستخدم من قائمة المشاهدين.
المعلمات
الاسم | النوع | الوصف |
---|---|---|
emailAddress | 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
إذا كانت أي من
كان المستخدمون مدرجين بالفعل في قائمة المشاهدين، تُدرجهم هذه الطريقة في قائمة المشاهدين
المشاهدون.
المعلمات
الاسم | النوع | الوصف |
---|---|---|
emailAddresses | 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(DOCUMENT_ID); // 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. var doc = DocumentApp.getActiveDocument(); var rangeBuilder = doc.newRange(); var tables = doc.getBody().getTables(); for (var 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 | اسم النطاق، ولا يلزم أن يكون فريدًا؛ يجب أن تكون أسماء النطاقات بين حرف واحد و256 حرفًا. |
range | Range | نطاق العناصر المراد ربطها بالاسم؛ يمكن أن يكون النطاق الخيار النشط أو نتيجة بحث أو تم إنشاؤه يدويًا باستخدام newRange() . |
الإرجاع
NamedRange
— NamedRange
التفويض
تتطلب النصوص البرمجية التي تستخدم هذه الطريقة إذنًا باستخدام واحد أو أكثر من النطاقات التالية:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
addViewer(emailAddress)
لإضافة المستخدم المحدّد إلى قائمة مشاهدي Document
إذا كان المستخدم قد
في قائمة المحرّرين، ليس لهذه الطريقة أي تأثير.
المعلمات
الاسم | النوع | الوصف |
---|---|---|
emailAddress | 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
. إذا كانت أي من
كان المستخدمون مُدرجين من قبل في قائمة المحرّرين، وليس لهذه الطريقة أي تأثير لهم.
المعلمات
الاسم | النوع | الوصف |
---|---|---|
emailAddresses | 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
- السمة Tab
النشطة حاليًا للمستخدم، أو null
إذا لم يكن النص البرمجي مرتبطًا بـ
المستند.
التفويض
تتطلب النصوص البرمجية التي تستخدم هذه الطريقة إذنًا باستخدام واحد أو أكثر من النطاقات التالية:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getAs(contentType)
لاسترداد محتوى Document
الحالي ككائن ثنائي كبير من النوع المحدّد.
// 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(DOCUMENT_ID); // 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());
المعلمات
الاسم | النوع | الوصف |
---|---|---|
contentType | String | نوع MIME المطلوب التحويل إليه، يمكنك استخدام 'application/pdf' و'text/markdown' . |
الإرجاع
Blob
— المستند الحالي إلى كائن ثنائي كبير
getBlob()
لاسترداد محتوى Document
الحالي في شكل كائن ثنائي كبير.
// 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(DOCUMENT_ID); // Retrieves the current document's contents as a blob and logs it to the console. console.log(doc.getBlob().getContentType());
الإرجاع
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(DOCUMENT_ID); // 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)
. تعرض هذه الطريقة الدالة null
في حال عدم توفّر السمة Bookmark
في علامة التبويب.
// 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(DOCUMENT_ID); // 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
— Bookmark
مع رقم التعريف المحدد أو null
إذا لم يكن ذلك هو Bookmark
في علامة التبويب هذه.
التفويض
تتطلب النصوص البرمجية التي تستخدم هذه الطريقة إذنًا باستخدام واحد أو أكثر من النطاقات التالية:
-
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(DOCUMENT_ID); // 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. var 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. var 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
إذا لم يكن لدى المستخدم
المؤشر على علامة التبويب أو إذا لم يكن البرنامج النصي مرتبطًا بالمستند.
التفويض
تتطلب النصوص البرمجية التي تستخدم هذه الطريقة إذنًا باستخدام واحد أو أكثر من النطاقات التالية:
-
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(DOCUMENT_ID); // 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(DOCUMENT_ID); // Gets the text of the active or first tab's header and logs it to the console. console.log(doc.getHeader().getText());
الإرجاع
HeaderSection
— عنوان علامة التبويب
التفويض
تتطلب النصوص البرمجية التي تستخدم هذه الطريقة إذنًا باستخدام واحد أو أكثر من النطاقات التالية:
-
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()
الحصول على رمز لغة المستند هذه هي اللغة التي تظهر في قسم ملف محرّر المستندات في > اللغة، التي قد لا تكون اللغة الفعلية التي يحتوي عليها المستند.
الإرجاع
String
— لغة المستند أو 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)
. تعرض هذه الطريقة الدالة null
في حال عدم توفّر السمة NamedRange
في علامة التبويب. الأسماء
ليست بالضرورة فريدة، حتى على مستوى علامات التبويب المختلفة قد تتغير عدة نطاقات مختلفة في علامة التبويب نفسها
يشتركان في الاسم نفسه، إلى حد كبير مثل فئة في HTML. في المقابل، تكون المعرّفات فريدة داخل علامة التبويب،
مثل المعرّف في HTML.
المعلمات
الاسم | النوع | الوصف |
---|---|---|
id | String | معرّف النطاق، وهو فريد داخل علامة التبويب. |
الإرجاع
NamedRange
— 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. var selection = DocumentApp.getActiveDocument().getSelection(); if (selection) { var elements = selection.getRangeElements(); DocumentApp.getUi().alert('Number of selected elements: ' + elements.length); } else { DocumentApp.getUi().alert('Nothing is selected.'); }
الإرجاع
Range
— تمثيل لاختيار المستخدم أو null
إذا لم يكن لدى المستخدم
أي شيء محدد في علامة التبويب، إذا تم تحديد نهاية الفقرة فقط، إذا تم فقط تحديد نهاية
تحديد كل فقرة وسطر جديد، أو إذا لم يكن النص البرمجي مرتبطًا بالمستند.
التفويض
تتطلب النصوص البرمجية التي تستخدم هذه الطريقة إذنًا باستخدام واحد أو أكثر من النطاقات التالية:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getSupportedLanguageCodes()
الحصول على جميع رموز اللغات المتوافقة في ملفات "مستندات Google"
الإرجاع
String[]
— مصفوفة من رموز اللغات.
التفويض
تتطلب النصوص البرمجية التي تستخدم هذه الطريقة إذنًا باستخدام واحد أو أكثر من النطاقات التالية:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getTab(tabId)
الحصول على Tab
مع المعرّف المحدّد تعرض هذه الطريقة القيمة null
في حال عدم توفّر Tab
. يمكن الوصول إلى علامات التبويب على أي مستوى تداخل.
المعلمات
الاسم | النوع | الوصف |
---|---|---|
tabId | String | رقم تعريف علامة التبويب التي تريد الحصول عليها. |
الإرجاع
Tab
— السمة Tab
التي تحمل المعرّف المحدّد، أو null
في حال عدم توفّر السمة Tab
هذه.
التفويض
تتطلب النصوص البرمجية التي تستخدم هذه الطريقة إذنًا باستخدام واحد أو أكثر من النطاقات التالية:
-
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 للوصول إلى المستند الحالي.
var 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. var doc = DocumentApp.getActiveDocument(); var paragraph = doc.getBody().appendParagraph('My new paragraph.'); var 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
من عناصر علامة التبويب في
علامة التبويب الأولى أو بالنسبة إلى النصوص البرمجية المرتبطة بـ
المستند، علامة التبويب النشطة. لإنشاء أداة إنشاء تُستخدم لإنشاء كائنات DocumentRange
من عناصر Tab في أي علامة تبويب، استخدِم الطريقة DocumentTab.newRange()
.
// Change the user's selection to a range that includes every table in the active tab. var doc = DocumentApp.getActiveDocument(); var rangeBuilder = doc.newRange(); var tables = doc.getBody().getTables(); for (var 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
في مساحة تخزين سحابي مشتركة يمكن للمستخدم الوصول إليها.
وبالنسبة إلى ملفات Drive، سيؤدي ذلك أيضًا إلى إزالة المستخدم من قائمة المشاهدين.
المعلمات
الاسم | النوع | الوصف |
---|---|---|
emailAddress | String | عنوان البريد الإلكتروني للمستخدم المطلوب إزالته. |
الإرجاع
Document
— هذا Document
، للسلسلة.
التفويض
تتطلب النصوص البرمجية التي تستخدم هذه الطريقة إذنًا باستخدام واحد أو أكثر من النطاقات التالية:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
removeEditor(user)
إزالة المستخدم المحدّد من قائمة محرِّري Document
هذه الطريقة لا
منع المستخدمين من الوصول إلى "Document
" إذا كانوا ينتمون إلى فئة من المستخدمين لديهم
إذن بالوصول العام: على سبيل المثال، إذا تمت مشاركة Document
مع كامل
أو إذا كان Document
في مساحة تخزين سحابي مشتركة يمكن للمستخدم الوصول إليها.
وبالنسبة إلى ملفات Drive، سيؤدي ذلك أيضًا إلى إزالة المستخدم من قائمة المشاهدين.
المعلمات
الاسم | النوع | الوصف |
---|---|---|
user | User | تمثيل للمستخدم المطلوب إزالته |
الإرجاع
Document
— هذا Document
، للسلسلة.
التفويض
تتطلب النصوص البرمجية التي تستخدم هذه الطريقة إذنًا باستخدام واحد أو أكثر من النطاقات التالية:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
removeViewer(emailAddress)
لإزالة المستخدم المحدّد من قائمة المشاهدين والمعلِّقين على Document
. هذا النمط
إذا كان المستخدم محررًا وليس مشاهدًا أو معلِّقًا. هذه الطريقة أيضًا
لا تحظر المستخدمين من الوصول إلى Document
إذا كانوا ينتمون إلى فئة من المستخدمين
إذن الوصول العام: على سبيل المثال، إذا تمت مشاركة Document
مع عنوان URL للمستخدم
النطاق بالكامل، أو إذا كان Document
في مساحة تخزين سحابي مشتركة يمكن للمستخدم الوصول إليها.
بالنسبة إلى ملفات Drive، يؤدي هذا الإجراء أيضًا إلى إزالة المستخدم من قائمة المحرِّرين.
المعلمات
الاسم | النوع | الوصف |
---|---|---|
emailAddress | String | عنوان البريد الإلكتروني للمستخدم المطلوب إزالته. |
الإرجاع
Document
— Document
هذا للسلسلة.
التفويض
تتطلب النصوص البرمجية التي تستخدم هذه الطريقة إذنًا باستخدام واحد أو أكثر من النطاقات التالية:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
removeViewer(user)
لإزالة المستخدم المحدّد من قائمة المشاهدين والمعلِّقين على Document
. هذا النمط
إذا كان المستخدم محررًا وليس مُشاهدًا. ولا تحظر هذه الطريقة أيضًا
وصول المستخدمين إلى Document
إذا كانوا ينتمون لفئة من المستخدمين لديهم بيانات عامة
إمكانية الوصول - على سبيل المثال، إذا تمت مشاركة Document
مع النطاق الكامل للمستخدم، أو
إذا كانت Document
في مساحة تخزين سحابي مشتركة يمكن للمستخدم الوصول إليها.
بالنسبة إلى ملفات Drive، يؤدي هذا الإجراء أيضًا إلى إزالة المستخدم من قائمة المحرِّرين.
المعلمات
الاسم | النوع | الوصف |
---|---|---|
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(TAB_ID);
المعلمات
الاسم | النوع | الوصف |
---|---|---|
tabId | String | رقم تعريف علامة التبويب المطلوب ضبطها على أنّها نشطة. |
التفويض
تتطلب النصوص البرمجية التي تستخدم هذه الطريقة إذنًا باستخدام واحد أو أكثر من النطاقات التالية:
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setCursor(position)
تضبط هذه السياسة مؤشر المستخدم مع تحديد Position
. ولا يمكن للنص البرمجي الوصول إلا إلى مؤشر
المستخدم الذي يشغّل النص البرمجي وأيضًا إذا كان النص البرمجي مرتبطًا بالمستند
ويؤدي توفير Position
من عنصر Tab
غير نشط إلى تبديل علامة التبويب النشِطة لدى المستخدم.
var doc = DocumentApp.getActiveDocument(); var documentTab = doc.getActiveTab().asDocumentTab(); // Append a paragraph, then place the user's cursor after the first word of the new paragraph. var paragraph = documentTab.getBody().appendParagraph('My new paragraph.'); var 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)
لضبط رمز لغة المستند. هذه هي اللغة التي تظهر في قسم ملف محرّر المستندات في
> اللغة، التي قد لا تكون اللغة الفعلية التي يحتوي عليها المستند. استخدِم getSupportedLanguageCodes()
للحصول على جميع رموز اللغات الصالحة.
المعلمات
الاسم | النوع | الوصف |
---|---|---|
languageCode | 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
. يمكن للنص البرمجي فقط
الوصول إلى مجموعة تحديد المستخدم الذي يشغِّل النص البرمجي وأيضًا إذا كان النص البرمجي مرتبطًا بالمستند.
var doc = DocumentApp.getActiveDocument(); var documentTab = doc.getActiveTab().asDocumentTab(); // Change the user's selection to a range that includes every table in the document. var rangeBuilder = documentTab.newRange(); var tables = documentTab.getBody().getTables(); for (var 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