Class HorizontalRule
จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน
บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ
เอกสารประกอบโดยละเอียด
copy()
แสดงผลสำเนาที่แยกออกและแบบเจาะลึกขององค์ประกอบปัจจุบัน
ระบบจะคัดลอกองค์ประกอบย่อยทั้งหมดที่อยู่ในองค์ประกอบนั้นด้วย องค์ประกอบใหม่ไม่มีองค์ประกอบหลัก
รีเทิร์น
HorizontalRule
— สำเนาใหม่
การให้สิทธิ์
สคริปต์ที่ใช้วิธีการนี้ต้องได้รับอนุญาตด้วยขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getAttributes()
ดึงข้อมูลแอตทริบิวต์ขององค์ประกอบ
ผลลัพธ์ที่ได้คือออบเจ็กต์ที่มีพร็อพเพอร์ตี้สำหรับแอตทริบิวต์องค์ประกอบที่ถูกต้องแต่ละรายการ โดยที่ชื่อพร็อพเพอร์ตี้แต่ละรายการสอดคล้องกับรายการในการแจกแจง DocumentApp.Attribute
const doc = DocumentApp.getActiveDocument();
const documentTab = doc.getActiveTab().asDocumentTab();
const body = documentTab.getBody();
// Append a styled paragraph.
const par = body.appendParagraph('A bold, italicized paragraph.');
par.setBold(true);
par.setItalic(true);
// Retrieve the paragraph's attributes.
const atts = par.getAttributes();
// Log the paragraph attributes.
for (const att in atts) {
Logger.log(`${att}:${atts[att]}`);
}
รีเทิร์น
Object
— แอตทริบิวต์ขององค์ประกอบ
การให้สิทธิ์
สคริปต์ที่ใช้วิธีการนี้ต้องได้รับอนุญาตด้วยขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getNextSibling()
ดึงข้อมูลองค์ประกอบพี่น้องถัดไปขององค์ประกอบ
องค์ประกอบถัดไปมีองค์ประกอบหลักเดียวกันและอยู่หลังองค์ประกอบปัจจุบัน
รีเทิร์น
Element
— องค์ประกอบระดับถัดไป
การให้สิทธิ์
สคริปต์ที่ใช้วิธีการนี้ต้องได้รับอนุญาตด้วยขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getParent()
ดึงข้อมูลองค์ประกอบหลักขององค์ประกอบ
องค์ประกอบหลักมีองค์ประกอบปัจจุบัน
รีเทิร์น
ContainerElement
— องค์ประกอบหลัก
การให้สิทธิ์
สคริปต์ที่ใช้วิธีการนี้ต้องได้รับอนุญาตด้วยขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getPreviousSibling()
ดึงข้อมูลองค์ประกอบพี่น้องก่อนหน้าขององค์ประกอบ
องค์ประกอบระดับข้างเคียงก่อนหน้ามีองค์ประกอบหลักเดียวกันและอยู่ก่อนองค์ประกอบปัจจุบัน
รีเทิร์น
Element
— องค์ประกอบระดับข้างเคียงก่อนหน้า
การให้สิทธิ์
สคริปต์ที่ใช้วิธีการนี้ต้องได้รับอนุญาตด้วยขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
getType()
ดึงข้อมูล ElementType
ขององค์ประกอบ
ใช้ getType()
เพื่อระบุประเภทที่แน่นอนขององค์ประกอบหนึ่งๆ
const doc = DocumentApp.getActiveDocument();
const documentTab = doc.getActiveTab().asDocumentTab();
const body = documentTab.getBody();
// Obtain the first element in the active tab's body.
const firstChild = body.getChild(0);
// Use getType() to determine the element's type.
if (firstChild.getType() === DocumentApp.ElementType.PARAGRAPH) {
Logger.log('The first element is a paragraph.');
} else {
Logger.log('The first element is not a paragraph.');
}
รีเทิร์น
ElementType
— ประเภทองค์ประกอบ
การให้สิทธิ์
สคริปต์ที่ใช้วิธีการนี้ต้องได้รับอนุญาตด้วยขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
isAtDocumentEnd()
ระบุว่าองค์ประกอบอยู่ท้าย Document
หรือไม่
รีเทิร์น
Boolean
— องค์ประกอบอยู่ที่ส่วนท้ายของแท็บหรือไม่
การให้สิทธิ์
สคริปต์ที่ใช้วิธีการนี้ต้องได้รับอนุญาตด้วยขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
removeFromParent()
นำองค์ประกอบออกจากองค์ประกอบหลัก
const doc = DocumentApp.getActiveDocument();
const documentTab = doc.getActiveTab().asDocumentTab();
const body = documentTab.getBody();
// Remove all images in the active tab's body.
const imgs = body.getImages();
for (let i = 0; i < imgs.length; i++) {
imgs[i].removeFromParent();
}
รีเทิร์น
HorizontalRule
— องค์ประกอบที่ถูกนำออก
การให้สิทธิ์
สคริปต์ที่ใช้วิธีการนี้ต้องได้รับอนุญาตด้วยขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
setAttributes(attributes)
ตั้งค่าแอตทริบิวต์ขององค์ประกอบ
พารามิเตอร์แอตทริบิวต์ที่ระบุต้องเป็นออบเจ็กต์ที่ชื่อพร็อพเพอร์ตี้แต่ละรายการเป็นรายการในลิสต์DocumentApp.Attribute
และค่าพร็อพเพอร์ตี้แต่ละรายการเป็นค่าใหม่ที่จะใช้
const doc = DocumentApp.getActiveDocument();
const documentTab = doc.getActiveTab().asDocumentTab();
const body = documentTab.getBody();
// Define a custom paragraph style.
const style = {};
style[DocumentApp.Attribute.HORIZONTAL_ALIGNMENT] =
DocumentApp.HorizontalAlignment.RIGHT;
style[DocumentApp.Attribute.FONT_FAMILY] = 'Calibri';
style[DocumentApp.Attribute.FONT_SIZE] = 18;
style[DocumentApp.Attribute.BOLD] = true;
// Append a plain paragraph.
const par = body.appendParagraph('A paragraph with custom style.');
// Apply the custom style.
par.setAttributes(style);
พารามิเตอร์
ชื่อ | ประเภท | คำอธิบาย |
attributes | Object | แอตทริบิวต์ขององค์ประกอบ |
รีเทิร์น
HorizontalRule
— องค์ประกอบปัจจุบัน
การให้สิทธิ์
สคริปต์ที่ใช้วิธีการนี้ต้องได้รับอนุญาตด้วยขอบเขตต่อไปนี้อย่างน้อย 1 รายการ
-
https://www.googleapis.com/auth/documents.currentonly
-
https://www.googleapis.com/auth/documents
เนื้อหาของหน้าเว็บนี้ได้รับอนุญาตภายใต้ใบอนุญาตที่ต้องระบุที่มาของครีเอทีฟคอมมอนส์ 4.0 และตัวอย่างโค้ดได้รับอนุญาตภายใต้ใบอนุญาต Apache 2.0 เว้นแต่จะระบุไว้เป็นอย่างอื่น โปรดดูรายละเอียดที่นโยบายเว็บไซต์ Google Developers Java เป็นเครื่องหมายการค้าจดทะเบียนของ Oracle และ/หรือบริษัทในเครือ
อัปเดตล่าสุด 2025-07-26 UTC
[null,null,["อัปเดตล่าสุด 2025-07-26 UTC"],[[["\u003cp\u003e\u003ccode\u003eHorizontalRule\u003c/code\u003e represents a horizontal line in a Google Doc and can be placed within a list item or paragraph but cannot contain other elements.\u003c/p\u003e\n"],["\u003cp\u003eIt provides methods for copying, manipulating attributes, navigating to sibling/parent elements, removing from the document, and checking its position.\u003c/p\u003e\n"],["\u003cp\u003eMethods like \u003ccode\u003ecopy()\u003c/code\u003e, \u003ccode\u003egetAttributes()\u003c/code\u003e, and \u003ccode\u003esetAttributes()\u003c/code\u003e allow for creating copies of the element and modifying its properties.\u003c/p\u003e\n"],["\u003cp\u003eYou can use \u003ccode\u003egetNextSibling()\u003c/code\u003e, \u003ccode\u003egetPreviousSibling()\u003c/code\u003e, and \u003ccode\u003egetParent()\u003c/code\u003e to traverse the document structure relative to the \u003ccode\u003eHorizontalRule\u003c/code\u003e element.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eremoveFromParent()\u003c/code\u003e enables removing the horizontal rule from its parent container, and \u003ccode\u003eisAtDocumentEnd()\u003c/code\u003e checks its location within the document.\u003c/p\u003e\n"]]],[],null,["# Class HorizontalRule\n\nHorizontalRule\n\nAn element representing an horizontal rule. A `Horizontal``Rule` can be contained within a\n[ListItem](/apps-script/reference/document/list-item) or [Paragraph](/apps-script/reference/document/paragraph), but cannot itself contain any other element. For more\ninformation on document structure, see the [guide to extending Google Docs](/apps-script/guides/docs#structure_of_a_document). \n\n### Methods\n\n| Method | Return type | Brief description |\n|-----------------------------------------------------|-----------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------|\n| [copy()](#copy()) | [HorizontalRule](#) | Returns a detached, deep copy of the current element. |\n| [getAttributes()](#getAttributes()) | `Object` | Retrieves the element's attributes. |\n| [getNextSibling()](#getNextSibling()) | [Element](/apps-script/reference/document/element) | Retrieves the element's next sibling element. |\n| [getParent()](#getParent()) | [ContainerElement](/apps-script/reference/document/container-element) | Retrieves the element's parent element. |\n| [getPreviousSibling()](#getPreviousSibling()) | [Element](/apps-script/reference/document/element) | Retrieves the element's previous sibling element. |\n| [getType()](#getType()) | [ElementType](/apps-script/reference/document/element-type) | Retrieves the element's [ElementType](/apps-script/reference/document/element-type). |\n| [isAtDocumentEnd()](#isAtDocumentEnd()) | `Boolean` | Determines whether the element is at the end of the [Document](/apps-script/reference/document/document). |\n| [removeFromParent()](#removeFromParent()) | [HorizontalRule](#) | Removes the element from its parent. |\n| [setAttributes(attributes)](#setAttributes(Object)) | [HorizontalRule](#) | Sets the element's attributes. |\n\nDetailed documentation\n----------------------\n\n### `copy()`\n\nReturns a detached, deep copy of the current element.\n\nAny child elements present in the element are also copied. The new element doesn't have a\nparent.\n\n#### Return\n\n\n[HorizontalRule](#) --- The new copy.\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/documents.currentonly`\n- `https://www.googleapis.com/auth/documents`\n\n*** ** * ** ***\n\n### `get``Attributes()`\n\nRetrieves the element's attributes.\n\nThe result is an object containing a property for each valid element attribute where each\nproperty name corresponds to an item in the `Document``App.Attribute` enumeration.\n\n```javascript\nconst doc = DocumentApp.getActiveDocument();\nconst documentTab = doc.getActiveTab().asDocumentTab();\nconst body = documentTab.getBody();\n\n// Append a styled paragraph.\nconst par = body.appendParagraph('A bold, italicized paragraph.');\npar.setBold(true);\npar.setItalic(true);\n\n// Retrieve the paragraph's attributes.\nconst atts = par.getAttributes();\n\n// Log the paragraph attributes.\nfor (const att in atts) {\n Logger.log(`${att}:${atts[att]}`);\n}\n```\n\n#### Return\n\n\n`Object` --- The element's attributes.\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/documents.currentonly`\n- `https://www.googleapis.com/auth/documents`\n\n*** ** * ** ***\n\n### `get``Next``Sibling()`\n\nRetrieves the element's next sibling element.\n\nThe next sibling has the same parent and follows the current element.\n\n#### Return\n\n\n[Element](/apps-script/reference/document/element) --- The next sibling element.\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/documents.currentonly`\n- `https://www.googleapis.com/auth/documents`\n\n*** ** * ** ***\n\n### `get``Parent()`\n\nRetrieves the element's parent element.\n\nThe parent element contains the current element.\n\n#### Return\n\n\n[ContainerElement](/apps-script/reference/document/container-element) --- The parent element.\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/documents.currentonly`\n- `https://www.googleapis.com/auth/documents`\n\n*** ** * ** ***\n\n### `get``Previous``Sibling()`\n\nRetrieves the element's previous sibling element.\n\nThe previous sibling has the same parent and precedes the current element.\n\n#### Return\n\n\n[Element](/apps-script/reference/document/element) --- The previous sibling element.\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/documents.currentonly`\n- `https://www.googleapis.com/auth/documents`\n\n*** ** * ** ***\n\n### `get``Type()`\n\nRetrieves the element's [ElementType](/apps-script/reference/document/element-type).\n\nUse `get``Type()` to determine the exact type of a given element.\n\n```javascript\nconst doc = DocumentApp.getActiveDocument();\nconst documentTab = doc.getActiveTab().asDocumentTab();\nconst body = documentTab.getBody();\n\n// Obtain the first element in the active tab's body.\n\nconst firstChild = body.getChild(0);\n\n// Use getType() to determine the element's type.\nif (firstChild.getType() === DocumentApp.ElementType.PARAGRAPH) {\n Logger.log('The first element is a paragraph.');\n} else {\n Logger.log('The first element is not a paragraph.');\n}\n```\n\n#### Return\n\n\n[ElementType](/apps-script/reference/document/element-type) --- The element type.\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/documents.currentonly`\n- `https://www.googleapis.com/auth/documents`\n\n*** ** * ** ***\n\n### `is``At``Document``End()`\n\nDetermines whether the element is at the end of the [Document](/apps-script/reference/document/document).\n\n#### Return\n\n\n`Boolean` --- Whether the element is at the end of the tab.\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/documents.currentonly`\n- `https://www.googleapis.com/auth/documents`\n\n*** ** * ** ***\n\n### `remove``From``Parent()`\n\nRemoves the element from its parent.\n\n```javascript\nconst doc = DocumentApp.getActiveDocument();\nconst documentTab = doc.getActiveTab().asDocumentTab();\nconst body = documentTab.getBody();\n\n// Remove all images in the active tab's body.\nconst imgs = body.getImages();\nfor (let i = 0; i \u003c imgs.length; i++) {\n imgs[i].removeFromParent();\n}\n```\n\n#### Return\n\n\n[HorizontalRule](#) --- The removed element.\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/documents.currentonly`\n- `https://www.googleapis.com/auth/documents`\n\n*** ** * ** ***\n\n### `set``Attributes(attributes)`\n\nSets the element's attributes.\n\nThe specified attributes parameter must be an object where each property name is an item in\nthe `Document``App.Attribute` enumeration and each property value is the new value to be\napplied.\n\n```javascript\nconst doc = DocumentApp.getActiveDocument();\nconst documentTab = doc.getActiveTab().asDocumentTab();\nconst body = documentTab.getBody();\n\n// Define a custom paragraph style.\nconst style = {};\nstyle[DocumentApp.Attribute.HORIZONTAL_ALIGNMENT] =\n DocumentApp.HorizontalAlignment.RIGHT;\nstyle[DocumentApp.Attribute.FONT_FAMILY] = 'Calibri';\nstyle[DocumentApp.Attribute.FONT_SIZE] = 18;\nstyle[DocumentApp.Attribute.BOLD] = true;\n\n// Append a plain paragraph.\nconst par = body.appendParagraph('A paragraph with custom style.');\n\n// Apply the custom style.\npar.setAttributes(style);\n```\n\n#### Parameters\n\n| Name | Type | Description |\n|--------------|----------|---------------------------|\n| `attributes` | `Object` | The element's attributes. |\n\n#### Return\n\n\n[HorizontalRule](#) --- The current element.\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/documents.currentonly`\n- `https://www.googleapis.com/auth/documents`"]]