Elemento de tabela de estilo
Neste tutorial detalhado, orientaremos você passo a passo pelo código-fonte C# fornecido para formatar o elemento da matriz usando Aspose.PDF para .NET. Siga as instruções abaixo para entender como personalizar os estilos e propriedades do elemento da matriz.
Passo 1: Configurando o ambiente
Antes de começar, certifique-se de ter configurado seu ambiente de desenvolvimento para usar Aspose.PDF for .NET. Isso inclui a instalação da biblioteca Aspose.PDF e a configuração do seu projeto para referenciá-la.
Passo 2: Criando um documento
Nesta etapa, criaremos um novo objeto de documento Aspose.PDF.
// O caminho para o diretório de documentos.
string dataDir = "YOUR DOCUMENTS DIRECTORY";
// Criação de documento
Document document = new Document();
ITaggedContent taggedContent = document.TaggedContent;
taggedContent.SetTitle("Example of table formatting");
taggedContent.SetLanguage("fr-FR");
Criamos um novo documento e definimos o título e o idioma do documento.
Etapa 3: Obtenção do elemento da estrutura raiz
Nesta etapa obteremos o elemento da estrutura raiz do nosso documento.
//Obtenha o elemento da estrutura raiz
StructureElement rootElement = taggedContent.RootElement;
Obtivemos o elemento da estrutura raiz que servirá como contêiner para o elemento do array.
Etapa 4: Criando o elemento da estrutura do array
Agora vamos criar um novo elemento de estrutura de tabela para nosso documento.
// Crie o elemento da estrutura do array
TableElement tableElement = taggedContent.CreateTableElement();
rootElement.AppendChild(tableElement);
Criamos um novo elemento de estrutura de array e o adicionamos ao elemento de estrutura raiz.
Etapa 5: Personalização de estilos e propriedades de elementos de matriz
Nesta etapa, personalizaremos os estilos e propriedades do elemento do array.
// Personalize os estilos e propriedades do elemento da matriz
tableElement.BackgroundColor = Color.Beige;
tableElement.Border = new BorderInfo(BorderSide.All, 0.80F, Color.Gray);
tableElement. Alignment = HorizontalAlignment. Center;
tableElement.Broken = TableBroken.Vertical;
tableElement.ColumnAdjustment = ColumnAdjustment.AutoFitToWindow;
tableElement. ColumnWidths = "80 80 80 80 80";
tableElement.DefaultCellBorder = new BorderInfo(BorderSide.All, 0.50F, Color.DarkBlue);
tableElement. DefaultCellPadding = new MarginInfo(16.0, 2.0, 8.0, 2.0);
tableElement.DefaultCellTextState.ForegroundColor = Color.DarkCyan;
tableElement.DefaultCellTextState.FontSize = 8F;
tableElement. DefaultColumnWidth = "70";
tableElement. IsBroken = false;
tableElement.IsBordersIncluded = true;
tableElement. Left = 0F;
tableElement. Top = 40F;
tableElement.RepeatingColumnsCount = 2;
tableElement.RepeatingRowsCount = 3;
// Personalize o estilo das linhas repetidas
TextState rowStyle = new TextState();
rowStyle.BackgroundColor = Color.LightCoral;
tableElement.RepeatingRowsStyle = rowStyle;
Usamos várias propriedades para personalizar o elemento da tabela, como cor de fundo, bordas, alinhamento, estilo de célula padrão, margens, largura da coluna, etc.
Etapa 6: adicionar cabeçalhos, corpo e rodapé da tabela
Agora vamos adicionar os cabeçalhos, corpo e rodapé da tabela ao elemento da tabela.
// Adicionar cabeçalhos de tabela
TableTHeadElement tableTHeadElement = tableElement.CreateTHead();
TableTBodyElement tableTBodyElement = tableElement.CreateTBody();
TableTFootElement tableTFootElement = tableElement.CreateTFoot();
// Número de linhas e colunas na tabela
int rowCount = 10;
int colCount = 5;
int rowIndex;
int colIndex;
// Crie a linha do cabeçalho da tabela
TableTRElement headTrElement = tableTHeadElement.CreateTR();
headTrElement.AlternativeText = "Header Row";
for (colIndex = 0; colIndex < colCount; colIndex++)
{
TableTHElement theElement = headTrElement.CreateTH();
theElement.SetText(string.Format("Header {0}", colIndex));
}
//Adicione as linhas do corpo da tabela
for (rowIndex = 0; rowIndex < rowCount; rowIndex++)
{
TableTRElement trElement = tableTBodyElement.CreateTR();
trElement.AlternativeText = string.Format("Row {0}", rowIndex);
for (colIndex = 0; colIndex < colCount; colIndex++)
{
TableTDElement tdelement = trElement.CreateTD();
tdElement.SetText(string.Format("Cell [{0}, {1}]", rowIndex, colIndex));
}
}
// Adicione a linha de rodapé da mesa
TableTRElement footTrElement = tableTFootElement.CreateTR();
footTrElement.AlternativeText = "Footline";
for (colIndex = 0; colIndex < colCount; colIndex++)
{
TableTDElement tdElement = footTrElement.CreateTD();
tdElement.SetText(string.Format("Foot {0}", colIndex));
}
Adicionamos os cabeçalhos, as linhas do corpo e a linha do rodapé à tabela usando os elementos correspondentes.
Passo 7: Salvando o documento PDF marcado
Agora que criamos nosso documento com o elemento de tabela estilizado, vamos salvá-lo como um documento PDF marcado.
// Salve o documento PDF marcado
document.Save(dataDir + "StyleTableElement.pdf");
Salvamos o documento PDF marcado no diretório especificado.
Etapa 8: Validação de conformidade com PDF/UA
A seguir, validaremos a conformidade PDF/UA do nosso documento.
// Verificação de conformidade com PDF/UA
document = new Document(dataDir + "StyleTableElement.pdf");
bool isPdfUaCompliance = document.Validate(dataDir + "StyleTableElement.xml", PdfFormat.PDF_UA_1);
Console.WriteLine(string.Format("PDF/UA Compliance: {0}", isPdfUaCompliance));
Carregamos o documento PDF marcado e validamos sua conformidade com PDF/UA gerando um relatório XML.
Exemplo de código-fonte para elemento de tabela de estilo usando Aspose.PDF para .NET
// O caminho para o diretório de documentos.
string dataDir = "YOUR DOCUMENT DIRECTORY";
// Criar documento
Document document = new Document();
ITaggedContent taggedContent = document.TaggedContent;
taggedContent.SetTitle("Example table style");
taggedContent.SetLanguage("en-US");
// Obtenha o elemento da estrutura raiz
StructureElement rootElement = taggedContent.RootElement;
// Criar elemento de estrutura de tabela
TableElement tableElement = taggedContent.CreateTableElement();
rootElement.AppendChild(tableElement);
tableElement.BackgroundColor = Color.Beige;
tableElement.Border = new BorderInfo(BorderSide.All, 0.80F, Color.Gray);
tableElement.Alignment = HorizontalAlignment.Center;
tableElement.Broken = TableBroken.Vertical;
tableElement.ColumnAdjustment = ColumnAdjustment.AutoFitToWindow;
tableElement.ColumnWidths = "80 80 80 80 80";
tableElement.DefaultCellBorder = new BorderInfo(BorderSide.All, 0.50F, Color.DarkBlue);
tableElement.DefaultCellPadding = new MarginInfo(16.0, 2.0, 8.0, 2.0);
tableElement.DefaultCellTextState.ForegroundColor = Color.DarkCyan;
tableElement.DefaultCellTextState.FontSize = 8F;
tableElement.DefaultColumnWidth = "70";
tableElement.IsBroken = false;
tableElement.IsBordersIncluded = true;
tableElement.Left = 0F;
tableElement.Top = 40F;
tableElement.RepeatingColumnsCount = 2;
tableElement.RepeatingRowsCount = 3;
TextState rowStyle = new TextState();
rowStyle.BackgroundColor = Color.LightCoral;
tableElement.RepeatingRowsStyle = rowStyle;
TableTHeadElement tableTHeadElement = tableElement.CreateTHead();
TableTBodyElement tableTBodyElement = tableElement.CreateTBody();
TableTFootElement tableTFootElement = tableElement.CreateTFoot();
int rowCount = 10;
int colCount = 5;
int rowIndex;
int colIndex;
TableTRElement headTrElement = tableTHeadElement.CreateTR();
headTrElement.AlternativeText = "Head Row";
for (colIndex = 0; colIndex < colCount; colIndex++)
{
TableTHElement thElement = headTrElement.CreateTH();
thElement.SetText(String.Format("Head {0}", colIndex));
}
for (rowIndex = 0; rowIndex < rowCount; rowIndex++)
{
TableTRElement trElement = tableTBodyElement.CreateTR();
trElement.AlternativeText = String.Format("Row {0}", rowIndex);
for (colIndex = 0; colIndex < colCount; colIndex++)
{
TableTDElement tdElement = trElement.CreateTD();
tdElement.SetText(String.Format("Cell [{0}, {1}]", rowIndex, colIndex));
}
}
TableTRElement footTrElement = tableTFootElement.CreateTR();
footTrElement.AlternativeText = "Foot Row";
for (colIndex = 0; colIndex < colCount; colIndex++)
{
TableTDElement tdElement = footTrElement.CreateTD();
tdElement.SetText(String.Format("Foot {0}", colIndex));
}
// Salvar documento PDF marcado
document.Save(dataDir + "StyleTableElement.pdf");
// Verificando a conformidade com PDF/UA
document = new Document(dataDir + "StyleTableElement.pdf");
bool isPdfUaCompliance = document.Validate(dataDir + "StyleTableElement.xml", PdfFormat.PDF_UA_1);
Console.WriteLine(String.Format("PDF/UA compliance: {0}", isPdfUaCompliance));
Conclusão
Neste tutorial, aprendemos como formatar o elemento do array com Aspose.PDF para .NET. Personalizamos os estilos e propriedades do elemento de tabela, adicionamos cabeçalhos, linhas de corpo e rodapé, salvamos o documento PDF marcado e validamos sua conformidade com PDF/UA.
Perguntas frequentes
P: Qual é o objetivo deste tutorial sobre como formatar o elemento da matriz usando Aspose.PDF para .NET?
R: O objetivo deste tutorial é guiá-lo através do processo de formatação do elemento array em um documento PDF usando Aspose.PDF for .NET. Ele fornece instruções passo a passo e exemplos de código-fonte C# para ajudá-lo a personalizar os estilos e as propriedades do elemento de matriz.
P: Quais são os pré-requisitos para seguir este tutorial?
R: Antes de começar, certifique-se de ter configurado seu ambiente de desenvolvimento para usar Aspose.PDF for .NET. Isso envolve a instalação da biblioteca Aspose.PDF e a configuração do seu projeto para referenciá-la.
P: Como posso criar um novo documento PDF e definir seu título e idioma usando Aspose.PDF for .NET?
R: Para criar um novo documento PDF, você precisa criar umDocument
objeto da biblioteca Aspose.PDF. O código-fonte C# fornecido pelo tutorial demonstra como criar um documento e definir seu título e propriedades de idioma.
P: Qual é o significado do elemento de estrutura raiz em um documento PDF?
R: O elemento da estrutura raiz atua como um contêiner para outros elementos da estrutura, ajudando a organizar e categorizar o conteúdo do documento PDF. Desempenha um papel crucial no estabelecimento da estrutura lógica do documento.
P: Como posso criar e personalizar um elemento de estrutura de array usando Aspose.PDF for .NET?
R: Você pode criar um elemento de estrutura de array usando oCreateTableElement()
método. O código-fonte do tutorial fornece exemplos de personalização de várias propriedades do elemento da tabela, como cor de fundo, bordas, alinhamento, largura da coluna e muito mais.
P: Posso personalizar os estilos e propriedades das células da tabela no elemento da matriz?
R: Sim, o tutorial aborda como personalizar os estilos e propriedades de todo o elemento da tabela, incluindo cabeçalhos, linhas do corpo e rodapé. No entanto, ele não aborda especificamente a personalização de células individuais da tabela.
P: Como posso adicionar cabeçalhos, linhas de corpo e rodapé ao elemento da tabela?
R: O tutorial explica como criar e adicionar cabeçalhos, linhas de corpo e rodapé ao elemento da tabela usando os métodos apropriados fornecidos pelo Aspose.PDF para .NET.
P: O que é conformidade com PDF/UA e como posso validá-la para meu documento PDF marcado?
R: A conformidade com PDF/UA garante que o documento PDF esteja em conformidade com os padrões de acessibilidade, tornando-o mais acessível para usuários com deficiência. O tutorial demonstra como validar a conformidade PDF/UA usando oValidate()
método e gerar um relatório de conformidade XML.
P: Como posso incorporar esses conceitos em meus próprios aplicativos .NET?
R: Você pode usar os exemplos de código-fonte C# fornecidos como um guia para implementar a formatação de elementos de matriz em seus próprios aplicativos .NET. Modifique e adapte o código para atender às suas necessidades e integre-o aos seus projetos.
P: Existem práticas recomendadas para formatação de elementos de matriz em documentos PDF?
R: Ao formatar elementos de array (tabelas), considere a legibilidade e acessibilidade do conteúdo. Use fontes claras e legíveis, cores apropriadas e mantenha um layout consistente. Valide a conformidade com PDF/UA para garantir que os padrões de acessibilidade sejam atendidos.
P: Que outros recursos do Aspose.PDF for .NET posso explorar para personalização de documentos PDF?
R: Aspose.PDF for .NET oferece uma variedade de recursos para personalização de documentos PDF, incluindo manipulação de texto, inserção de imagens, gerenciamento de campos de formulário, assinaturas digitais, anotações e muito mais. Consulte a documentação e recursos oficiais para explorar funcionalidades adicionais.