彩票走势图

PDF转换控件Aspose.PDF for .Net使用教程(十五):设置表格的边框样式、边距和填充

翻译|使用教程|编辑:李显亮|2019-10-16 09:59:30.963|阅读 684 次

概述:Aspose.PDF for .NET允许开发人员在PDF文档中创建表格。而且,它们可以将边框样式,边距和单元格填充等效果应用于表格。本文将介绍如何设置表格的边框样式、边距和填充。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

相关链接:

Aspose.PDF for .NET是一种高PDF处理和解析API,用于在跨平台应用程序中执行文档管理和操作任务。API可以轻松用于生成、修改、转换、渲染、保护和打印PDF文档,而无需使用Adobe Acrobat。此外,API还提供PDF压缩选项,表格创建和操作,图形和图像功能,广泛的超链接功能,印章和水印任务,扩展的安全控制和自定义字体处理。

在接下来的系列教程中,将为开发者带来Aspose.PDF for .NET的一系列使用教程,例如进行文档间的转换,如何标记PDF文件,如何使用表单和图表等等。

>>Aspose.PDF for .NET更新至最新版v19.10,欢迎下载体验。

致改变世界的程序员——1024限时满减,购买Aspose文档系列产品消费满额即享10000元高额减免!更多活动详情可哦~


第六章:操作和整合表格

▲第一节:设置表格的边框样式,边距和填充

Aspose.PDF for .NET允许开发人员在PDF文档中创建表格。而且,它们可以将边框样式,边距和单元格填充等效果应用于表格。在深入了解技术细节之前,重要的是要了解下图所示的边框,边距和填充的概念:

PDF转换控件Aspose.PDF for .Net使用教程:设置表格的边框样式、边距和填充

在上图中,可以看到表格,行和单元格的边界重叠。使用Aspose.PDF for .NET,表格可以具有边距和单元格填充。要设置单元格的边距,我们必须设置单元格填充。

边框

要设置的边界Table,Row和Cell对象,请使用Table.Border,Row.Border和Cell.Border性能。也可以使用Table或Row类的DefaultCellBorder属性来设置单元格边框。

边距或填充

单元格填充可以使用Tableclass的DefaultCellPaddingproperty 进行管理。所有的填充相关的属性分配的一个实例,MarginInfo大约需要的信息类Left,Right,Top和Bottom参数来创建自定义边距。在下面的示例中,单元格边框的宽度设置为0.1点,表边框的宽度设置为1点,单元格填充设置为5点。

//文档目录的路径
string dataDir = RunExamples.GetDataDir_AsposePdf_Tables();
            
//通过调用其空的构造函数来实例化Document对象
Document doc = new Document();
Page page = doc.Pages.Add();
//实例化表对象
Aspose.Pdf.Table tab1 = new Aspose.Pdf.Table();
//将表格添加到所需部分的段落集合中
page.Paragraphs.Add(tab1);
//设置表格的列宽
tab1.ColumnWidths = "50 50 50";
//使用BorderInfo对象设置默认的单元格边框
tab1.DefaultCellBorder = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, 0.1F);
//使用另一个自定义的BorderInfo对象设置表格边框
tab1.Border = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, 1F);
//创建MarginInfo对象并设置其左,下,右和上边距
Aspose.Pdf.MarginInfo margin = new Aspose.Pdf.MarginInfo();
margin.Top = 5f;
margin.Left = 5f;
margin.Right = 5f;
margin.Bottom = 5f;
// 将默认的单元格填充设置为MarginInfo对象
tab1.DefaultCellPadding = margin;
//在表格中创建行,然后在行中创建单元格
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,带有要放置在单元格内的大文本字符串”);
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);

要创建带有圆角的表,请使用BorderInfo类的RoundedBorderRadius值并将表的角样式设置为圆形。

// 文档目录的路径。
string dataDir = RunExamples.GetDataDir_AsposePdf_Tables();
Aspose.Pdf.Table tab1 = new Aspose.Pdf.Table();

GraphInfo graph = new GraphInfo();
graph.Color = Aspose.Pdf.Color.Red;
//创建一个空白的BorderInfo对象
BorderInfo bInfo = new BorderInfo(BorderSide.All, graph);
//将边框设置为圆角,圆角半径为15
bInfo.RoundedBorderRadius = 15;
//将表格的Corner样式设置为Round。
tab1.CornerStyle = Aspose.Pdf.BorderCornerStyle.Round;
//设置表格边框信息
tab1.Border = bInfo;

双边框

边框可以加入Table或Cell对象。我们的用户要求我们添加一项功能,允许他们在Table和Cell对象周围添加双边框。下面的代码段显示了如何实现此要求。

//文档目录的路径。
string dataDir = RunExamples.GetDataDir_AsposePdf_Tables();
           
//实例化Document对象
Document doc = new Document();
//将页面添加到PDF文档
Page page = doc.Pages.Add();
// 创建BorderInfo对象
Aspose.Pdf.BorderInfo border = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All);
//指定顶部边框将为两倍
border.Top.IsDoubled = true;
// 指定底部边框将为两倍
border.Bottom.IsDoubled = true;
//实例化Table对象
Aspose.Pdf.Table table = new Aspose.Pdf.Table();
//指定列的宽度信息
table.ColumnWidths = "100";
//创建行对象
Aspose.Pdf.Row row = table.Rows.Add();
//将表格单元格添加到行的单元格集合
Aspose.Pdf.Cell cell = row.Cells.Add("some text");
//设置单元格对象的边框(双边框)
cell.Border = border;
//将表格添加到Page的段落集合中
page.Paragraphs.Add(table);
dataDir = dataDir + "TableBorderTest_out.pdf";
//保存PDF文档
doc.Save(dataDir);

ASPOSE技术交流QQ群(642018183)已开通,各类资源及时分享,欢迎交流讨论!

如果你对Aspose的产品感兴趣或有任何技术难题都可以扫描下方二维码告诉我们哦~

↓↓↓

q4HAjUm_extraLarge.png



标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP