Добавить водяной знак к изображениям с помощью Java

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

В этой статье должны быть раскрыты следующие темы:

Водяной знак REST API и Java SDK

Для нанесения водяных знаков на изображение я буду использовать API Java SDK of GroupDocs.Watermark Cloud. Он позволяет программно добавлять, удалять, искать и заменять водяные знаки с изображений и документов поддерживаемых форматов, таких как PDF, Microsoft Word и Powerpoint. В настоящее время он также предоставляет .NET SDK для облачного API.

Вы можете легко использовать GroupDocs.Watermark Cloud в своих Java-приложениях на основе Maven, добавив следующую конфигурацию pom.xml.

<repository>
    <id>groupdocs-artifact-repository</id>
    <name>GroupDocs Artifact Repository</name>
    <url>https://repository.groupdocs.cloud/repo</url>
</repository>
<dependency>
	<groupId>com.groupdocs</groupId>
	<artifactId>groupdocs-watermark-cloud</artifactId>
	<version>19.12</version>
	<packaging>jar</packaging>
</dependency>

Прежде чем приступить к выполнению шагов и доступных примеров кода, получите свой идентификатор клиента и секрет клиента на панели управления. Добавьте свой идентификатор и секрет в код, как показано ниже:

String clientId = "da0c487d-c1c0-45ae-b7bf-43eaf53c5ad5";
String clientSecret = "479db2b01dcb93a3d4d20efb16dea971";
String myStorage = "";

Configuration configuration = new Configuration(clientId, clientSecret);

Добавить текстовый водяной знак к изображениям с помощью REST API

Вы можете добавить текстовый водяной знак к фотографиям или файлам изображений, выполнив простые шаги, указанные ниже:

Загрузите изображение в формате JPG

Во-первых, загрузите файл изображения JPG в облако, используя приведенный ниже пример кода:

// инициализация API
FileApi apiInstance = new FileApi(clientId, clientSecret);
File fileStream = new File("C:\\Files\\sample.jpg");

// создать запрос на загрузку файла
UploadFileRequest request = new UploadFileRequest("sample.jpg", fileStream, myStorage);
FilesUploadResult response = apiInstance.uploadFile(request);

В результате файл JPG будет загружен в облачное хранилище и будет доступен в разделе файлов вашей панели управления.

Добавить текстовый водяной знак в изображение JPG с помощью Java

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

  • Создайте экземпляр WatermarkApi
  • Установите путь к файлу изображения JPEG в модели FileInfo.
  • Определите WatermarkOptions и установите FileInfo
  • Определить TextWatermarkOptions
  • Установите текст, семейство шрифтов, размер шрифта и выравнивание текста
  • Установка текста водяного знака Цвет переднего плана
  • Определить положение водяного знака
  • Определите WatermarkDetails и установите TextWatermarkOptions и Position
  • Установите WatermarkDetails в список
  • Создать AddRequest с WatermarkOptions
  • Получите результаты, вызвав метод WatermarkApi.add().

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

// инициализация API
WatermarkApi apiInstance = new WatermarkApi(configuration);

// установить путь к файлу JPG
FileInfo fileInfo = new FileInfo();
fileInfo.setFilePath("sample.jpg");
fileInfo.setStorageName(myStorage);

// определить параметры водяного знака
WatermarkOptions options = new WatermarkOptions();
options.setFileInfo(fileInfo);

// определить параметры текстового водяного знака
TextWatermarkOptions textWatermarkOptions = new TextWatermarkOptions();
textWatermarkOptions.setText("Copyright© 2021");
textWatermarkOptions.setFontFamilyName("Arial");
textWatermarkOptions.setFontSize(12d);
textWatermarkOptions.setTextAlignment("Center");

// установить цвет текста водяного знака
Color color = new Color();
color.setName("White");
textWatermarkOptions.setForegroundColor(color);

// определить детали водяного знака
WatermarkDetails watermarkDetails = new WatermarkDetails();
watermarkDetails.setTextWatermarkOptions(textWatermarkOptions);

// установить положение водяного знака
Position position = new Position();
position.setX(180.0);
position.setY(450.0);
watermarkDetails.setPosition(position);

