Znak wodny to nałożony obraz, logo, wzór lub tekst umieszczony na fotografii lub obrazie. Może służyć do identyfikacji twórcy obrazu. Możesz programowo dodać znak wodny do dowolnego obrazu w chmurze. W tym artykule skupimy się na dodawaniu znaku wodnego do obrazów przy użyciu interfejsu API REST w Javie.
W tym artykule zostaną omówione następujące tematy:
- Interfejs API REST znaku wodnego i pakiet Java SDK
- Dodaj tekstowy znak wodny do obrazów za pomocą interfejsu API REST
- Dodaj znak wodny obrazu do obrazów za pomocą interfejsu API REST
Interfejs API REST znaku wodnego i pakiet Java SDK
Do nanoszenia znaku wodnego na obraz będę używał Java SDK of GroupDocs.Watermark Cloud API. Pozwala programowo dodawać, usuwać, wyszukiwać i zastępować znaki wodne z obrazów i dokumentów obsługiwanych formatów, takich jak PDF, Microsoft Word i Powerpoint. Obecnie zapewnia również pakiet .NET SDK dla Cloud API.
Możesz łatwo używać GroupDocs.Watermark Cloud w swoich aplikacjach Java opartych na Maven, dodając następującą konfigurację 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>
Zanim zaczniesz postępować zgodnie z instrukcjami i dostępnymi przykładami kodu, uzyskaj swój identyfikator klienta i klucz tajny klienta z panelu nawigacyjnego. Dodaj swój identyfikator i klucz tajny w kodzie, jak pokazano poniżej:
String clientId = "da0c487d-c1c0-45ae-b7bf-43eaf53c5ad5";
String clientSecret = "479db2b01dcb93a3d4d20efb16dea971";
String myStorage = "";
Configuration configuration = new Configuration(clientId, clientSecret);
Dodaj tekstowy znak wodny do obrazów za pomocą interfejsu API REST
Możesz dodać tekstowy znak wodny do zdjęć lub plików graficznych, wykonując proste czynności wymienione poniżej:
- Wgrywaćthe JPG image to the Cloud
- Dodaj tekstowy znak wodny do obrazu przy użyciu języka Java
- Pobieraćthe watermarked image
Prześlij obraz JPG
Najpierw prześlij plik obrazu JPG do chmury, korzystając z przykładowego kodu podanego poniżej:
// inicjalizacja API
FileApi apiInstance = new FileApi(clientId, clientSecret);
File fileStream = new File("C:\\Files\\sample.jpg");
// utwórz żądanie przesłania pliku
UploadFileRequest request = new UploadFileRequest("sample.jpg", fileStream, myStorage);
FilesUploadResult response = apiInstance.uploadFile(request);
W rezultacie plik JPG zostanie przesłany do Cloud Storage i będzie dostępny w sekcji plików Twojego pulpitu nawigacyjnego.
Dodaj tekstowy znak wodny do obrazu JPG przy użyciu języka Java
Możesz programowo dodać tekstowy znak wodny do obrazu JPEG, wykonując czynności podane poniżej.
- Utwórz instancję WatermarkApi
- Ustaw ścieżkę pliku obrazu JPEG w modelu FileInfo
- Zdefiniuj WatermarkOptions i ustaw FileInfo
- Zdefiniuj TextWatermarkOptions
- Ustaw tekst, rodzinę czcionek, rozmiar czcionki i wyrównanie tekstu
- Ustaw tekst znaku wodnego Kolor pierwszego planu
- Zdefiniuj pozycję znaku wodnego
- Zdefiniuj WatermarkDetails i ustaw TextWatermarkOptions i Position
- Ustaw WatermarkDetails na List
- Utwórz AddRequest za pomocą WatermarkOptions
- Uzyskaj wyniki, wywołując metodę WatermarkApi.add().
Poniższy przykładowy kod pokazuje, jak dodać tekst jako znak wodny do obrazu przy użyciu interfejsu API REST.
// inicjalizacja API
WatermarkApi apiInstance = new WatermarkApi(configuration);
// ustaw ścieżkę pliku JPG
FileInfo fileInfo = new FileInfo();
fileInfo.setFilePath("sample.jpg");
fileInfo.setStorageName(myStorage);
// zdefiniuj opcje znaku wodnego
WatermarkOptions options = new WatermarkOptions();
options.setFileInfo(fileInfo);
// zdefiniuj Opcje tekstowego znaku wodnego
TextWatermarkOptions textWatermarkOptions = new TextWatermarkOptions();
textWatermarkOptions.setText("Copyright© 2021");
textWatermarkOptions.setFontFamilyName("Arial");
textWatermarkOptions.setFontSize(12d);
textWatermarkOptions.setTextAlignment("Center");
// ustaw kolor tekstu znaku wodnego
Color color = new Color();
color.setName("White");
textWatermarkOptions.setForegroundColor(color);
// zdefiniuj szczegóły znaku wodnego
WatermarkDetails watermarkDetails = new WatermarkDetails();
watermarkDetails.setTextWatermarkOptions(textWatermarkOptions);
// ustaw pozycję znaku wodnego
Position position = new Position();
position.setX(180.0);
position.setY(450.0);
watermarkDetails.setPosition(position);
// ustaw szczegóły znaku wodnego
List<WatermarkDetails> watermarkDetailsList = new ArrayList<WatermarkDetails>();
watermarkDetailsList.add(watermarkDetails);
options.setWatermarkDetails(watermarkDetailsList);
// utwórz żądanie dodania znaku wodnego
AddRequest request = new AddRequest(options);
WatermarkResult response = apiInstance.add(request);
System.out.println("Resultant file path: " + response.getPath());
Pobierz zaktualizowany obraz
Powyższe przykłady kodu spowodują zapisanie pliku obrazu ze znakiem wodnym w chmurze. Możesz go pobrać, korzystając z następującego przykładowego kodu:
// inicjalizacja API
FileApi apiInstance = new FileApi(clientId, clientSecret);
// utwórz żądanie pobrania pliku
DownloadFileRequest request = new DownloadFileRequest("watermark/added_watermark/sample_jpg/sample.jpg", "", null);
File response = apiInstance.downloadFile(request);
Dodaj znak wodny obrazu do obrazów za pomocą interfejsu API REST
Możesz programowo dodać obraz lub znak wodny logo do obrazu JPEG, wykonując czynności podane poniżej.
- Utwórz instancję WatermarkApi
- Ustaw ścieżkę pliku obrazu JPEG w modelu FileInfo
- Zdefiniuj WatermarkOptions i ustaw FileInfo
- Zdefiniuj ImageWatermarkOptions
- Ustaw FilePath obrazu PNG na znak wodny
- Zdefiniuj pozycję znaku wodnego
- Zdefiniuj WatermarkDetails i ustaw ImageWatermarkOptions oraz Position
- Ustaw WatermarkDetails na List
- Utwórz AddRequest za pomocą WatermarkOptions
- Uzyskaj wyniki, wywołując metodę WatermarkApi.add().
Poniższy przykładowy kod pokazuje, jak dodać obraz jako znak wodny do obrazu JPEG przy użyciu interfejsu API REST. Wykonaj czynności wymienione wcześniej, aby przesłać i pobrać pliki.
// inicjalizacja API
WatermarkApi apiInstance = new WatermarkApi(configuration);
// ustaw ścieżkę pliku JPG
FileInfo fileInfo = new FileInfo();
fileInfo.setFilePath("sample.jpg");
fileInfo.setStorageName(myStorage);
// zdefiniuj opcje znaku wodnego
WatermarkOptions options = new WatermarkOptions();
options.setFileInfo(fileInfo);
// zdefiniuj szczegóły znaku wodnego
WatermarkDetails watermarkDetails = new WatermarkDetails();
// zdefiniuj opcje obrazu znaku wodnego
ImageWatermarkOptions imageWatermarkOptions = new ImageWatermarkOptions();
FileInfo image = new FileInfo();
image.setFilePath("sample_watermark.png");
image.setStorageName(myStorage);
imageWatermarkOptions.setImage(image);
// ustaw pozycję znaku wodnego
Position position = new Position();
position.setX(100.0);
position.setY(450.0);
watermarkDetails.setPosition(position);
// ustaw Opcje znaku wodnego obrazu
watermarkDetails.setImageWatermarkOptions(imageWatermarkOptions);
List<WatermarkDetails> watermarkDetailsList = new ArrayList<WatermarkDetails>();
watermarkDetailsList.add(watermarkDetails);
options.setWatermarkDetails(watermarkDetailsList);
// utwórz żądanie dodania
AddRequest request = new AddRequest(options);
WatermarkResult response = apiInstance.add(request);
System.out.println("Resultant file path: " + response.getPath());
Wypróbuj online
Wypróbuj następujące bezpłatne narzędzie do znaku wodnego online, które zostało opracowane przy użyciu powyższego interfejsu API. https://products.groupdocs.app/watermark/jpeg
Wniosek
Podsumowując, nauczyłeś się dodawać tekst lub znak wodny do obrazu JPEG w chmurze. Nauczyłeś się również, jak programowo przesyłać pliki obrazów do chmury, a następnie pobierać je z chmury. Możesz dowiedzieć się więcej o GroupDocs.Watermark Cloud API z dokumentacji. Udostępniamy również sekcję Informacje o interfejsach API, która umożliwia wizualizację naszych interfejsów API i interakcję z nimi bezpośrednio w przeglądarce. W przypadku jakichkolwiek niejasności skontaktuj się z support.