Adicionando marca d’água (Watermark)
Neste post demonstrarei como adicionar uma marca d’água no texto.
Siga os passos descritos e veja como é simples adicionar uma watermark no texto.
using System;
using System.IO;
using iTextSharp.text;
using iTextSharp.text.pdf;
public string PdfComMarcadAgua()
{
Document documento = new Document();
try
{
//Escreve o arquivo no diretório
PdfWriter.GetInstance(documento, new FileStream(@"C:\Parte6.pdf", FileMode.Create));
//Informa a posição da marca d'água
iTextSharp.text.Image watermark = iTextSharp.text.Image.GetInstance(@"C:\watermark.jpg");
watermark.SetAbsolutePosition(120, 150);
//Adicionando o cabeçalho que será exibido na página 1
HeaderFooter header = new HeaderFooter(new Phrase("Este é o cabeçalho"), false);
documento.Header = header;
//Abre o documento
documento.Open();
//Rotaciona a página a partir da página 2
documento.SetPageSize(PageSize.A4.Rotate());
//Adiciona a imagem ao documento
documento.Add(watermark);
//Adiciona o rodapé
HeaderFooter footer = new HeaderFooter(new Phrase("Esta é a página: "), true);
documento.Footer = footer;
//Adicionando conteúdo ao documento
documento.Add(new Paragraph("Olá mundo!!!"));
//Adiciona uma nova página
documento.Close();
}
catch (IOException e)
{
return e.Message;
}
catch (Exception e)
{
return e.Message;
}
documento.Close();
return "Arquivo gerado com sucesso!!!";
}
Posts Relacionados:
- Criando um documento Pdf com iTextSharp – Parte VII
- Criando um documento Pdf com iTextSharp – Parte II
- Criando um documento Pdf com iTextSharp – Parte V
- Criando um documento pdf com iTextSharp – Parte I
- Criando um documento Pdf com iTextSharp – Parte III
- Criando um documento Pdf com iTextSharp – Parte IV
- Lendo um Arquivo Pdf com iTextSharp – Parte I



8 Respostas to “Criando um documento Pdf com iTextSharp – Parte VI”
Leonardo
1 year ago
Fiz o que está sendo indicado no tutorial acima.
A imagem foi adicionada, mas não como marca d’água, pois o texto foi escrito após a imagem, não por cima da mesma.
Guilherme Bacellar
1 year ago
Leonardo,
sua reclamação foi enviada para o autor e ele irá lhe responder.
Pablo Roveroni
12 months ago
Leonardo,
legal você ter escrito. Isso significa que o que escrevo está servindo para alguém.
Bom…, mas vamos lá!
Refiz o código passo a passo como no exemplo citado a cima e funcionou certinho. Será que você não está esquecendo nenhuma parte do código? É importante você atentar que a inserção da imagem deve ocorrer antes do texto, seja ele uma nova frase ou um novo parágrafo.
Disponibilizei a nova biblioteca do iTextSharp e um código exemplo em http://www.dotnetmax.org/DNMBlog/wp-content/uploads/2009/08/MarcadAgua.rar
Mas se mesmo assim você ainda continuar com problemas, entre em contato com a gente.
abraço,
Pablo Roveroni
Carlos Sampaio
4 months ago
Pablo
Estou gostando de ler os artigos e achei bem didatico, eu gostaria de saber se é possivel visualizar o arquivo em tempo de execução.
Grato
Marcelo
4 months ago
Muito bom esses seus artigos, estou precisando do itextsharp para passar alguns htmls para pdf e seus artigos me serviram muito. Mas ja pude perceber que ele não trabalha corretamente com algumas tags, como por ex: “” ele não fica 100%, então tive que criar um objeto datatable, popula-lo e depois adiciona-lo na string que ele passa pra pdf. você ja vivenciou e precisou contornar este ou outros problemas? se puder me responder ficarei grato. Estou te perguntando pois gostaria de saber se realmente é uma limitação do itextsharp ou se eu que não soube trabalhar com table nele… valeu…
Pablo Roveroni
4 months ago
Obrigado Carlos.
Infelizmente não conseguimos ver o arquivo em tempo de execução, pois criamos o arquivo, depois abrimos e criamos seu conteúdo e só quando fechamos o arquivo é que o liberamos para leitura.
Pablo Roveroni
4 months ago
Marcelo,
obrigado por acompanhar meus artigos, saber que alguém os lê é motivador e colocarei mais posts em breve.
Quanto a sua dúvida, não entendi o problema, mas as aspas estão no html que você quer transformar para pdf e ele não deixa? É isso mesmo? Ainda não tive nenhum problema com ele; não que eu tenha notado ou que alguém tenha reclamado. Mas farei alguns testes e caso encontre alguma coisa deste tipo, farei um post sobre o assunto.
Obrigado!
Pablo Roveroni
4 months ago
Marcelo,
acabei de efetuar testes com diversos caracteres e não encontrei problemas!
Acredito que o problema pode ser na maneira como você está passando este caractere, lembre-se ele é um caractere reservado e é necessário usar \ para que não haja problema com este caractere.