// установить детали водяного знака
List<WatermarkDetails> watermarkDetailsList = new ArrayList<WatermarkDetails>();
watermarkDetailsList.add(watermarkDetails);
options.setWatermarkDetails(watermarkDetailsList);

// создать запрос на добавление водяного знака
AddRequest request = new AddRequest(options);
WatermarkResult response = apiInstance.add(request);

System.out.println("Resultant file path: " + response.getPath());
Добавить текстовый водяной знак к изображению

Добавить текстовый водяной знак к изображению

Загрузите обновленное изображение

Приведенные выше примеры кода сохранят файл изображения с водяным знаком в облаке. Вы можете загрузить его, используя следующий пример кода:

// инициализация API
FileApi apiInstance = new FileApi(clientId, clientSecret);

// создать запрос на скачивание файла
DownloadFileRequest request = new DownloadFileRequest("watermark/added_watermark/sample_jpg/sample.jpg", "", null);
File response = apiInstance.downloadFile(request);

Добавить водяной знак изображения к изображениям с помощью REST API

Вы можете программно добавить водяной знак изображения или логотипа к изображению JPEG, выполнив шаги, указанные ниже.

  • Создайте экземпляр WatermarkApi
  • Установите путь к файлу изображения JPEG в модели FileInfo.
  • Определите WatermarkOptions и установите FileInfo
  • Определить параметры ImageWatermark
  • Установите FilePath изображения PNG в водяной знак с помощью
  • Определить положение водяного знака
  • Определите WatermarkDetails и установите ImageWatermarkOptions и Position
  • Установите WatermarkDetails в список
  • Создать AddRequest с WatermarkOptions
  • Получите результаты, вызвав метод WatermarkApi.add().

В следующем примере кода показано, как добавить изображение в качестве водяного знака к изображению JPEG с помощью REST API. Пожалуйста, следуйте шагам, упомянутым ранее, чтобы загрузить и скачать файлы.

// инициализация API
WatermarkApi apiInstance = new WatermarkApi(configuration);

// установить путь к файлу JPG
FileInfo fileInfo = new FileInfo();
fileInfo.setFilePath("sample.jpg");
fileInfo.setStorageName(myStorage);

// определить параметры водяного знака
WatermarkOptions options = new WatermarkOptions();
options.setFileInfo(fileInfo);

// определить детали водяного знака
WatermarkDetails watermarkDetails = new WatermarkDetails();

// определить параметры изображения водяного знака
ImageWatermarkOptions imageWatermarkOptions = new ImageWatermarkOptions();
FileInfo image = new FileInfo();
image.setFilePath("sample_watermark.png");
image.setStorageName(myStorage);
imageWatermarkOptions.setImage(image);

// установить положение водяного знака
Position position = new Position();
position.setX(100.0);
position.setY(450.0);
watermarkDetails.setPosition(position);

// установить параметры водяного знака изображения
watermarkDetails.setImageWatermarkOptions(imageWatermarkOptions);

List<WatermarkDetails> watermarkDetailsList = new ArrayList<WatermarkDetails>();
watermarkDetailsList.add(watermarkDetails);
options.setWatermarkDetails(watermarkDetailsList);

// создать запрос на добавление
AddRequest request = new AddRequest(options);
WatermarkResult response = apiInstance.add(request);

System.out.println("Resultant file path: " + response.getPath());
Добавить водяной знак к изображению

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

Попробуйте онлайн

Пожалуйста, попробуйте следующий бесплатный онлайн-инструмент водяных знаков, разработанный с использованием вышеуказанного API. https://products.groupdocs.app/watermark/jpeg

Заключение

В заключение вы узнали, как добавить текстовый или графический водяной знак к изображению JPEG в облаке. Вы также узнали, как программно загружать файлы изображений в облако, а затем загружать их из облака. Вы можете узнать больше о GroupDocs.Watermark Cloud API из документации. Мы также предоставляем раздел Справочник по API, который позволяет визуализировать наши API и взаимодействовать с ними непосредственно через браузер. В случае возникновения неясностей обращайтесь в поддержку.

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