Classe Stamp
Contents
[
Hide
]
A classe Java StampExamples demonstra os principais fluxos de trabalho de criação de carimbos disponíveis através da API Facades.
Adicionar um carimbo de imagem
Use este fluxo de trabalho quando um arquivo de imagem deve ser colocado no PDF como um carimbo.
Etapas
- Crie uma instância de
PdfFileStampe vincule o PDF de origem. - Crie um objeto
Stampe vincule-o ao arquivo de imagem. - Defina o identificador do selo e a origem da colocação.
- Adicione o selo ao documento.
- Salve o resultado e feche o objeto de fachada.
Exemplo Java
public static void addImageStamp(Path inputFile, Path imageFile, Path outputFile) {
PdfFileStamp pdfStamper = new PdfFileStamp();
try {
pdfStamper.bindPdf(inputFile.toString());
Stamp stamp = new Stamp();
stamp.bindImage(imageFile.toString());
stamp.setStampId(1);
stamp.setOrigin(36, 520);
pdfStamper.addStamp(stamp);
pdfStamper.save(outputFile.toString());
} finally {
pdfStamper.close();
}
}
Adicionar uma página PDF como carimbo
Use este fluxo de trabalho quando o conteúdo de outra página PDF deve ser reutilizado como conteúdo de stamp.
Etapas
- Crie um
PdfFileStampinstanciar e vincule o PDF de destino. - Crie um objeto
Stamp. - Vincule o stamp a uma página específica de outro arquivo PDF.
- Defina o número da página de destino e a origem para a colocação.
- Adicione o selo, salve a saída e feche o objeto fachada.
Exemplo Java
public static void addPdfPageAsStamp(Path inputFile, Path stampPdf, Path outputFile) {
PdfFileStamp pdfStamper = new PdfFileStamp();
try {
pdfStamper.bindPdf(inputFile.toString());
Stamp stamp = new Stamp();
stamp.bindPdf(stampPdf.toString(), 1);
stamp.setPageNumber(1);
stamp.setOrigin(36, 250);
pdfStamper.addStamp(stamp);
pdfStamper.save(outputFile.toString());
} finally {
pdfStamper.close();
}
}
Adicionar um carimbo de texto com TextState
Use este fluxo de trabalho quando o carimbo deve conter texto formatado em vez de uma imagem.
Etapas
- Crie uma instância de
PdfFileStampe vincule o PDF de origem. - Crie um objeto
Stamp. - Vincule um
FormattedTextlogotipo e um personalizadoTextStatepara o carimbo. - Defina a origem e a rotação do carimbo.
- Adicione o selo, salve a saída e feche o objeto fachada.
Exemplo Java
public static void addTextStampWithTextState(Path inputFile, Path outputFile) {
PdfFileStamp pdfStamper = new PdfFileStamp();
try {
pdfStamper.bindPdf(inputFile.toString());
Stamp stamp = new Stamp();
stamp.bindLogo(createTextLogo("Approved by signing workflow"));
stamp.bindTextState(createTextState());
stamp.setOrigin(36, 700);
stamp.setRotation(15.0f);
pdfStamper.addStamp(stamp);
pdfStamper.save(outputFile.toString());
} finally {
pdfStamper.close();
}
}
Adicionar um selo a páginas específicas
Use este workflow quando o stamp deve aparecer apenas nas páginas selecionadas em vez de em todo o documento.
Etapas
- Crie uma instância de
PdfFileStampe vincule o PDF de origem. - Crie um objeto
Stampe vincule-o a um arquivo de imagem. - Defina a lista de páginas alvo, a origem e o tamanho da imagem.
- Adicione o selo ao documento.
- Salve o resultado e feche o objeto de fachada.
Exemplo Java
public static void addStampToSpecificPages(Path inputFile, Path imageFile, Path outputFile) {
PdfFileStamp pdfStamper = new PdfFileStamp();
try {
pdfStamper.bindPdf(inputFile.toString());
Stamp stamp = new Stamp();
stamp.bindImage(imageFile.toString());
stamp.setPages(new int[] {1});
stamp.setOrigin(400, 40);
stamp.setImageSize(120, 60);
pdfStamper.addStamp(stamp);
pdfStamper.save(outputFile.toString());
} finally {
pdfStamper.close();
}
}
Adicionar um carimbo de imagem de fundo
Use este fluxo de trabalho quando o selo deve aparecer atrás do conteúdo da página com opacidade e rotação controladas.
Etapas
- Crie uma instância de
PdfFileStampe vincule o PDF de origem. - Crie um objeto
Stampe vincule-o ao arquivo de imagem. - Marque o selo como conteúdo de plano de fundo.
- Configure opacidade, qualidade, rotação, tamanho e origem.
- Adicione o selo, salve a saída e feche o objeto fachada.
Exemplo Java
public static void addBackgroundImageStamp(Path inputFile, Path imageFile, Path outputFile) {
PdfFileStamp pdfStamper = new PdfFileStamp();
try {
pdfStamper.bindPdf(inputFile.toString());
Stamp stamp = new Stamp();
stamp.bindImage(imageFile.toString());
stamp.setBackground(true);
stamp.setOpacity(0.35f);
stamp.setQuality(90);
stamp.setRotation(45.0f);
stamp.setImageSize(160, 80);
stamp.setOrigin(200, 300);
pdfStamper.addStamp(stamp);
pdfStamper.save(outputFile.toString());
} finally {
pdfStamper.close();
}
}