Aspose.Words for .NET使用表格教程之应用格式(4)——如何使用表的替代文本和表位的调整
Aspose.Words For .Net是一种高级Word文档处理API,用于执行各种文档管理和操作任务。API支持生成,修改,转换,呈现和打印文档,而无需在跨平台应用程序中直接使用Microsoft Word。此外,API支持所有流行的Word处理文件格式,并允许将Word文档导出或转换为固定布局文件格式和最常用的图像/多媒体格式。
【下载Aspose.Words for .NET最新试用版】
接下来我们将进入“使用格式”的介绍,其中包括应用格式、介绍和创建表、添加和拆分表以及使用列和行。
获取表和周围文本之间的距离
下面的示例显示了如何获取表与其周围文本之间的距离:
Document doc = new Document(dataDir + "Table.EmptyTable.doc"); Console.WriteLine("\nGet distance between table left, right, bottom, top and the surrounding text."); Table table = (Table)doc.GetChild(NodeType.Table, 0, true); Console.WriteLine(table.DistanceTop); Console.WriteLine(table.DistanceBottom); Console.WriteLine(table.DistanceRight); Console.WriteLine(table.DistanceLeft);
表位
▲如何获得表的对齐方式
如果表的文本环绕为“周围”,则可以使用Table.RelativeHorizontalAlignment和Table.RelativeVerticalAlignment属性获取表的水平和垂直对齐。 在其他情况下,您可以使用Table.Alignment属性获取表的内联对齐。 下面的示例显示了如何获得表格的对齐方式。
Document doc = new Document(dataDir + "Table.Document.doc"); // Retrieve the first table in the document. Table table = (Table)doc.GetChild(NodeType.Table, 0, true); if (table.TextWrapping == TextWrapping.Around) { Console.WriteLine(table.RelativeHorizontalAlignment); Console.WriteLine(table.RelativeVerticalAlignment); } else { Console.WriteLine(table.Alignment); }
▲获取浮动表的位置
下面的示例显示了如何获取浮动表的位置:
Document doc = new Document(dataDir + "FloatingTablePosition.docx"); foreach (Table table in doc.FirstSection.Body.Tables) { // 如果表格是浮动类型,那么打印它的定位属性。 if (table.TextWrapping == TextWrapping.Around) { Console.WriteLine(table.HorizontalAnchor); Console.WriteLine(table.VerticalAnchor); Console.WriteLine(table.AbsoluteHorizontalDistance); Console.WriteLine(table.AbsoluteVerticalDistance); Console.WriteLine(table.AllowOverlap); Console.WriteLine(".............................."); } }
使用表的替代文本
表的标题和描述提供了表中包含的信息的替代的基于文本的表示。 MS Word允许设置此信息(右键单击表,单击表属性,单击Alt Text选项卡,然后设置表的标题和说明)。 使用Aspose.Words,您可以使用Table.Title和Table.Description属性来实现此目的。这些属性对符合ISO / IEC 29500的DOCX文档有意义。下面的代码示例显示了如何设置表的标题和描述属性:
Document doc = new Document(dataDir + "Table.Document.doc"); Table table = (Table)doc.GetChild(NodeType.Table, 0, true); table.Title = "Test title"; table.Description = "Test description"; OoxmlSaveOptions options = new OoxmlSaveOptions(); options.Compliance = OoxmlCompliance.Iso29500_2008_Strict; doc.CompatibilityOptions.OptimizeFor(Settings.MsWordVersion.Word2016); dataDir = dataDir + "Table.SetTableTitleandDescription_out.docx"; //将文档保存到磁盘。 doc.Save(dataDir, options);
允许单元格之间的间距
默认情况下,MS Word不会在表格中的单元格之间添加任何额外空格。 您可以在MS Word的表格属性中找到此选项。 您可以使用Table.AllowCellSpacing属性获取或设置“允许单元格之间的间距”选项。 下面的代码示例显示如何在单元格之间设置空间:
Document doc = new Document(dataDir + "Table.Document.doc"); Table table = (Table)doc.GetChild(NodeType.Table, 0, true); table.AllowCellSpacing = true; dataDir = dataDir + "Table.AllowCellSpacing_out.docx"; //将文档保存到磁盘。 doc.Save(dataDir);
*Aspose.Words现已加入“8月省钱式嗨购”,满额即送office 365正版授权,想要购买Aspose.Words正版授权的朋友可了解详情哦~
ASPOSE技术交流QQ群已开通,各类资源及时分享,欢迎交流讨论!(扫描下方二维码加入群聊)