Word.Section class
Представляет раздел в документе Word.
- Extends
Комментарии
Используется
- Word. Текст: parentSection, parentSectionOrNullObject
- Word. SectionCollection: getFirst, getFirstOrNullObject, items
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/insert-section-breaks.yaml
// Gets the first section and reads the text in its body.
await Word.run(async (context) => {
const sections: Word.SectionCollection = context.document.sections;
const firstSection: Word.Section = sections.getFirst();
const firstSectionBody: Word.Body = firstSection.body;
firstSectionBody.load("text");
await context.sync();
console.log(`First section text: ${firstSectionBody.text}`);
});
Свойства
| body | Получает |
| borders | Возвращает объект, |
| context | Контекст запроса, связанный с объектом. Это соединяет процесс надстройки с процессом основного приложения Office. |
| page |
Возвращает |
| protected |
Указывает, защищен ли раздел для форм. |
Методы
| get |
Возвращает один из нижних колонтитулов раздела. |
| get |
Возвращает один из нижних колонтитулов раздела. |
| get |
Возвращает один из верхних колонтитулов раздела. |
| get |
Возвращает один из верхних колонтитулов раздела. |
| get |
Возвращает следующий раздел. Выдает ошибку, |
| get |
Возвращает следующий раздел. Если этот раздел последний, то этот метод вернет объект со свойством |
| load(options) | Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
| load(property |
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
| load(property |
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
| set(properties, options) | Задает несколько свойств объекта одновременно. Вы можете передать либо простой объект с соответствующими свойствами, либо другой объект API того же типа. |
| set(properties) | Одновременно задает несколько свойств объекта на основе существующего загруженного объекта. |
| toJSON() | Переопределяет метод JavaScript |
| track() | Отслеживает объект для автоматической корректировки с учетом окружающих изменений в документе. Этот вызов является сокращением от context.trackedObjects.add(thisObject). Если вы используете этот объект во всех |
| untrack() | Освобождает память, связанную с этим объектом, если он ранее отслеживался. Этот вызов является сокращением от context.trackedObjects.remove(thisObject). Наличие большого количества отслеживаемых объектов замедляет ведущее приложение, поэтому не забывайте освобождать любые добавленные объекты после завершения их использования. Вам нужно позвонить |
Сведения о свойстве
body
Получает Body объект раздела. Это не включает верхний и нижний колонтитулы и другие метаданные разделов.
readonly body: Word.Body;
Значение свойства
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/insert-section-breaks.yaml
// Gets the body of the second section and reads its text.
await Word.run(async (context) => {
const sections: Word.SectionCollection = context.document.sections;
sections.load("items");
await context.sync();
const secondSection: Word.Section = sections.items[1];
const secondSectionBody: Word.Body = secondSection.body;
secondSectionBody.load("text");
await context.sync();
console.log(`Second section text: ${secondSectionBody.text}`);
});
borders
Возвращает объект, BorderUniversalCollection представляющий все границы раздела.
readonly borders: Word.BorderUniversalCollection;
Значение свойства
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/manage-section-starts.yaml
// Applies a double blue page border to every section in the report.
await Word.run(async (context) => {
const sections: Word.SectionCollection = context.document.sections;
const firstSection: Word.Section = sections.getFirst();
const sectionBorders: Word.BorderUniversalCollection = firstSection.borders;
sectionBorders.load("items");
await context.sync();
sectionBorders.items.forEach((sectionBorder: Word.BorderUniversal) => {
sectionBorder.isVisible = true;
sectionBorder.color = "#4472C4";
sectionBorder.lineStyle = Word.BorderLineStyle.double;
sectionBorder.lineWidth = Word.LineWidth.pt150;
});
sectionBorders.applyPageBordersToAllSections();
await context.sync();
console.log("Applied page borders to every section.");
});
context
Контекст запроса, связанный с объектом. Это соединяет процесс надстройки с процессом основного приложения Office.
context: RequestContext;
Значение свойства
pageSetup
Возвращает PageSetup объект, связанный с разделом.
readonly pageSetup: Word.PageSetup;
Значение свойства
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/manage-section-starts.yaml
await Word.run(async (context) => {
// Configure document-wide page settings for a report that will be printed and bound.
const pageSetup: Word.PageSetup = context.document.pageSetup;
pageSetup.set({
paperSize: Word.PaperSize.letter,
orientation: Word.PageOrientation.portrait,
topMargin: 72,
bottomMargin: 72,
leftMargin: 90,
rightMargin: 72,
gutter: 18,
gutterPosition: Word.GutterPosition.left,
mirrorMargins: true,
oddAndEvenPagesHeaderFooter: true
});
const sections: Word.SectionCollection = context.document.sections;
sections.load("items");
await context.sync();
// Start the main chapter on an odd-numbered page so it appears on the right in a bound document.
const chapterPageSetup: Word.PageSetup = sections.items[1].pageSetup;
chapterPageSetup.sectionStart = Word.SectionStart.oddPage;
chapterPageSetup.differentFirstPageHeaderFooter = true;
// Keep the appendix in a separate section, but let it begin on the current page.
sections.items[2].pageSetup.sectionStart = Word.SectionStart.continuous;
await context.sync();
console.log("Applied print and binding settings to the report.");
});
protectedForForms
Указывает, защищен ли раздел для форм.
protectedForForms: boolean;
Значение свойства
boolean
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/manage-section-starts.yaml
// Protects the main chapter section when document form protection is enabled.
await Word.run(async (context) => {
const sections: Word.SectionCollection = context.document.sections;
sections.load("items");
await context.sync();
const chapterSection: Word.Section = sections.items[1];
chapterSection.protectedForForms = true;
await context.sync();
console.log("Marked the main chapter section for form protection.");
});
Сведения о методе
getFooter(type)
Возвращает один из нижних колонтитулов раздела.
getFooter(type: Word.HeaderFooterType): Word.Body;
Параметры
Тип нижнего колонтитула, который необходимо возвратить. Это значение должно быть таким: primary, firstPage, или evenPages.
Возвращаемое значение
Комментарии
Примеры
// Run a batch operation against the Word object model.
await Word.run(async (context) => {
// Create a proxy sectionsCollection object.
const mySections = context.document.sections;
// Queue a command to load the sections.
mySections.load('body/style');
// Synchronize the document state by executing the queued commands,
// and return a promise to indicate task completion.
await context.sync();
// Create a proxy object the primary footer of the first section.
// Note that the footer is a body object.
const myFooter = mySections.items[0].getFooter(Word.HeaderFooterType.primary);
// Queue a command to insert text at the end of the footer.
myFooter.insertText("This is a footer.", Word.InsertLocation.end);
// Queue a command to wrap the header in a content control.
myFooter.insertContentControl();
// Synchronize the document state by executing the queued commands,
// and return a promise to indicate task completion.
await context.sync();
console.log("Added a footer to the first section.");
});
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/25-paragraph/insert-header-and-footer.yaml
// Inserts a first-page footer by using the HeaderFooterType enum.
await Word.run(async (context) => {
const sections: Word.SectionCollection = context.document.sections;
const firstSection: Word.Section = sections.getFirst();
const footerType: Word.HeaderFooterType = Word.HeaderFooterType.firstPage;
const firstPageFooter: Word.Body = firstSection.getFooter(footerType);
firstPageFooter.insertParagraph("This is a first-page footer.", Word.InsertLocation.end);
await context.sync();
});
getFooter(type)
Возвращает один из нижних колонтитулов раздела.
getFooter(type: "Primary" | "FirstPage" | "EvenPages"): Word.Body;
Параметры
- type
-
"Primary" | "FirstPage" | "EvenPages"
Тип нижнего колонтитула, который необходимо возвратить. Это значение должно быть таким: primary, firstPage, или evenPages.
Возвращаемое значение
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/25-paragraph/insert-header-and-footer.yaml
// Inserts a primary footer by using the string overload.
await Word.run(async (context) => {
const sections: Word.SectionCollection = context.document.sections;
const firstSection: Word.Section = sections.getFirst();
const primaryFooter: Word.Body = firstSection.getFooter("Primary");
primaryFooter.insertParagraph("This is a primary footer.", Word.InsertLocation.end);
await context.sync();
});
getHeader(type)
Возвращает один из верхних колонтитулов раздела.
getHeader(type: Word.HeaderFooterType): Word.Body;
Параметры
Тип колонтитула, который необходимо возвратить. Это значение должно быть таким: primary, firstPage, или evenPages.
Возвращаемое значение
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/25-paragraph/insert-header-and-footer.yaml
// Inserts a primary header by using the HeaderFooterType enum.
await Word.run(async (context) => {
const sections: Word.SectionCollection = context.document.sections;
const firstSection: Word.Section = sections.getFirst();
const headerType: Word.HeaderFooterType = Word.HeaderFooterType.primary;
const primaryHeader: Word.Body = firstSection.getHeader(headerType);
primaryHeader.insertParagraph("This is a primary header.", Word.InsertLocation.end);
await context.sync();
});
getHeader(type)
Возвращает один из верхних колонтитулов раздела.
getHeader(type: "Primary" | "FirstPage" | "EvenPages"): Word.Body;
Параметры
- type
-
"Primary" | "FirstPage" | "EvenPages"
Тип колонтитула, который необходимо возвратить. Это значение должно быть таким: primary, firstPage, или evenPages.
Возвращаемое значение
Комментарии
Примеры
// Run a batch operation against the Word object model.
await Word.run(async (context) => {
// Create a proxy sectionsCollection object.
const mySections = context.document.sections;
// Queue a command to load the sections.
mySections.load('body/style');
// Synchronize the document state by executing the queued commands,
// and return a promise to indicate task completion.
await context.sync();
// Create a proxy object the primary header of the first section.
// Note that the header is a body object.
const myHeader = mySections.items[0].getHeader("Primary");
// Queue a command to insert text at the end of the header.
myHeader.insertText("This is a header.", Word.InsertLocation.end);
// Queue a command to wrap the header in a content control.
myHeader.insertContentControl();
// Synchronize the document state by executing the queued commands,
// and return a promise to indicate task completion.
await context.sync();
console.log("Added a header to the first section.");
});
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/25-paragraph/insert-header-and-footer.yaml
// Inserts a first-page header by using the string overload.
await Word.run(async (context) => {
const sections: Word.SectionCollection = context.document.sections;
const firstSection: Word.Section = sections.getFirst();
const firstPageHeader: Word.Body = firstSection.getHeader("FirstPage");
firstPageHeader.insertParagraph("This is a first-page header.", Word.InsertLocation.end);
await context.sync();
});
getNext()
Возвращает следующий раздел. Выдает ошибку, ItemNotFound если этот раздел является последним.
getNext(): Word.Section;
Возвращаемое значение
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/insert-section-breaks.yaml
// Gets the section after the current selection when another section is expected.
await Word.run(async (context) => {
const selection: Word.Range = context.document.getSelection();
const selectedBody: Word.Body = selection.parentBody;
const selectedSection: Word.Section = selectedBody.parentSection;
const nextSection: Word.Section = selectedSection.getNext();
const nextSectionBody: Word.Body = nextSection.body;
nextSectionBody.load("text");
await context.sync();
console.log(`Next section text: ${nextSectionBody.text}`);
});
getNextOrNullObject()
Возвращает следующий раздел. Если этот раздел последний, то этот метод вернет объект со свойством isNullObject , установленным в true. Дополнительные сведения см. в разделе Методы и свойства *OrNullObject.
getNextOrNullObject(): Word.Section;
Возвращаемое значение
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/50-document/insert-section-breaks.yaml
// Gets the section after the current selection, or a null object if it is the last section.
await Word.run(async (context) => {
const selection: Word.Range = context.document.getSelection();
const selectedBody: Word.Body = selection.parentBody;
const selectedSection: Word.Section = selectedBody.parentSection;
const nextSection: Word.Section = selectedSection.getNextOrNullObject();
nextSection.load("isNullObject, body/text");
await context.sync();
if (nextSection.isNullObject) {
console.log("The document doesn't have another section.");
return;
}
console.log(`Next section text: ${nextSection.body.text}`);
});
load(options)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync().
load(options?: Word.Interfaces.SectionLoadOptions): Word.Section;
Параметры
Предоставляет параметры для загружаемых свойств объекта.
Возвращаемое значение
load(propertyNames)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync().
load(propertyNames?: string | string[]): Word.Section;
Параметры
- propertyNames
-
string | string[]
Строка с разделителями-запятыми или массив строк, которые определяют свойства для загрузки.
Возвращаемое значение
load(propertyNamesAndPaths)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync().
load(propertyNamesAndPaths?: {
select?: string;
expand?: string;
}): Word.Section;
Параметры
- propertyNamesAndPaths
-
{ select?: string; expand?: string; }
propertyNamesAndPaths.select — это строка с разделителями-запятыми, указывающая загружаемые свойства, и строка propertyNamesAndPaths.expand через запятую, указывающая свойства навигации для загрузки.
Возвращаемое значение
set(properties, options)
Задает несколько свойств объекта одновременно. Вы можете передать либо простой объект с соответствующими свойствами, либо другой объект API того же типа.
set(properties: Interfaces.SectionUpdateData, options?: OfficeExtension.UpdateOptions): void;
Параметры
- properties
- Word.Interfaces.SectionUpdateData
Объект JavaScript со свойствами, структурированными изоморфно свойствам объекта, для которого вызывается метод.
- options
- OfficeExtension.UpdateOptions
Предоставляет возможность подавления ошибок, если объект properties пытается задать какие-либо свойства только для чтения.
Возвращаемое значение
void
set(properties)
Одновременно задает несколько свойств объекта на основе существующего загруженного объекта.
set(properties: Word.Section): void;
Параметры
- properties
- Word.Section
Возвращаемое значение
void
toJSON()
Переопределяет метод JavaScript toJSON() , чтобы обеспечить более полезные выходные данные при передаче объекта API в JSON.stringify(). (JSON.stringify, в свою очередь, вызывает toJSON метод переданного ему объекта.) В то время как исходный Word.Section объект является объектом API, toJSON метод возвращает простой объект JavaScript (типизированный как Word.Interfaces.SectionData), который содержит неглубокие копии любых загруженных дочерних свойств исходного объекта.
toJSON(): Word.Interfaces.SectionData;
Возвращаемое значение
track()
Отслеживает объект для автоматической корректировки с учетом окружающих изменений в документе. Этот вызов является сокращением от context.trackedObjects.add(thisObject). Если вы используете этот объект во всех .sync вызовах и вне последовательного выполнения пакета ".run" и получаете сообщение об ошибке "InvalidObjectPath" при установке свойства или вызове метода объекта, необходимо добавить объект в коллекцию отслеживаемых объектов при его первом создании. Если этот объект является частью семейства, следует также отслеживать родительскую коллекцию.
track(): Word.Section;
Возвращаемое значение
untrack()
Освобождает память, связанную с этим объектом, если он ранее отслеживался. Этот вызов является сокращением от context.trackedObjects.remove(thisObject). Наличие большого количества отслеживаемых объектов замедляет ведущее приложение, поэтому не забывайте освобождать любые добавленные объекты после завершения их использования. Вам нужно позвонить context.sync() , прежде чем освобождение памяти вступит в силу.
untrack(): Word.Section;