Добавить водяной знак в PDF Логотип Java

Водяные знаки используются для защиты PDF-документов или заявления права собственности на них. Кроме того, в различных случаях водяные знаки добавляются для отображения статуса PDF-документа, такого как черновик, рукопись и т. д. Чтобы автоматизировать водяные знаки, в этой статье рассказывается, как добавить текстовый или графический водяной знак в PDF-файл с помощью Java.

Java API для добавления водяного знака в PDF

Чтобы добавить водяной знак в документы PDF, мы будем использовать Aspose.PDF для Java. Это многофункциональный API для создания, обработки и преобразования PDF-файлов из приложений Java. Вы можете либо скачать JAR-файл API, либо установить его, используя следующие конфигурации Maven.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-pdf</artifactId>
    <version>21.6</version>
</dependency>

Добавить текстовый водяной знак в PDF на Java

Ниже приведены шаги по добавлению текстового водяного знака в PDF с помощью Java.

  • Загрузите PDF-файл, используя класс Document.
  • Создайте экземпляр класса FormattedText и задайте текст водяного знака и его свойства.
  • Создайте экземпляр класса WatermarkArtifact.
  • Добавьте текст к артефакту и задайте такие свойства, как выравнивание, угол поворота, непрозрачность, фон и т. д.
  • Добавьте текстовый водяной знак на нужную страницу PDF с помощью метода Document.getPages().get_Item(index).getArtifacts().add(WatermarkArtifact).
  • Сохраните обновленный PDF-документ с помощью метода Document.save(String).

В следующем примере кода показано, как добавить текстовый водяной знак в документ PDF.

// Загрузить PDF-документ
Document doc = new Document("input.pdf");

// Создать форматированный текст
FormattedText formattedText = new FormattedText("Confidential Document", java.awt.Color.RED, FontStyle.Courier, EncodingType.Identity_h, true, 40.0F);

// Создайте артефакт водяного знака и задайте его свойства
WatermarkArtifact artifact = new WatermarkArtifact();        
artifact.setText(formattedText);        
artifact.setArtifactHorizontalAlignment (HorizontalAlignment.Center);
artifact.setArtifactVerticalAlignment (VerticalAlignment.Center);
artifact.setRotation (25);
artifact.setOpacity (0.5);
artifact.setBackground (false);

// Добавить водяной знак на первую страницу PDF
doc.getPages().get_Item(1).getArtifacts().add(artifact);

// Сохранить документ PDF с водяным знаком
doc.save("watermark.pdf");

Выход

Ниже приведен скриншот PDF-файла с водяными знаками.

добавить водяной знак в pdf в java

Добавить водяной знак изображения в PDF на Java

Ниже приведены шаги по добавлению водяного знака изображения в PDF с помощью Java.

В следующем примере кода показано, как добавить водяной знак изображения в документ PDF.

// Загрузить PDF-документ
Document doc = new Document("input.pdf");

// Создание фонового артефакта
BackgroundArtifact background = new BackgroundArtifact();

// Укажите изображение для объекта фонового артефакта
background.setBackgroundImage(new FileInputStream("logo.png"));
background.setOpacity(0.5);
background.setArtifactHorizontalAlignment(HorizontalAlignment.Center);
background.setArtifactVerticalAlignment(VerticalAlignment.Center);

// Добавить водяной знак на первую страницу PDF
doc.getPages().get_Item(1).getArtifacts().add(background);

// Сохранить документ PDF с водяным знаком
doc.save("watermark.pdf");

Выход

Ниже приведен скриншот PDF-файла с водяными знаками.

Водяной знак изображения в PDF с использованием Java

Получите бесплатную лицензию API

Вы можете получить временную лицензию, чтобы использовать API без ограничений пробной версии.

Вывод

В этой статье вы узнали, как добавить текстовый или графический водяной знак в PDF с помощью Java. Кроме того, вы увидели, как настроить внешний вид водяного знака, используя различные свойства. Вы можете узнать больше о Java PDF API, используя документацию. Если у вас возникнут вопросы, дайте нам знать через наш форум.

Смотрите также