Siga esta postagem do blog para aprender como adicionar cabeçalhos de tabela em documentos do Word programaticamente. FileFormat.Words oferece métodos ricos de criação e manipulação de tabela.
Visão geral {.wp-block-heading} As tabelas de dados são elementos críticos nos documentos MS Word. Trabalhar com tabelas é uma tarefa de rotina, mas e se houver vários documentos com várias tabelas de dados envolvidas? Obviamente, algum tipo de automação será necessária para automatizar as tarefas repetitivas para economizar tempo e aumentar a produtividade. Portanto, FileFormat.words é uma biblioteca .NET de código aberto para automatizar a criação, modificação e processamento de palavras. Neste artigo, exploraremos como inserir cabeçalhos de tabela em documentos do Word usando esta API C#. No entanto, você pode visitar nossos [artigos] anteriores 4 em vários tópicos relacionados a tabelas no MS Word . Passaremos pelas seções a seguir neste post do blog:
- Trabalhando com cabeçalhos de tabela - instalação da API
- Adicionando cabeçalhos de tabela em arquivos do Word Programatataticamente
Trabalhando com cabeçalhos de mesa - instalação da API
O procedimento de instalação do FileFormat.words para a biblioteca .NET é uma questão de segundos. Esta API .NET de nível empresarial fornece uma vasta pilha de recursos que os usuários podem aproveitar. Portanto, você pode baixar o Nuget Package ou executar o seguinte comando no Nuget Package Manager.
Install-Package FileFormat.Words
Adicionando cabeçalhos de tabela em arquivos de palavras programaticamente
A instalação é concluída, a próxima etapa é escrever o trecho de código imediatamente. Além disso, podemos não apenas criar tabela no documento do Word, mas também podemos personalizar o layout das tabelas programaticamente. Você pode seguir as etapas e o trecho de código mencionado abaixo:
- Instanciar um objeto da classe Document.
- Inicialize o construtor da classe Body com o objeto da classe de documentos.
- Crie uma instância da classe tabela.
- Defina o cabeçalho da primeira coluna, invocando o método TableHeaders.
- Invoque o método Apêndos para adicionar as linhas à tabela.
- Ligue para o método AppendChild para adicionar a tabela ao corpo do documento.
- O método Salvar salvará o documento do Word no disco.
using FileFormat.Words;
using FileFormat.Words.Table;
namespace Example
{
class Program
{
static void Main(string[] args)
{
// Instantiate an object of the Document class.
using (Document doc = new Document())
{
// Initialize the constructor of the Body class with the Document class object.
Body body = new Body(doc);
// Create an instance of the Table class.
Table table = new Table();
// Initialize the constructor of the TopBorder class to set the border of the top side of the table.
TopBorder topBorder = new TopBorder();
// Invoke the dashed_border method to set the border style and border line width.
topBorder.dashed_border(20);
// To set the border of the bottom side of the table.
BottomBorder bottomBorder = new BottomBorder();
bottomBorder.dashed_border(20);
// To set the border of the right side of the table.
RightBorder rightBorder = new RightBorder();
rightBorder.dashed_border(20);
// To set the border of the left side of the table.
LeftBorder leftBorder = new LeftBorder();
leftBorder.dashed_border(20);
// To set the inside vertical border of the table.
InsideVerticalBorder insideVerticalBorder = new InsideVerticalBorder();
insideVerticalBorder.dashed_border(20);
// To set the inside vehorizontalrtical border of the table.
InsideHorizontalBorder insideHorizontalBorder = new InsideHorizontalBorder();
insideHorizontalBorder.dashed_border(20);
// Create an instance of the TableBorders class.
TableBorders tableBorders = new TableBorders();
// Append the object of the TopBorder class to the object of the TableBorders class.
tableBorders.AppendTopBorder(topBorder);
// Append the object of the BottomBorder class.
tableBorders.AppendBottomBorder(bottomBorder);
// Append the object of the RightBorder class.
tableBorders.AppendRightBorder(rightBorder);
// Append the object of the LeftBorder class.
tableBorders.AppendLeftBorder(leftBorder);
// Append the object of the InsideVerticalBorder class.
tableBorders.AppendInsideVerticalBorder(insideVerticalBorder);
// Append the object of the InsideHorizontalBorder class.
tableBorders.AppendInsideHorizontalBorder(insideHorizontalBorder);
// Initialize an instance of the TableProperties class.
TableProperties tblProp = new TableProperties();
// Invoke the Append method to attach the object of the TableBorders class.
tblProp.Append(tableBorders);
// Create an instance of the TableJustification class
TableJustification tableJustification = new TableJustification();
// Call the AlignLeft method to position the table on left side of the document.
tableJustification.AlignLeft();
// Invoke the Append method to attach the tableJustification object to the tblProp object.
tblProp.Append(tableJustification);
// The AppendChild method will attach the table propertiese to the table.
table.AppendChild(tblProp);
// Create an object of the TableRow class to create a table row.
TableRow tableRow = new TableRow();
TableRow tableRow2 = new TableRow();
// Initialize an istance of the TableCell class.
TableCell tableCell = new TableCell();
Paragraph para = new Paragraph();
Run run = new Run();
// Set the header of the first column by invoking the TableHeaders method.
table.TableHeaders("Country");
run.Text = "England";
para.AppendChild(run);
// Call the Append method to add text inside the table cell.
tableCell.Append(para);
// Create an object of the TableCellProperties table properties
TableCellProperties tblCellProps = new TableCellProperties();
// Set the width of table cell by initializing the object of the TableCellWidth class and append to tblCellProps object.
tblCellProps.Append(new TableCellWidth("2400"));
// Append method will attach the tblCellProps object with the object of the TableCell class.
tableCell.Append(tblCellProps);
TableCell tableCell2 = new TableCell();
Paragraph para2 = new Paragraph();
Run run2 = new Run();
// Invoke the TableHeaders method to set the header of the second column
table.TableHeaders("Capital");
run2.Text = "London";
para2.AppendChild(run2);
tableCell2.Append(para2);
TableCellProperties tblCellProps2 = new TableCellProperties();
tblCellProps2.Append(new TableCellWidth("1400"));
tableCell2.Append(tblCellProps2);
TableCell tableCell3 = new TableCell();
Paragraph para3 = new Paragraph();
Run run3 = new Run();
table.TableHeaders("Population");
run3.Text = "1000000";
para3.AppendChild(run3);
tableCell3.Append(para3);
TableCellProperties tblCellProps3 = new TableCellProperties();
tblCellProps3.Append(new TableCellWidth("1400"));
tableCell3.Append(tblCellProps3);
// Call the Append method to add cells into table row.
tableRow.Append(tableCell);
tableRow.Append(tableCell2);
tableRow.Append(tableCell3);
// create table cell
TableCell _tableCell = new TableCell();
Paragraph _para = new Paragraph();
Run _run = new Run();
_run.Text = "Pakistan";
_para.AppendChild(_run);
_tableCell.Append(_para);
TableCellProperties tblCellProps1_ = new TableCellProperties();
tblCellProps1_.Append(new TableCellWidth("2400"));
_tableCell.Append(tblCellProps1_);
TableCell _tableCell2 = new TableCell();
Paragraph _para2 = new Paragraph();
Run _run2 = new Run();
_run2.Text = "Islamabad";
_para2.AppendChild(_run2);
_tableCell2.Append(_para2);
TableCellProperties tblCellProps2_ = new TableCellProperties();
tblCellProps2_.Append(new TableCellWidth("1400"));
_tableCell2.Append(tblCellProps2_);
TableCell _tableCell3 = new TableCell();
Paragraph _para3 = new Paragraph();
Run _run3 = new Run();
_run3.Text = "2000000";
_para3.AppendChild(_run3);
_tableCell3.Append(_para3);
TableCellProperties tblCellProps3_ = new TableCellProperties();
tblCellProps3_.Append(new TableCellWidth("1400"));
_tableCell3.Append(tblCellProps3_);
tableRow2.Append(_tableCell);
tableRow2.Append(_tableCell2);
tableRow2.Append(_tableCell3);
// Invoke the Append method to add the rows into table.
table.Append(tableRow);
table.Append(tableRow2);
// Call the AppendChild method to add the table to the body of the document.
body.AppendChild(table);
// The Save method will save the Word document onto the disk.
doc.Save("/Users/Mustafa/Desktop/Docs.docx");
}
}
}
}
Copie e cole o código acima no seu arquivo principal e execute o programa. Você verá a saída mostrada na imagem abaixo:
Conclusão
Estamos encerrando esta postagem no blog aqui com a esperança de que você aprendeu a inserir cabeçalhos de tabela em documentos do Word usando a biblioteca FileFormat.words. Além disso, você passou pelo processo de instalação e pelo trecho de código também. Além disso, existem outros métodos práticos que você pode explorar na documentação. Finalmente, FileFormat.com continua a escrever postagens no blog sobre outros tópicos. Além disso, você pode nos seguir em nossas plataformas de mídia social, incluindo Facebook, LinkedIn e Twitter.
Contribua
Desde FileFormat.words para .net é um projeto de código aberto e está disponível no Github. Portanto, a contribuição da comunidade é muito apreciada.
Faça uma pergunta
Você pode nos informar sobre suas perguntas ou consultas em nosso fórum.
Perguntas frequentes-perguntas frequentes
** Como você insere uma tabela com cabeçalhos?** Siga este link para aprender como inserir cabeçalhos de tabela em C#.
veja também
- Como criar um documento do Word em C# usando o FileFormat.words
- Como editar um documento do Word em C# usando o FileFormat.words
- Como fazer uma tabela em arquivos do Word usando o FileFormat.words
- Como executar Localizar e substituir nas tabelas MS Word usando C#
- Como faço para abrir um arquivo DOCX em C# usando o FileFormat.words?