Excel.PageLayout class
表示不依赖于任何打印机特定实现的布局和打印设置。 这些设置包括页边距、方向、页码编号、标题行,并打印区域。
- 扩展
注解
属性
black |
工作表的黑白打印选项。 |
bottom |
用于打印的工作表的下页边距(以磅为单位)。 |
center |
工作表的中心水平标记。 此标记确定在打印时是否水平居中工作表。 |
center |
工作表的中心垂直标志。 此标记确定在打印时是否垂直居中工作表。 |
context | 与 对象关联的请求上下文。 这会将加载项的进程连接到 Office 主机应用程序的进程。 |
draft |
工作表的草稿模式选项。 如果 |
first |
要打印的工作表的第一页码。 值 |
footer |
工作表的页脚边距(以磅为单位),以便在打印时使用。 |
header |
工作表的页眉边距(以磅为单位),以便在打印时使用。 |
headers |
工作表的页眉和页脚配置。 |
left |
工作表的左边距(以磅为单位),以便在打印时使用。 |
orientation | 工作表的页面方向。 |
paper |
工作表的页面纸张大小。 |
print |
指定打印时是否应显示工作表的批注。 |
print |
工作表的打印错误选项。 |
print |
指定是否打印工作表的网格线。 |
print |
指定是否打印工作表的标题。 |
print |
工作表的页面打印顺序选项。 它指定用于处理打印页码的顺序。 |
right |
工作表的右边距(以磅为单位),以便在打印时使用。 |
top |
工作表的上边距(以磅为单位),以便在打印时使用。 |
zoom | 工作表的打印缩放选项。 对象 |
方法
get |
|
get |
|
get |
获取表示标题列的 Range 对象。 |
get |
获取表示标题列的 Range 对象。 如果未设置,则此方法返回一个 对象,其 |
get |
获取表示标题行的 Range 对象。 |
get |
获取表示标题行的 Range 对象。 如果未设置,则此方法返回一个 对象,其 |
load(options) | 将命令加入队列以加载对象的指定属性。 阅读属性前必须先调用 |
load(property |
将命令加入队列以加载对象的指定属性。 阅读属性前必须先调用 |
load(property |
将命令加入队列以加载对象的指定属性。 阅读属性前必须先调用 |
set(properties, options) | 同时设置对象的多个属性。 可以传递具有相应属性的纯对象,也可以传递同一类型的另一个 API 对象。 |
set(properties) | 基于现有的已加载对象,同时对对象设置多个属性。 |
set |
设置工作表的打印区域。 |
set |
设置带单位的工作表的页边距。 |
set |
设置带单位的工作表的页边距。 |
set |
设置列,这些列包含要在打印的工作表的每页左侧重复的单元格。 |
set |
设置行,这些行包含要在打印的工作表的每页顶部重复的单元格。 |
toJSON() | 重写 JavaScript |
属性详细信息
blackAndWhite
bottomMargin
centerHorizontally
工作表的中心水平标记。 此标记确定在打印时是否水平居中工作表。
centerHorizontally: boolean;
属性值
boolean
注解
示例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/54-worksheet/worksheet-page-layout.yaml
await Excel.run(async (context) => {
const farmSheet = context.workbook.worksheets.getItem("Print");
farmSheet.pageLayout.centerHorizontally = true;
farmSheet.pageLayout.centerVertically = true;
await context.sync();
});
centerVertically
工作表的中心垂直标志。 此标记确定在打印时是否垂直居中工作表。
centerVertically: boolean;
属性值
boolean
注解
示例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/54-worksheet/worksheet-page-layout.yaml
await Excel.run(async (context) => {
const farmSheet = context.workbook.worksheets.getItem("Print");
farmSheet.pageLayout.centerHorizontally = true;
farmSheet.pageLayout.centerVertically = true;
await context.sync();
});
context
draftMode
firstPageNumber
要打印的工作表的第一页码。 值 null
表示“自动”页码。
firstPageNumber: number | "";
属性值
number | ""
注解
footerMargin
headerMargin
headersFooters
工作表的页眉和页脚配置。
readonly headersFooters: Excel.HeaderFooterGroup;
属性值
注解
leftMargin
orientation
工作表的页面方向。
orientation: Excel.PageOrientation | "Portrait" | "Landscape";
属性值
Excel.PageOrientation | "Portrait" | "Landscape"
注解
示例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/54-worksheet/worksheet-page-layout.yaml
await Excel.run(async (context) => {
const farmSheet = context.workbook.worksheets.getItem("Print");
farmSheet.pageLayout.orientation = Excel.PageOrientation.landscape;
await context.sync();
});
paperSize
工作表的页面纸张大小。
paperSize: Excel.PaperType | "Letter" | "LetterSmall" | "Tabloid" | "Ledger" | "Legal" | "Statement" | "Executive" | "A3" | "A4" | "A4Small" | "A5" | "B4" | "B5" | "Folio" | "Quatro" | "Paper10x14" | "Paper11x17" | "Note" | "Envelope9" | "Envelope10" | "Envelope11" | "Envelope12" | "Envelope14" | "Csheet" | "Dsheet" | "Esheet" | "EnvelopeDL" | "EnvelopeC5" | "EnvelopeC3" | "EnvelopeC4" | "EnvelopeC6" | "EnvelopeC65" | "EnvelopeB4" | "EnvelopeB5" | "EnvelopeB6" | "EnvelopeItaly" | "EnvelopeMonarch" | "EnvelopePersonal" | "FanfoldUS" | "FanfoldStdGerman" | "FanfoldLegalGerman";
属性值
Excel.PaperType | "Letter" | "LetterSmall" | "Tabloid" | "Ledger" | "Legal" | "Statement" | "Executive" | "A3" | "A4" | "A4Small" | "A5" | "B4" | "B5" | "Folio" | "Quatro" | "Paper10x14" | "Paper11x17" | "Note" | "Envelope9" | "Envelope10" | "Envelope11" | "Envelope12" | "Envelope14" | "Csheet" | "Dsheet" | "Esheet" | "EnvelopeDL" | "EnvelopeC5" | "EnvelopeC3" | "EnvelopeC4" | "EnvelopeC6" | "EnvelopeC65" | "EnvelopeB4" | "EnvelopeB5" | "EnvelopeB6" | "EnvelopeItaly" | "EnvelopeMonarch" | "EnvelopePersonal" | "FanfoldUS" | "FanfoldStdGerman" | "FanfoldLegalGerman"
注解
printComments
指定打印时是否应显示工作表的批注。
printComments: Excel.PrintComments | "NoComments" | "EndSheet" | "InPlace";
属性值
Excel.PrintComments | "NoComments" | "EndSheet" | "InPlace"
注解
printErrors
工作表的打印错误选项。
printErrors: Excel.PrintErrorType | "AsDisplayed" | "Blank" | "Dash" | "NotAvailable";
属性值
Excel.PrintErrorType | "AsDisplayed" | "Blank" | "Dash" | "NotAvailable"
注解
printGridlines
printHeadings
printOrder
工作表的页面打印顺序选项。 它指定用于处理打印页码的顺序。
printOrder: Excel.PrintOrder | "DownThenOver" | "OverThenDown";
属性值
Excel.PrintOrder | "DownThenOver" | "OverThenDown"
注解
rightMargin
topMargin
zoom
工作表的打印缩放选项。 对象 PageLayoutZoomOptions
必须设置为 JSON 对象, (使用 x.zoom = {...}
而不是 x.zoom.scale = ...
) 。
zoom: Excel.PageLayoutZoomOptions;
属性值
注解
示例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/54-worksheet/worksheet-page-layout.yaml
await Excel.run(async (context) => {
const farmSheet = context.workbook.worksheets.getItem("Print");
farmSheet.pageLayout.zoom = { scale: 200 };
await context.sync();
});
方法详细信息
getPrintArea()
RangeAreas
获取对象,该对象包含一个或多个矩形区域,该矩形区域表示工作表的打印区域。 如果没有打印区域, ItemNotFound
将引发错误。
getPrintArea(): Excel.RangeAreas;
返回
注解
getPrintAreaOrNullObject()
RangeAreas
获取对象,该对象包含一个或多个矩形区域,该矩形区域表示工作表的打印区域。 如果没有打印区域,则此方法返回对象,其 isNullObject
属性设置为 true
。 有关详细信息,请参阅 *OrNullObject 方法和属性。
getPrintAreaOrNullObject(): Excel.RangeAreas;
返回
注解
getPrintTitleColumns()
getPrintTitleColumnsOrNullObject()
获取表示标题列的 Range 对象。 如果未设置,则此方法返回一个 对象,其 isNullObject
属性设置为 true
。 有关详细信息,请参阅 *OrNullObject 方法和属性。
getPrintTitleColumnsOrNullObject(): Excel.Range;
返回
注解
getPrintTitleRows()
getPrintTitleRowsOrNullObject()
获取表示标题行的 Range 对象。 如果未设置,则此方法返回一个 对象,其 isNullObject
属性设置为 true
。 有关详细信息,请参阅 *OrNullObject 方法和属性。
getPrintTitleRowsOrNullObject(): Excel.Range;
返回
注解
load(options)
将命令加入队列以加载对象的指定属性。 阅读属性前必须先调用 context.sync()
。
load(options?: Excel.Interfaces.PageLayoutLoadOptions): Excel.PageLayout;
参数
提供要加载对象的属性的选项。
返回
load(propertyNames)
将命令加入队列以加载对象的指定属性。 阅读属性前必须先调用 context.sync()
。
load(propertyNames?: string | string[]): Excel.PageLayout;
参数
- propertyNames
-
string | string[]
逗号分隔的字符串或指定要加载的属性的字符串数组。
返回
load(propertyNamesAndPaths)
将命令加入队列以加载对象的指定属性。 阅读属性前必须先调用 context.sync()
。
load(propertyNamesAndPaths?: {
select?: string;
expand?: string;
}): Excel.PageLayout;
参数
- propertyNamesAndPaths
-
{ select?: string; expand?: string; }
propertyNamesAndPaths.select
是一个逗号分隔的字符串,指定要加载的属性,是 propertyNamesAndPaths.expand
一个逗号分隔的字符串,指定要加载的导航属性。
返回
set(properties, options)
同时设置对象的多个属性。 可以传递具有相应属性的纯对象,也可以传递同一类型的另一个 API 对象。
set(properties: Interfaces.PageLayoutUpdateData, options?: OfficeExtension.UpdateOptions): void;
参数
- properties
- Excel.Interfaces.PageLayoutUpdateData
一个 JavaScript 对象,其属性按同构方式构造为调用方法的对象的属性。
- options
- OfficeExtension.UpdateOptions
提供一个选项,用于在 properties 对象尝试设置任何只读属性时禁止显示错误。
返回
void
set(properties)
基于现有的已加载对象,同时对对象设置多个属性。
set(properties: Excel.PageLayout): void;
参数
- properties
- Excel.PageLayout
返回
void
setPrintArea(printArea)
设置工作表的打印区域。
setPrintArea(printArea: Range | RangeAreas | string): void;
参数
- printArea
-
Excel.Range | Excel.RangeAreas | string
要打印的内容的范围。
返回
void
注解
示例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/54-worksheet/worksheet-page-layout.yaml
await Excel.run(async (context) => {
const farmSheet = context.workbook.worksheets.getItem("Print");
farmSheet.pageLayout.setPrintArea("A1:D41");
await context.sync();
});
setPrintMargins(unit, marginOptions)
设置带单位的工作表的页边距。
setPrintMargins(unit: Excel.PrintMarginUnit, marginOptions: Excel.PageLayoutMarginOptions): void;
参数
提供的边距的度量单位。
- marginOptions
- Excel.PageLayoutMarginOptions
要设置的边距值。 未提供的边距保持不变。
返回
void
注解
setPrintMargins(unitString, marginOptions)
设置带单位的工作表的页边距。
setPrintMargins(unitString: "Points" | "Inches" | "Centimeters", marginOptions: Excel.PageLayoutMarginOptions): void;
参数
- unitString
-
"Points" | "Inches" | "Centimeters"
提供的边距的度量单位。
- marginOptions
- Excel.PageLayoutMarginOptions
要设置的边距值。 未提供的边距保持不变。
返回
void
注解
setPrintTitleColumns(printTitleColumns)
设置列,这些列包含要在打印的工作表的每页左侧重复的单元格。
setPrintTitleColumns(printTitleColumns: Range | string): void;
参数
- printTitleColumns
-
Excel.Range | string
要在每页左侧重复的列。 范围必须跨越整个列才能有效。
返回
void
注解
setPrintTitleRows(printTitleRows)
设置行,这些行包含要在打印的工作表的每页顶部重复的单元格。
setPrintTitleRows(printTitleRows: Range | string): void;
参数
- printTitleRows
-
Excel.Range | string
要在每个页面顶部重复的行。 范围必须跨越整行才能有效。
返回
void
注解
示例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/54-worksheet/worksheet-page-layout.yaml
await Excel.run(async (context) => {
const farmSheet = context.workbook.worksheets.getItem("Print");
farmSheet.pageLayout.setPrintTitleRows("$1:$1");
await context.sync();
});
toJSON()
重写 JavaScript toJSON()
方法,以便在将 API 对象传递给 JSON.stringify()
时提供更有用的输出。
JSON.stringify
(,反过来又调用toJSON
传递给它的 对象的 方法。) 而原始Excel.PageLayout
对象是 API 对象,toJSON
该方法返回一个纯 JavaScript 对象, (类型为 Excel.Interfaces.PageLayoutData
) ,其中包含原始对象中任何已加载子属性的浅表副本。
toJSON(): Excel.Interfaces.PageLayoutData;