PDF轉(zhuǎn)換控件Aspose.PDF for .Net使用教程(十五):設(shè)置表格的邊框樣式、邊距和填充
Aspose.PDF for .NET是一種高PDF處理和解析API,用于在跨平臺應(yīng)用程序中執(zhí)行文檔管理和操作任務(wù)。API可以輕松用于生成、修改、轉(zhuǎn)換、渲染、保護和打印PDF文檔,而無需使用Adobe Acrobat。此外,API還提供PDF壓縮選項,表格創(chuàng)建和操作,圖形和圖像功能,廣泛的超鏈接功能,印章和水印任務(wù),擴展的安全控制和自定義字體處理。
在接下來的系列教程中,將為開發(fā)者帶來Aspose.PDF for .NET的一系列使用教程,例如進行文檔間的轉(zhuǎn)換,如何標(biāo)記PDF文件,如何使用表單和圖表等等。
>>Aspose.PDF for .NET更新至最新版v19.10,歡迎下載體驗。
致改變世界的程序員——1024限時滿減,購買Aspose文檔系列產(chǎn)品消費滿額即享10000元高額減免!更多活動詳情可咨詢在線客服哦~
第六章:操作和整合表格
▲第一節(jié):設(shè)置表格的邊框樣式,邊距和填充
Aspose.PDF for .NET允許開發(fā)人員在PDF文檔中創(chuàng)建表格。而且,它們可以將邊框樣式,邊距和單元格填充等效果應(yīng)用于表格。在深入了解技術(shù)細節(jié)之前,重要的是要了解下圖所示的邊框,邊距和填充的概念:
在上圖中,可以看到表格,行和單元格的邊界重疊。使用Aspose.PDF for .NET,表格可以具有邊距和單元格填充。要設(shè)置單元格的邊距,我們必須設(shè)置單元格填充。
邊框
要設(shè)置的邊界Table,Row和Cell對象,請使用Table.Border,Row.Border和Cell.Border性能。也可以使用Table或Row類的DefaultCellBorder屬性來設(shè)置單元格邊框。
邊距或填充
單元格填充可以使用Tableclass的DefaultCellPaddingproperty 進行管理。所有的填充相關(guān)的屬性分配的一個實例,MarginInfo大約需要的信息類Left,Right,Top和Bottom參數(shù)來創(chuàng)建自定義邊距。在下面的示例中,單元格邊框的寬度設(shè)置為0.1點,表邊框的寬度設(shè)置為1點,單元格填充設(shè)置為5點。
//文檔目錄的路徑 string dataDir = RunExamples.GetDataDir_AsposePdf_Tables(); //通過調(diào)用其空的構(gòu)造函數(shù)來實例化Document對象 Document doc = new Document(); Page page = doc.Pages.Add(); //實例化表對象 Aspose.Pdf.Table tab1 = new Aspose.Pdf.Table(); //將表格添加到所需部分的段落集合中 page.Paragraphs.Add(tab1); //設(shè)置表格的列寬 tab1.ColumnWidths = "50 50 50"; //使用BorderInfo對象設(shè)置默認(rèn)的單元格邊框 tab1.DefaultCellBorder = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, 0.1F); //使用另一個自定義的BorderInfo對象設(shè)置表格邊框 tab1.Border = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, 1F); //創(chuàng)建MarginInfo對象并設(shè)置其左,下,右和上邊距 Aspose.Pdf.MarginInfo margin = new Aspose.Pdf.MarginInfo(); margin.Top = 5f; margin.Left = 5f; margin.Right = 5f; margin.Bottom = 5f; // 將默認(rèn)的單元格填充設(shè)置為MarginInfo對象 tab1.DefaultCellPadding = margin; //在表格中創(chuàng)建行,然后在行中創(chuàng)建單元格 Aspose.Pdf.Row row1 = tab1.Rows.Add(); row1.Cells.Add("col1"); row1.Cells.Add("col2"); row1.Cells.Add(); TextFragment mytext = new TextFragment("col3 with large text string"); //Row1.Cells.Add(“ col3,帶有要放置在單元格內(nèi)的大文本字符串”); row1.Cells[2].Paragraphs.Add(mytext); row1.Cells[2].IsWordWrapped = false; // Row1.Cells [2] .Paragraphs [0] .FixedWidth = 80; Aspose.Pdf.Row row2 = tab1.Rows.Add(); row2.Cells.Add("item1"); row2.Cells.Add("item2"); row2.Cells.Add("item3"); dataDir = dataDir + "MarginsOrPadding_out.pdf"; //保存Pdf doc.Save(dataDir);
要創(chuàng)建帶有圓角的表,請使用BorderInfo類的RoundedBorderRadius值并將表的角樣式設(shè)置為圓形。
// 文檔目錄的路徑。 string dataDir = RunExamples.GetDataDir_AsposePdf_Tables(); Aspose.Pdf.Table tab1 = new Aspose.Pdf.Table(); GraphInfo graph = new GraphInfo(); graph.Color = Aspose.Pdf.Color.Red; //創(chuàng)建一個空白的BorderInfo對象 BorderInfo bInfo = new BorderInfo(BorderSide.All, graph); //將邊框設(shè)置為圓角,圓角半徑為15 bInfo.RoundedBorderRadius = 15; //將表格的Corner樣式設(shè)置為Round。 tab1.CornerStyle = Aspose.Pdf.BorderCornerStyle.Round; //設(shè)置表格邊框信息 tab1.Border = bInfo;
雙邊框
邊框可以加入Table或Cell對象。我們的用戶要求我們添加一項功能,允許他們在Table和Cell對象周圍添加雙邊框。下面的代碼段顯示了如何實現(xiàn)此要求。
//文檔目錄的路徑。 string dataDir = RunExamples.GetDataDir_AsposePdf_Tables(); //實例化Document對象 Document doc = new Document(); //將頁面添加到PDF文檔 Page page = doc.Pages.Add(); // 創(chuàng)建BorderInfo對象 Aspose.Pdf.BorderInfo border = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All); //指定頂部邊框?qū)閮杀?border.Top.IsDoubled = true; // 指定底部邊框?qū)閮杀?border.Bottom.IsDoubled = true; //實例化Table對象 Aspose.Pdf.Table table = new Aspose.Pdf.Table(); //指定列的寬度信息 table.ColumnWidths = "100"; //創(chuàng)建行對象 Aspose.Pdf.Row row = table.Rows.Add(); //將表格單元格添加到行的單元格集合 Aspose.Pdf.Cell cell = row.Cells.Add("some text"); //設(shè)置單元格對象的邊框(雙邊框) cell.Border = border; //將表格添加到Page的段落集合中 page.Paragraphs.Add(table); dataDir = dataDir + "TableBorderTest_out.pdf"; //保存PDF文檔 doc.Save(dataDir);
ASPOSE技術(shù)交流QQ群(642018183)已開通,各類資源及時分享,歡迎交流討論!
如果你對Aspose的產(chǎn)品感興趣或有任何技術(shù)難題都可以掃描下方二維碼告訴我們哦~
↓↓↓