zl程序教程

您现在的位置是:首页 >  后端

当前栏目

Aspose.Words for .NET使用表格教程之应用格式(3)——使用表格样式

Net应用教程 for 格式 表格 样式 words
2023-09-11 14:14:49 时间

Aspose.Words For .Net是一种高级Word文档处理API,用于执行各种文档管理和操作任务。API支持生成,修改,转换,呈现和打印文档,而无需在跨平台应用程序中直接使用Microsoft Word。此外,API支持所有流行的Word处理文件格式,并允许将Word文档导出或转换为固定布局文件格式和最常用的图像/多媒体格式。

【下载Aspose.Words for .NET最新试用版】

接下来我们将进入“使用格式”的介绍,其中包括应用格式、介绍和创建表、添加和拆分表以及使用列和行。


使用表格样式

表格样式定义了一组可以轻松应用于表格的格式。边框,阴影,对齐和字体等格式可以在表格样式中设置,并应用于许多表格以获得一致的外观。

Aspose.Words支持将表格样式应用于表格,还支持读取任何表格样式的属性。在加载和保存期间,表格样式将以下列方式保留:

  • 加载和保存为这些格式时,将保留DOCX和WordML格式的表格样式。
  • 以DOC格式加载和保存时保留表格样式(但不保留任何其他格式)。
  • 导出到其他格式,渲染或打印时,表格样式将扩展为直接格式化表格,以便保留所有格式。

▲应用表格样式


在Aspose.Words中,您可以使用任何Table.Style,Table.StyleIdentifier和Table.StyleName属性来应用表样式。您还可以选择要应用的表样式的哪些功能,例如第一列,最后一列,带状行。它们列在TableStyleOptions枚举下,并使用Table.StyleOptions属性应用。该TableStyleOptions枚举允许这些功能按位组合。 下面的示例演示如何构建应用了表格样式的新表:

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

Table table = builder.StartTable();
// 在设置任何表格式之前,必须先插入至少一行。
builder.InsertCell();
// 根据唯一的样式标识符设置使用的表样式。
//注意,当保存为.doc格式时,并不是所有的表样式都可用。
table.StyleIdentifier = StyleIdentifier.MediumShading1Accent1;
// 应用应该由样式格式化的特性。
table.StyleOptions = TableStyleOptions.FirstColumn | TableStyleOptions.RowBands | TableStyleOptions.FirstRow;
table.AutoFit(AutoFitBehavior.AutoFitToContents);

// 继续正常地构建表。
builder.Writeln("Item");
builder.CellFormat.RightPadding = 40;
builder.InsertCell();
builder.Writeln("Quantity (kg)");
builder.EndRow();

builder.InsertCell();
builder.Writeln("Apples");
builder.InsertCell();
builder.Writeln("20");
builder.EndRow();

builder.InsertCell();
builder.Writeln("Bananas");
builder.InsertCell();
builder.Writeln("40");
builder.EndRow();

builder.InsertCell();
builder.Writeln("Carrots");
builder.InsertCell();
builder.Writeln("50");
builder.EndRow();

dataDir = dataDir + "DocumentBuilder.SetTableStyle_out.docx";
           
// 将文档保存到磁盘。
doc.Save(dataDir);

下面的示例显示如何将格式化从样式扩展到表的行和单元格作为直接格式化。

Document doc = new Document(dataDir + "Table.TableStyle.docx");

//获取文档中第一个表的第一个单元格。
Table table = (Table)doc.GetChild(NodeType.Table, 0, true);
Cell firstCell = table.FirstRow.FirstCell;

// 首先打印单元格底纹的颜色。
//以表的形式存储。
Color cellShadingBefore = firstCell.CellFormat.Shading.BackgroundPatternColor;
Console.WriteLine("Cell shading before style expansion: " + cellShadingBefore.ToString());

//展开表格样式格式化为直接格式化。
doc.ExpandTableStylesToDirectFormatting();

//在展开表格样式后打印单元格阴影。蓝色背景图案颜色
//应该从表样式中应用。
Color cellShadingAfter = firstCell.CellFormat.Shading.BackgroundPatternColor;
Console.WriteLine("Cell shading after style expansion: " + cellShadingAfter.ToString());

 欢迎下载|体验更多Aspose文档管理产品  或 加入Aspose技术交流群(761297826