Criar uma tabela

Aspose.Words permite aos usuários criar tabelas em um documento do zero e fornece vários métodos diferentes para fazê-lo. Este artigo apresenta detalhes sobre como adicionar tabelas formatadas ao seu documento usando cada método, bem como uma comparação de cada método no final do artigo.

Estilos de tabela padrão

A tabela recém-criada é dada valores padrão semelhantes aos usados em Microsoft Word:

Propriedade da tabela Padrão em Aspose.Words
Border Style Single
Border Width 1/2 pt
Cor de fronteira Black
Left and Right Padding 5.4 pts
AutoFit Mode AutoFit to Window
Allow AutoFit True

Criar uma tabela com DocumentBuilder

Em Aspose.Words, os usuários podem criar uma tabela em um documento usando DocumentBuilder. O algoritmo básico para criar uma tabela é o seguinte:

  1. Comece a tabela com StartTable
  2. Adicionar uma célula à tabela usando InsertCell – isso inicia automaticamente uma nova linha
  3. Opcionalmente, use o CellFormat propriedade para especificar a formatação da célula
  4. Insira o conteúdo da célula usando o apropriado DocumentBuilder métodos como Writeln, InsertImage, e outros
  5. Repita os passos 2-4 até que a linha esteja completa
  6. Chamada EndRow para terminar a linha atual
  7. Opcionalmente, use o RowFormat propriedade para especificar formatação de linha
  8. Repita os passos 2-7 até que a tabela esteja completa
  9. Chamada EndTable para terminar a construção da mesa

O processo de criação de uma tabela pode ser claramente visto na seguinte imagem:

creating-table-process

O exemplo de código a seguir mostra como criar uma tabela simples usando DocumentBuilder com formatação padrão:

O exemplo a seguir mostra como criar uma tabela formatada usando o DocumentBuilder:

O exemplo a seguir mostra como inserir uma tabela aninhada usando o DocumentBuilder:

Criar uma tabela via DOM (Document Object Model)

Você pode inserir tabelas diretamente no DOM adicionando um novo Table nó em uma posição específica.

Por favor, note que imediatamente após a criação do nó da tabela, a tabela em si estará completamente vazia, ou seja, ainda não contém linhas e células. Para inserir linhas e células em uma tabela, adicione o apropriado Row e Cell nós da criança para o DOM.

O exemplo de código a seguir mostra como construir uma nova tabela do zero adicionando os nós da criança apropriados à árvore do documento:

Criar uma tabela de HTML

Aspose.Words suporta inserir conteúdo em um documento de uma fonte HTML usando o InsertHtml método. A entrada pode ser uma página HTML completa ou apenas um trecho parcial.

Usando isto InsertHtml método, os usuários podem inserir tabelas no documento através de tags de tabela como <table>, <tr>, <td>.

O exemplo de código a seguir mostra como inserir uma tabela em um documento de uma string contendo tags HTML:

Insira uma cópia de uma tabela existente

Há muitas vezes quando você precisa criar uma tabela com base em uma tabela já existente em um documento. A maneira mais fácil de duplicar uma tabela mantendo toda a formatação é clonar o nó Tabela usando o deepClone método.

A mesma técnica pode ser usada para adicionar cópias de uma linha ou célula existente a uma tabela.

O exemplo de código a seguir mostra como duplicar uma tabela usando construtores de nó:

O exemplo de código a seguir mostra como clonar a última linha de uma tabela e anexá-la à tabela:

Se você está olhando para a criação de tabelas em um documento que cresce dinamicamente com cada registro de sua fonte de dados, então o método acima não é recomendado. Em vez disso, a saída desejada é mais facilmente alcançada usando Mail merge com regiões. Você pode aprender mais sobre esta técnica na Mail Merge com regiões Secção.

Compare maneiras de criar uma tabela

Aspose.Words fornece vários métodos para criar novas tabelas em um documento. Cada método tem suas próprias vantagens e desvantagens, de modo que a escolha de que usar muitas vezes depende da situação específica.

Vamos dar uma olhada mais estreita nessas formas de criar tabelas e comparar seus prós e contras:

Método Vantagens Desvantagens
Viajando DocumentBuilder O método padrão para inserir tabelas e outros conteúdos de documentos Às vezes difícil criar muitas variedades de tabelas ao mesmo tempo com a mesma instância do construtor
Viajando DOM Se encaixa melhor com o código circundante que cria e insere nós diretamente no DOM sem usar um DocumentBuilder A tabela é criada “vazio”: antes de executar a maioria das operações, você deve chamar EnsureMinimum para criar quaisquer nós de criança ausentes
De HTML Pode criar uma nova tabela de origem HTML usando tags como <table>, <tr>, <td> Nem tudo é possível Microsoft Word formatos de tabela podem ser aplicados em HTML
Clonagem de uma tabela existente Você pode criar uma cópia de uma tabela existente, mantendo toda a formatação da linha e da célula Os nós de criança apropriados devem ser removidos antes que a tabela esteja pronta para uso