As seções de cabeçalho e rodapé em um documento mostram informações do documento, como título do documento, logotipo, cabeçalho do capítulo, números de página, etc. Podemos adicionar qualquer texto ou imagem nos cabeçalhos/rodapés do documento PDF programaticamente. Neste artigo, aprenderemos como adicionar cabeçalhos e rodapés em documentos PDF usando C#.
Os seguintes tópicos serão abordados neste artigo:
- API C# para adicionar cabeçalhos e rodapés em documentos PDF
- Adicionar texto no cabeçalho do PDF usando C #
- Adicionar texto no rodapé do PDF usando C #
- Inserir imagem no cabeçalho do PDF usando C #
- Inserir imagem no rodapé do PDF usando C #
- Adicionar diferentes cabeçalhos e rodapés em diferentes páginas
- Adicionar números de página no rodapé do PDF usando C #
API C# para adicionar cabeçalhos e rodapés em documentos PDF
Para adicionar cabeçalhos e rodapés em arquivos PDF, usaremos Aspose.PDF for .NET API. Ele nos permite gerar, modificar, converter, renderizar, proteger e imprimir documentos suportados sem usar o Adobe Acrobat. Por favor, baixe a DLL da API ou instale-a usando NuGet.
Install-Package Aspose.PDF
Adicionar texto no cabeçalho do PDF usando C
Podemos adicionar texto no cabeçalho de um documento PDF existente seguindo as etapas abaixo:
- Primeiramente, carregue um documento PDF usando a classe Document com o caminho do arquivo de entrada como argumento. É a classe principal que representa um documento PDF e permite realizar diversas funcionalidades.
- Em seguida, crie uma instância da classe TextStamp com um texto para mostrar no cabeçalho do documento.
- Em seguida, defina várias propriedades, como TopMargin, HorizontalAlignment e VerticalAlignment como Top, etc.
- Opcionalmente, defina ForegroundColor, Font, FontStyle, FontSize, BackgroundColor, RotateAngle e nível de Zoom para o texto.
- Depois disso, percorra todas as páginas e adicione o cabeçalho usando o método Page.AddStamp() com o objeto TextStamp.
- Finalmente, chame o método Document.Save() com o caminho do arquivo de saída como um argumento para salvar o arquivo de saída.
O exemplo de código a seguir mostra como adicionar texto no cabeçalho de um documento PDF usando C#.
// Este exemplo de código demonstra como adicionar texto no cabeçalho de um documento PDF existente.
// Carregar o documento PDF
Document pdfDocument = new Document(@"C:\Files\sample.pdf");
// Criar cabeçalho
TextStamp textStamp = new TextStamp("Header Text");
// Definir propriedades do carimbo
textStamp.TopMargin = 10;
textStamp.HorizontalAlignment = HorizontalAlignment.Center;
textStamp.VerticalAlignment = VerticalAlignment.Top;
// Especifique o estilo da fonte
textStamp.TextState.FontStyle = FontStyles.Bold;
textStamp.TextState.ForegroundColor = Color.Red;
textStamp.TextState.FontSize = 14;
textStamp.TextState.BackgroundColor = Color.Pink;
textStamp.TextState.Font = FontRepository.FindFont("Verdana");
// Adicionar cabeçalho em todas as páginas
foreach (Page page in pdfDocument.Pages)
{
page.AddStamp(textStamp);
}
// Salve o documento atualizado
pdfDocument.Save(@"C:\Files\output.pdf");
Adicionar texto no rodapé do PDF usando C
Podemos adicionar texto no rodapé de documentos PDF programaticamente seguindo as etapas mencionadas anteriormente. No entanto, precisamos definir BottomMargin e VerticalAlignment como Bottom para mostrar o texto no rodapé.
O exemplo de código a seguir mostra como adicionar texto no rodapé de um documento PDF usando C#.
// Este exemplo de código demonstra como adicionar texto no rodapé de um documento PDF existente.
// Carregar o documento PDF
Document pdfDocument = new Document(@"C:\Files\sample.pdf");
// Criar rodapé
TextStamp textStamp = new TextStamp("Footer Text");
// Definir propriedades do carimbo
textStamp.BottomMargin = 10;
textStamp.HorizontalAlignment = HorizontalAlignment.Center;
textStamp.VerticalAlignment = VerticalAlignment.Bottom;
// Adicionar rodapé em todas as páginas
foreach (Page page in pdfDocument.Pages)
{
page.AddStamp(textStamp);
}
// Salve o documento atualizado
pdfDocument.Save(@"C:\Files\output.pdf");
Inserir imagem no cabeçalho do PDF usando C
Também podemos adicionar uma imagem no cabeçalho de um documento PDF existente seguindo as etapas abaixo:
- Primeiramente, carregue um documento PDF usando a classe Document com o caminho do arquivo de entrada como argumento.
- Em seguida, crie uma instância da classe ImageStamp com o caminho do arquivo de imagem como argumento.
- Em seguida, defina várias propriedades, como TopMargin, HorizontalAlignment e VerticalAlignment como Top, etc.
- Depois disso, percorra todas as páginas e adicione o cabeçalho usando o método Page.AddStamp() com o objeto ImageStamp.
- Finalmente, chame o método Document.Save() com o caminho do arquivo de saída como um argumento para salvar o arquivo de saída.
O exemplo de código a seguir mostra como adicionar uma imagem no cabeçalho de um documento PDF usando C#.
// Este exemplo de código demonstra como adicionar uma imagem no cabeçalho de um documento PDF existente.
// Carregar o documento PDF
Document pdfDocument = new Document(@"C:\Files\sample.pdf");
// Criar cabeçalho
ImageStamp imageStamp = new ImageStamp(@"C:\Files\conholdate-logo.jpg");
// Definir propriedades do carimbo
imageStamp.TopMargin = 10;
imageStamp.HorizontalAlignment = HorizontalAlignment.Center;
imageStamp.VerticalAlignment = VerticalAlignment.Top;
// Adicionar cabeçalho em todas as páginas
foreach (Page page in pdfDocument.Pages)
{
page.AddStamp(imageStamp);
}
// Salve o documento atualizado
pdfDocument.Save(@"C:\Files\output.pdf");
Inserir imagem no rodapé do PDF usando C
Podemos adicionar imagens no rodapé de documentos PDF programaticamente seguindo as etapas mencionadas anteriormente. No entanto, precisamos definir BottomMargin e VerticalAlignment como Bottom para mostrar a imagem no rodapé.
O exemplo de código a seguir mostra como adicionar uma imagem no rodapé de um documento PDF usando C#.
// Este exemplo de código demonstra como adicionar uma imagem no rodapé de um documento PDF existente.
// Carregar o documento PDF
Document pdfDocument = new Document(@"C:\Files\sample.pdf");
// Criar rodapé
ImageStamp imageStamp = new ImageStamp(@"C:\Files\conholdate-logo.jpg");
// Definir propriedades do carimbo
imageStamp.BottomMargin = 10;
imageStamp.HorizontalAlignment = HorizontalAlignment.Center;
imageStamp.VerticalAlignment = VerticalAlignment.Bottom;
// Adicionar rodapé em todas as páginas
foreach (Page page in pdfDocument.Pages)
{
page.AddStamp(imageStamp);
}
// Salve o documento atualizado
pdfDocument.Save(@"C:\Files\output.pdf");
Adicionar diferentes cabeçalhos e rodapés em diferentes páginas
Podemos adicionar diferentes cabeçalhos/rodapés para diferentes páginas em um único documento PDF seguindo as etapas abaixo:
- Primeiramente, carregue um documento PDF usando a classe Document com o caminho do arquivo de entrada como argumento.
- Em seguida, crie várias instâncias da classe ImageStamp com o caminho do arquivo de imagem e/ou a classe TextStamp com um texto para mostrar.
- Em seguida, defina várias propriedades, como TopMargin, HorizontalAlignment e VerticalAlignment como Top para o cabeçalho e BottomMargin e VerticalAlignment como Bottom para o rodapé.
- Depois disso, adicione cabeçalho ou rodapé usando o método Page.AddStamp() com o objeto ImageStamp ou TextStamp para uma página.
- Finalmente, chame o método Document.Save() com o caminho do arquivo de saída como um argumento para salvar o arquivo de saída.
O exemplo de código a seguir mostra como adicionar vários cabeçalhos e rodapés em um único documento PDF usando C#.
// Este exemplo de código demonstra como adicionar cabeçalhos diferentes para páginas diferentes em um único documento PDF.
// Carregar o documento PDF
Document pdfDocument = new Document(@"C:\Files\sample.pdf");
// Crie três selos
ImageStamp stamp1 = new ImageStamp(@"C:\Files\PDF\conholdate-logo.jpg");
TextStamp stamp2 = new TextStamp("Header Stamp 2");
TextStamp stamp3 = new TextStamp("Header Stamp 3");
// Definir alinhamento de carimbo para carimbo1
stamp1.VerticalAlignment = VerticalAlignment.Top;
stamp1.HorizontalAlignment = HorizontalAlignment.Center;
// Definir alinhamento de carimbo para carimbo2
stamp2.VerticalAlignment = VerticalAlignment.Top;
// Definir informações de alinhamento horizontal para carimbo como alinhado ao centro
stamp2.HorizontalAlignment = HorizontalAlignment.Center;
// Defina o fator de zoom para o objeto de carimbo
stamp2.Zoom = 10;
// Definir alinhamento de carimbo para carimbo3
stamp3.VerticalAlignment = VerticalAlignment.Top;
// Defina as informações de alinhamento horizontal para o objeto de carimbo como alinhado ao centro
stamp3.HorizontalAlignment = HorizontalAlignment.Center;
// Defina o ângulo de rotação para o objeto de carimbo
stamp3.RotateAngle = 35;
// Adicione o primeiro carimbo na primeira página;
pdfDocument.Pages[1].AddStamp(stamp1);
// Adicionar segundo carimbo na segunda página;
pdfDocument.Pages[2].AddStamp(stamp2);
// Adicione o terceiro carimbo na terceira página.
pdfDocument.Pages[3].AddStamp(stamp3);
// Salve o documento atualizado
pdfDocument.Save(@"C:\Files\output.pdf");
Adicionar números de página no rodapé do PDF usando C
Podemos adicionar números de página na seção de rodapé de documentos PDF seguindo as etapas abaixo:
- Primeiramente, carregue um documento PDF usando a classe Document com o caminho do arquivo de entrada como argumento.
- Em seguida, faça o seguinte para cada página na coleção Document.Pages.
- Crie uma instância da classe TextStamp com um texto concatenado com o número da página atual.
- Em seguida, defina várias propriedades, como BottomMargin, HorizontalAlignment e VerticalAlignment como Bottom, etc.
- Depois disso, chame o método Page.AddStamp() com o objeto TextStamp para adicionar o número da página no rodapé.
- Finalmente, chame o método Document.Save() com o caminho do arquivo de saída como um argumento para salvar o arquivo de saída.
O exemplo de código a seguir mostra como adicionar um número de página para cada página no rodapé de um documento PDF usando C#.
// Este exemplo de código demonstra como adicionar o número da página no rodapé de cada página de um documento PDF.
// Carregar o documento PDF
Document pdfDocument = new Document(@"C:\Files\sample.pdf");
// Adicionar rodapé em todas as páginas
foreach (Page page in pdfDocument.Pages)
{
// Criar rodapé
TextStamp textStamp = new TextStamp("Page " + page.Number + " of " + pdfDocument.Pages.Count + " pages.");
// Definir propriedades do carimbo
textStamp.BottomMargin = 10;
textStamp.HorizontalAlignment = HorizontalAlignment.Center;
textStamp.VerticalAlignment = VerticalAlignment.Bottom;
// Adicionar carimbo
page.AddStamp(textStamp);
}
// Salve o documento atualizado
pdfDocument.Save(@"C:\Files\PDF\output.pdf");
Obtenha uma licença de API gratuita
Você pode experimentar a API sem limitações de avaliação solicitando uma licença temporária gratuita.
Conclusão
Neste artigo, aprendemos como adicionar um texto ou uma imagem nos cabeçalhos/rodapés de arquivos PDF existentes usando C#. Também vimos como adicionar diferentes cabeçalhos em diferentes páginas em um documento PDF e como adicionar um número de página no rodapé de um documento. Além disso, você pode aprender mais sobre Aspose.PDF para .NET API usando a documentação. Em caso de qualquer ambiguidade, não hesite em contactar-nos no fórum.