彩票走势图

Word .NET库组件Spire.Doc系列教程(27):在word中创建表格并插入图片

转帖|使用教程|编辑:李显亮|2019-08-01 11:17:52.107|阅读 1233 次

概述:本系列教程将为大家带来Spire.Doc for .NET在使用过程中的各类实际操作,本篇文章介绍了如何在Word文档中创建表格并插入图片。

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

相关链接:

更多资源查看:Spire.XLS系列教程 | Spire.Doc系列教程 | Spire.PDF系列教程


Spire.Doc for .NET是一个专业的Word .NET库,设计用于帮助开发人员高效地开发创建、阅读、编写、转换和打印任何来自.NET( C#, VB.NET, ASP.NET)平台的Word文档文件的功能。

本系列教程将为大家带来Spire.Doc for .NET在使用过程中的各类实际操作,本篇文章介绍了如何在Word文档中创建表格并插入图片。>>下载Spire.Doc最新试用版体验

在Word文档中,表格可以帮助我们清晰、直观的分析和整理数据。一个表格通常至少包含一行,每行至少包含一个单元格,一个单元格可以包含多种元素如文本和表格(即嵌套表格)等。


C# 创建 Word 表格

在创建表格时,可以预先指定好表格的行数和列数,也可以通过动态的方式向表格中添加行和单元格。

创建预定义行数和列数的表格

通过Table.ResetCells(int rowsNum, int columnsNum)方法来创建一个预先定义好行数和列数的表格。代码示例:

//创建Word文档 
Document document = new Document();
//添加section
Section section = document.AddSection();

//添加表格
Table table = section.AddTable(true);

//指定表格的行数和列数(2行,3列)
table.ResetCells(2, 3);

//获取单元格(第1行第1个单元格)并添加文本
TextRange range = table[0, 0].AddParagraph().AppendText("产品");           
range.CharacterFormat.FontName = "Arial";
range.CharacterFormat.FontSize = 12;
range.CharacterFormat.TextColor = Color.Teal;
range.CharacterFormat.Bold = true;

//获取单元格(第1行第2个单元格)并添加文本
range = table[0, 1].AddParagraph().AppendText("单价");
range.CharacterFormat.FontName = "Arial";
range.CharacterFormat.FontSize = 12;
range.CharacterFormat.TextColor = Color.Teal;
range.CharacterFormat.Bold = true;

//获取单元格(第1行第3个单元格)并添加文本
range = table[0, 2].AddParagraph().AppendText("数量");
range.CharacterFormat.FontName = "Arial";
range.CharacterFormat.FontSize = 12;
range.CharacterFormat.TextColor = Color.Teal;
range.CharacterFormat.Bold = true;

//获取单元格(第2行第1个单元格)并添加文本
range = table[1, 0].AddParagraph().AppendText("A");
range.CharacterFormat.FontName = "Arial";
range.CharacterFormat.FontSize = 10;

//获取单元格(第2行第2个单元格)并添加文本
range = table[1, 1].AddParagraph().AppendText("¥1800");
range.CharacterFormat.FontName = "Arial";
range.CharacterFormat.FontSize = 10;

//获取单元格(第2行第3个单元格)并添加文本
range = table[1, 2].AddParagraph().AppendText("10");
range.CharacterFormat.FontName = "Arial";
range.CharacterFormat.FontSize = 10;

//保存文档
document.SaveToFile("Table.docx");

Word .NET库组件Spire.Doc系列教程:在word中创建表格并插入图片

动态向表格添加行和单元格

如果需要动态地向表格添加行和单元格,需要使用Table.AddRow() 方法和 TableRow.AddCell()方法。代码示例:

//创建Word文档
Document doc = new Document();
//添加section
Section section = doc.AddSection();

//添加表格
Table table = section.AddTable(true);

//添加第1行
TableRow row1 = table.AddRow();

//添加第1个单元格到第1行
TableCell cell1 = row1.AddCell();
cell1.AddParagraph().AppendText("姓 名");

//添加第2个单元格到第1行
TableCell cell2 = row1.AddCell();
cell2.AddParagraph().AppendText("年 龄");

//添加第2行
TableRow row2 = table.AddRow(true,false);

//添加第1个单元格到第2行
TableCell cell3 = row2.AddCell();
cell3.AddParagraph().AppendText("约 翰");

//添加第2个单元格到第2行
TableCell cell4 = row2.AddCell();
cell4.AddParagraph().AppendText("21");

table.AutoFit(AutoFitBehaviorType.AutoFitToWindow);

//保存文档
doc.SaveToFile("Table2.docx");

Word .NET库组件Spire.Doc系列教程:在word中创建表格并插入图片

创建嵌套表格

使用Body.AddTable()方法来向一个表格中的指定单元格添加一个嵌套表格。代码示例:

//创建Word文档
Document doc = new Document();
Section section = doc.AddSection();

//添加表格
Table table = section.AddTable(true);
table.ResetCells(2, 3);

//设置行高和列宽
table.Rows[0].Height = 20;
table.Rows[1].Height = 50;
table.Rows[0].Cells[0].Width = table.Rows[0].Cells[2].Width = 50;
table.Rows[1].Cells[0].Width = table.Rows[1].Cells[2].Width = 50;

table.AutoFit(AutoFitBehaviorType.AutoFitToWindow);

//添加文本到单元格
table[0, 0].AddParagraph().AppendText("学 号");
table[0, 1].AddParagraph().AppendText("姓 名");
table[0, 2].AddParagraph().AppendText("成 绩");
table[1, 0].AddParagraph().AppendText("01");
table[1, 1].AddParagraph().AppendText("张 三");
table[1, 2].AddParagraph().AppendText("详 情");

//添加嵌套表格到第2行第3个单元格
Table nestedTable = table[1, 2].AddTable(true);
nestedTable.ResetCells(3, 2);
nestedTable.AutoFit(AutoFitBehaviorType.AutoFitToContents);

//添加文本到嵌套表格
nestedTable[0, 0].AddParagraph().AppendText("科 目");
nestedTable[0, 1].AddParagraph().AppendText("成 绩");
nestedTable[1, 0].AddParagraph().AppendText("语 文");
nestedTable[1, 1].AddParagraph().AppendText("88");
nestedTable[2, 0].AddParagraph().AppendText("数 学");
nestedTable[2, 1].AddParagraph().AppendText("95");

//保存文档
doc.SaveToFile("Nested_Table.docx", FileFormat.Docx2013);


C# 在 word 表格中插入图片

Spire.Doc 提供 TableCollection 类,我们可以获取指定的表格,然后调用 DocPicture Paragraph.AppendPicture(Image image) 方法插入图片到单元格。

//创建一个document实例并加载示例文档
Document doc = new Document();
doc.LoadFromFile("Sample.docx");

//获取第一个table
Table table1 = (Table)doc.Sections[0].Tables[0];

//插入图片到表格并设置图片宽度和高度 
DocPicture picture = table1.Rows[1].Cells[2].Paragraphs[0].AppendPicture(Image.FromFile("Logo.png"));
picture.Width = 110;
picture.Height = 90;


//保存文档 
doc.SaveToFile("Result.docx", FileFormat.Docx);

Word .NET库组件Spire.Doc系列教程:在word中创建表格并插入图片


*购买Spire.Doc正版授权的朋友可以点击哦~~



标签:

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


为你推荐

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


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP