مستند يحتوي على عنصر واحد أو أكثر من عناصر 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 | تضيف هذه الدالة Bookmark إلى علامة التبويب الأولى أو إلى علامة التبويب النشطة في النصوص البرمجية المرتبطة بمستند، وذلك في Position المحدّد. |
add | Document | تضيف هذه الطريقة المستخدم المحدّد إلى قائمة المحرّرين في Document. |
add | Document | تضيف هذه الطريقة المستخدم المحدّد إلى قائمة المحرّرين في Document. |
add | Document | تضيف هذه الطريقة مصفوفة المستخدمين المحدّدة إلى قائمة المحرّرين في Document. |
add | Footer | تضيف هذه السمة قسم تذييل، إذا لم يكن هناك قسم، إلى علامة التبويب الأولى أو، بالنسبة إلى النصوص البرمجية المرتبطة بمستند، إلى علامة التبويب النشطة. |
add | Header | تضيف هذه السمة قسم عنوان، إذا لم يكن هناك قسم، إلى علامة التبويب الأولى أو، بالنسبة إلى النصوص البرمجية المرتبطة بمستند، إلى علامة التبويب النشطة. |
add | Named | تضيف هذه السمة Named، وهي Range لها اسم ورقم تعريف يمكن استخدامهما
في وقت لاحق لاسترداد البيانات، وذلك في علامة التبويب الأولى أو علامة التبويب النشطة في النصوص البرمجية المرتبطة بمستند. |
add | Document | تضيف هذه الطريقة المستخدم المحدّد إلى قائمة المشاهدين في Document. |
add | Document | تضيف هذه الطريقة المستخدم المحدّد إلى قائمة المشاهدين في Document. |
add | Document | تضيف هذه الطريقة مصفوفة المستخدمين المحدّدة إلى قائمة المشاهدين في Document. |
get | Tab|null | تعرض هذه الدالة Tab المستخدم النشط حاليًا في المستند. |
get | Blob | يسترد محتوى Document الحالي ككائن ثنائي كبير من النوع المحدّد. |
get | Blob | يسترد هذا الإجراء محتوى Document الحالي ككائن ثنائي كبير. |
get | Body | تعرض هذه الدالة Body لعلامة التبويب الأولى، أو Document لعلامة التبويب النشطة في النصوص البرمجية المرتبطة بمستند. |
get | Bookmark|null | تعرض Bookmark الذي يحمل المعرّف المحدّد في علامة التبويب الأولى أو علامة التبويب النشطة في النصوص البرمجية المرتبطة بمستند. |
get | Bookmark[] | تعرض هذه الدالة جميع عناصر Bookmark في علامة التبويب الأولى أو علامة التبويب النشطة في حال كانت النصوص البرمجية مرتبطة بمستند. |
get | Position|null | تعرض هذه الطريقة موضع مؤشر المستخدم في علامة التبويب النشطة. |
get | User[] | تعرض هذه الطريقة قائمة بالمحرّرين لـ Document. |
get | Footer | تعرض هذه الدالة قسم التذييل لعلامة التبويب الأولى أو قسم التذييل لعلامة التبويب النشطة في النصوص البرمجية المرتبطة بمستند. |
get | Footnote[] | يستردّ هذا الرمز جميع عناصر Footnote في نص علامة التبويب الأولى أو، بالنسبة إلى النصوص البرمجية المرتبطة بمستند، نص علامة التبويب النشطة. |
get | Header | تعرض هذه الدالة قسم العنوان لعلامة التبويب الأولى أو قسم العنوان لعلامة التبويب النشطة في النصوص البرمجية المرتبطة بمستند. |
get | String | تعرض هذه الطريقة المعرّف الفريد للمستند. |
get | String|null | تعرض هذه الطريقة رمز لغة المستند. |
get | String | تعرض هذه السمة عنوان المستند. |
get | Named | تعرض Named الذي يحمل المعرّف المحدّد في علامة التبويب الأولى أو علامة التبويب النشطة في النصوص البرمجية المرتبطة بمستند. |
get | Named | تعرض هذه الدالة جميع عناصر Named في علامة التبويب الأولى أو علامة التبويب النشطة في حال كانت النصوص البرمجية مرتبطة بمستند. |
get | Named | تعرض هذه الدالة جميع عناصر Named التي تحمل الاسم المحدّد في علامة التبويب الأولى، أو علامة التبويب النشطة في حال كانت النصوص البرمجية مرتبطة بمستند. |
get | Range|null | تعرض هذه الدالة اختيار المستخدم في علامة التبويب النشطة. |
get | String[] | تعرض هذه الطريقة جميع رموز اللغات المتوافقة مع ملفات "مستندات Google". |
get | Tab|null | تعرض هذه الطريقة Tab بالمعرّف المحدّد. |
get | Tab[] | تعرض هذه السمة كل عناصر Tab غير المتداخلة التي تشكّل جزءًا من المستند. |
get | String | تعرض هذه السمة عنوان URL للوصول إلى المستند الحالي. |
get | User[] | تعرض هذه الطريقة قائمة بالمشاهدين والمعلّقين على Document. |
new | Position | تنشئ هذه السمة Position جديدًا، وهو مرجع إلى موقع في علامة التبويب، بالنسبة إلى عنصر معيّن في علامة التبويب الأولى أو، بالنسبة إلى النصوص البرمجية المرتبطة بمستند، علامة التبويب النشطة. |
new | Range | تنشئ هذه الدالة أداة إنشاء تُستخدَم لإنشاء عناصر Range من عناصر علامات التبويب في علامة التبويب الأولى أو، بالنسبة إلى النصوص البرمجية المرتبطة بمستند، علامة التبويب النشطة. |
remove | Document | تزيل هذه الطريقة المستخدم المحدّد من قائمة المحرّرين في Document. |
remove | Document | تزيل هذه الطريقة المستخدم المحدّد من قائمة المحرّرين في Document. |
remove | Document | تزيل هذه الطريقة المستخدم المحدّد من قائمة المشاهدين والمعلّقين على Document. |
remove | Document | تزيل هذه الطريقة المستخدم المحدّد من قائمة المشاهدين والمعلّقين على Document. |
save | void | يحفظ هذا الزر Document الحالي. |
set | void | يضبط هذا الإجراء Tab الذي اختاره المستخدم في المستند الحالي على علامة التبويب التي تحمل المعرّف المحدّد. |
set | Document | تضبط هذه السمة موضع مؤشر المستخدم، مع الأخذ في الاعتبار Position. |
set | Document | تضبط هذه السمة رمز لغة المستند. |
set | Document | تضبط هذه السمة عنوان المستند. |
set | 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 | 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 | 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 | اسم النطاق، ولا يشترط أن يكون فريدًا، ويجب أن يتراوح طوله بين حرف واحد و256 حرفًا. |
range | Range | نطاق العناصر المطلوب ربطها بالاسم، ويمكن أن يكون النطاق التحديد النشط أو نتيجة بحث أو يتم إنشاؤه يدويًا باستخدام new. |
الإرجاع
NamedRange — NamedRange
التفويض
تتطلّب النصوص البرمجية التي تستخدم هذه الطريقة الحصول على إذن باستخدام نطاق واحد أو أكثر من النطاقات التالية:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
addViewer(emailAddress)
تضيف هذه الطريقة المستخدم المحدّد إلى قائمة المشاهدين في Document. إذا كان المستخدم مُدرجًا
في قائمة المحرّرين، لن يكون لهذا الإجراء أي تأثير.
المَعلمات
| الاسم | النوع | الوصف |
|---|---|---|
email | 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 | 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 الحالي ككائن ثنائي كبير من النوع المحدّد.
// 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 | 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('123abc'); // 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('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). تعرض هذه الطريقة 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('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 الذي يحمل رقم التعريف المحدّد، أو 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('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
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()
تعرض هذه الطريقة رمز لغة المستند. هذه هي اللغة المعروضة في ملف > اللغة في محرر المستندات، وقد لا تكون هي اللغة الفعلية التي يتضمّنها المستند.
الإرجاع
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). تعرض هذه الطريقة null إذا لم يكن هناك NamedRange في علامة التبويب. ليست الأسماء فريدة بالضرورة، حتى في علامات التبويب المختلفة، فقد تتشارك عدة نطاقات مختلفة في علامة التبويب نفسها الاسم نفسه، تمامًا مثل فئة في 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".
الإرجاع
String[]: مصفوفة من رموز اللغة
التفويض
تتطلّب النصوص البرمجية التي تستخدم هذه الطريقة الحصول على إذن باستخدام نطاق واحد أو أكثر من النطاقات التالية:
-
https://www.googleapis.com/auth/documents.currentonly -
https://www.googleapis.com/auth/documents
getTab(tabId)
تعرض هذه الطريقة Tab بالمعرّف المحدّد. تعرض هذه الطريقة null إذا لم يكن هناك Tab. يمكن الوصول إلى علامات التبويب في أي مستوى دمج.
المَعلمات
| الاسم | النوع | الوصف |
|---|---|---|
tab | String | معرّف علامة التبويب المطلوب الحصول عليها |
الإرجاع
Tab|null: 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 للوصول إلى المستند الحالي.
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 من عناصر علامات التبويب في علامة التبويب الأولى أو، بالنسبة إلى النصوص البرمجية المرتبطة بمستند، علامة التبويب النشطة. لإنشاء أداة إنشاء تُستخدَم لإنشاء عناصر DocumentRange من عناصر علامة التبويب في أي علامة تبويب، استخدِم الطريقة 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 في مساحة تخزين سحابي مشتركة يمكن للمستخدم الوصول إليها.
بالنسبة إلى ملفات Drive، يؤدي ذلك أيضًا إلى إزالة المستخدم من قائمة المشاهدين.
المَعلمات
| الاسم | النوع | الوصف |
|---|---|---|
email | 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 مع النطاق بأكمله للمستخدم، أو إذا كان Document في مساحة تخزين سحابي مشتركة يمكن للمستخدم الوصول إليها.
بالنسبة إلى ملفات Drive، يؤدي ذلك أيضًا إلى إزالة المستخدم من قائمة المحرّرين.
المَعلمات
| الاسم | النوع | الوصف |
|---|---|---|
email | 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('123abc');
المَعلمات
| الاسم | النوع | الوصف |
|---|---|---|
tab | 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)
تضبط هذه السمة رمز لغة المستند. هذه هي اللغة المعروضة في ملف > اللغة في محرر المستندات، وقد لا تكون هي اللغة الفعلية التي يتضمّنها المستند. استخدِم getSupportedLanguageCodes() للحصول على جميع رموز اللغة الصالحة.
المَعلمات
| الاسم | النوع | الوصف |
|---|---|---|
language | 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