Adicionar Números de página ao PDF em Java

Adicionar um carimbo de número de página

  1. Abra o PDF de origem em um objeto Document.
  2. Crie o objeto PageNumberStamp.
  3. Configure a colocação do selo necessária e as opções de numeração.
  4. Defina as opções de formatação de texto necessárias, incluindo FontRepository e Color.
  5. Adicione o configurado PageNumberStamp para o destino Page.
  6. Salve o PDF atualizado Document.
public static void addPageNumStamp(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString())) {
        PageNumberStamp pageNumberStamp = new PageNumberStamp();
        pageNumberStamp.setBackground(false);
        pageNumberStamp.setFormat("Page # of " + document.getPages().size());
        pageNumberStamp.setBottomMargin(10);
        pageNumberStamp.setHorizontalAlignment(HorizontalAlignment.Center);
        pageNumberStamp.setStartingNumber(1);
        pageNumberStamp.getTextState().setFont(FontRepository.findFont("Arial"));
        pageNumberStamp.getTextState().setFontSize(14.0f);
        pageNumberStamp.getTextState().setFontStyle(FontStyles.Bold | FontStyles.Italic);
        pageNumberStamp.getTextState().setForegroundColor(Color.getBlueViolet());

        document.getPages().get_Item(1).addStamp(pageNumberStamp);
        document.save(outputFile.toString());
    }
}