翻譯|使用教程|編輯:李顯亮|2019-07-31 11:11:00.377|閱讀 1650 次
概述:Microsoft Word文檔中的表格提供了幾種不同的方法來確定表格和單個單元格的大小。這些屬性允許對表的整體外觀和行為進行相當大的控制。本文將深入介紹了表的不同寬度計算屬性如何工作,并提供了可以完全控制表寬度計算方式的信息。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關鏈接:
Aspose.Words For .Net是一種高級Word文檔處理API,用于執行各種文檔管理和操作任務。API支持生成,修改,轉換,呈現和打印文檔,而無需在跨平臺應用程序中直接使用Microsoft Word。此外,API支持所有流行的Word處理文件格式,并允許將Word文檔導出或轉換為固定布局文件格式和最常用的圖像/多媒體格式。
【下載Aspose.Words for .NET最新試用版】
接下來我們將進入“使用格式”的介紹,其中包括應用格式、介紹和創建表、添加和拆分表以及使用列和行。
Microsoft Word文檔中的表格提供了幾種不同的方法來確定表格和單個單元格的大小。這些屬性允許對表的整體外觀和行為進行相當大的控制。本文將深入介紹了表的不同寬度計算屬性如何工作,并提供了可以完全控制表寬度計算方式的信息。
表元素提供了幾個不同的屬性,這些屬性可以影響整個表格的寬度以及單個單元格的計算方式。
通過首選的width屬性定義表或單個單元格的所需寬度。這是一個優選的寬度,可以在單個單元格上指定,也可以在整個表格中指定。這是元素努力適應的大小。在某些情況下,可能無法適應這個精確的寬度,但在大多數情況下,實際寬度將接近此值。
首選寬度屬性可以用以下幾種方式之一表示:
寬度類型 | 行為 |
Absolute | 這將元素與給定的寬度(以點為單位)相匹配。 |
Percent | 匹配窗口或容器大小中可用空間的相對元素。如果可用的寬度發生變化,那么該表將自動增長或收縮以反映這些變化。 |
Auto | 這與沒有首選寬度集是一樣的。在這種情況下,元素的大小是使用屬于表的其他元素之一來計算的,而表中確實有一個大小集。 |
該表可以描述為適合頁面上100%的可用空間。在這種情況下,這意味著該表將嘗試占據左右頁邊距之間的空間。上表中的單元格可以這樣描述:
在Aspose.Words中,上面描述的大小調整模式可以在PreferredWidthType枚舉下找到,并使用Table.PreferredWidth屬性和CellFormat.PreferredWidth屬性進行設置。
通過使用PreferredWidth類的方法設置適當的首選寬度類型和值。例如,要從點指定寬度,可以使用PreferredWidth.FromPoints方法。要指定百分比寬度,請使用PreferredWidth.FromPercent。最后要指定auto或“no preferred width”,您將使用PreferredWidth.Auto。
在Aspose.Words中指定表上的首選寬度
使用Table.PreferredWidth屬性將調整其相對于容器的首選寬度(即頁面,文本列或外部表格單元格)。下面的示例顯示如何將表設置為自動適合頁面寬度的50%:
Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); // 插入一個寬度占頁面寬度一半的表 Table table = builder.StartTable(); //插入一些單元格 builder.InsertCell(); table.PreferredWidth = PreferredWidth.FromPercent(50); builder.Writeln("Cell #1"); builder.InsertCell(); builder.Writeln("Cell #2"); builder.InsertCell(); builder.Writeln("Cell #3"); dataDir = dataDir + "Table.PreferredWidth_out.doc"; //將文檔保存到磁盤 doc.Save(dataDir);
指定單元格上的首選寬度
在給定單元格上使用CellFormat.PreferredWidth屬性將調整其首選寬度。下面的示例顯示了如何設置不同的首選寬度設置:
Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); //插入由三個具有不同首選寬度的單元格組成的表行。 Table table = builder.StartTable(); //插入一個絕對大小的單元格。 builder.InsertCell(); builder.CellFormat.PreferredWidth = PreferredWidth.FromPoints(40); builder.CellFormat.Shading.BackgroundPatternColor = Color.LightYellow; builder.Writeln("Cell at 40 points width"); //插入一個相對大小(百分比)的單元格。 builder.InsertCell(); builder.CellFormat.PreferredWidth = PreferredWidth.FromPercent(20); builder.CellFormat.Shading.BackgroundPatternColor = Color.LightBlue; builder.Writeln("Cell at 20% width"); //插入一個自動大小的單元格。 builder.InsertCell(); builder.CellFormat.PreferredWidth = PreferredWidth.Auto; builder.CellFormat.Shading.BackgroundPatternColor = Color.LightGreen; builder.Writeln("Cell automatically sized. The size of this cell is calculated from the table preferred width."); builder.Writeln("In this case the cell will fill up the rest of the available space."); dataDir = dataDir + "Table.CellPreferredWidths_out.doc"; //將文檔保存到磁盤。 doc.Save(dataDir);
查找表或單元格的首選寬度類型和值
使用PreferredWidth.Type和PreferredWidth.Value屬性來查找所需表或單元格的首選寬度詳細信息。 下面的示例演示如何檢索表格單元格的首選寬度類型:
Document doc = new Document(dataDir + "Table.SimpleTable.doc"); //檢索文檔中的第一個表。 Table table = (Table)doc.GetChild(NodeType.Table, 0, true); table.AllowAutoFit = true; Cell firstCell = table.FirstRow.FirstCell; PreferredWidthType type = firstCell.CellFormat.PreferredWidth.Type; double value = firstCell.CellFormat.PreferredWidth.Value;
允許AutoFit
該Table.AllowAutoFit屬性使表中的細胞生長和收縮,以適應其內容。此屬性可以與首選單元格寬度結合使用,以格式化自動適合其內容但也具有初始寬度的單元格。如果需要,單元寬度可以超過該寬度。下面的示例演示如何設置表以縮小或增大每個單元格以容納其內容:
table.AllowAutoFit = true;
使用單元格寬度
在Aspose.Words中,CellFormat對象還提供了width屬性。此屬性主要保留在以前的版本中,但它仍然可用作簡化設置單元格寬度的方法。此屬性現在的行為會有所不同,具體取決于表中已存在的其他寬度屬性:
單元寬度計算中的優先順序
在計算單元格寬度時,Aspose.Words使用以下順序。
順序 | 屬性 | 描述 |
1 | CellFormat.PreferredWidth | 理想情況下,首選寬度用于計算單元大小。 |
2 | Table.AllowAutoFit | 如果允許自動匹配,則表可能會超過首選寬度以容納內容。通常它不會收縮到首選寬度以下。 |
3 | CellFormat.Width | 如果上述兩個設置均不存在,則使用CellFormat.Width下定義的寬度。 |
*想要獲取Aspose.Words正版授權可聯系哦~
ASPOSE技術交流QQ群已開通,各類資源及時分享,歡迎交流討論!(掃描下方二維碼加入群聊)
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn