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

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

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

Щоб додати водяний знак до PDF-документів, ми використаємо Aspose.PDF for 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().getItem(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 за допомогою документації. Якщо у вас виникнуть запитання, повідомте нас через наш форум.

Дивись також