Das Hinzufügen dynamischer Bildunterschriften, Untertitel oder Werbebotschaften zu animierten GIFs ist ein häufiges Bedürfnis moderner Web- und Mobilanwendungen. GroupDocs.Watermark Cloud SDK for Java bietet eine leistungsstarke REST‑basierte Bibliothek, die diese Aufgabe unkompliziert macht. In diesem Leitfaden erfahren Sie, wie Sie Text-Overlay zu GIF mithilfe von REST in Java hinzufügen, eine vollständige Java-Implementierung ansehen, äquivalente cURL‑Befehle erkunden und die erforderlichen Einrichtungsschritte verstehen.

Text-Overlay zu GIF mit REST in Java hinzufügen - Beispielcode

Dieses Beispiel zeigt, wie man ein Textwasserzeichen konfiguriert und es auf jedes Frame einer GIF‑Datei anwendet.

import com.groupdocs.watermark.cloud.api.WatermarkApi;
import com.groupdocs.watermark.cloud.client.ApiException;
import com.groupdocs.watermark.cloud.client.Configuration;
import com.groupdocs.watermark.cloud.model.AddWatermarkRequest;
import com.groupdocs.watermark.cloud.model.AddWatermarkResponse;
import com.groupdocs.watermark.cloud.model.FileInfo;
import com.groupdocs.watermark.cloud.model.OutputFileInfo;
import com.groupdocs.watermark.cloud.model.TextWatermarkOptions;
import com.groupdocs.watermark.cloud.model.HorizontalAlignment;
import com.groupdocs.watermark.cloud.model.VerticalAlignment;

public class AddTextOverlayToGif {
    public static void main(String[] args) {
        // Initialize API configuration (replace with your actual clientId and clientSecret)
        Configuration config = new Configuration("YOUR_CLIENT_ID", "YOUR_CLIENT_SECRET");
        WatermarkApi watermarkApi = new WatermarkApi(config);

// Prepare input file information
        FileInfo inputFile = new FileInfo();
        inputFile.setFilePath("input.gif");          // Path to the source GIF in the storage
        inputFile.setStorageName("MyStorage");       // Optional: name of the storage

// Prepare output file information
        OutputFileInfo outputFile = new OutputFileInfo();
        outputFile.setFilePath("output.gif");        // Desired path for the watermarked GIF
        outputFile.setStorageName("MyStorage");      // Optional: name of the storage

// Configure text watermark options
        TextWatermarkOptions textOptions = new TextWatermarkOptions();
        textOptions.setText("Sample Watermark");
        textOptions.setFontFamily("Arial");
        textOptions.setFontSize(24.0);
        textOptions.setColor("#FF0000");             // Red color in HEX
        textOptions.setOpacity(0.5);                 // 50% opacity
        textOptions.setRotationAngle(0.0);
        textOptions.setHorizontalAlignment(HorizontalAlignment.CENTER);
        textOptions.setVerticalAlignment(VerticalAlignment.MIDDLE);
        textOptions.setPageRange("1-");               // Apply to all frames/pages

// Build the request
        AddWatermarkRequest request = new AddWatermarkRequest();
        request.setFileInfo(inputFile);
        request.setOutputFileInfo(outputFile);
        request.setOptions(textOptions);

try {
            // Execute the request
            AddWatermarkResponse response = watermarkApi.addWatermark(request);
            System.out.println("Watermark added successfully. Output file: " + response.getPath());
        } catch (ApiException e) {
            System.err.println("Error while adding watermark: " + e.getMessage());
            e.printStackTrace();
        }
    }
}

Hinweis: Dieses Codebeispiel demonstriert die Kernfunktionalität. Bevor Sie es in Ihrem Projekt verwenden, stellen Sie sicher, dass Sie alle Dateipfade und Konfigurationswerte an Ihre tatsächliche Umgebung anpassen, dass alle erforderlichen Abhängigkeiten ordnungsgemäß installiert sind und testen Sie gründlich in Ihrer Entwicklungsumgebung. Wenn Sie auf Probleme stoßen, lesen Sie bitte die offizielle Dokumentation oder wenden Sie sich an das Support-Team für Unterstützung.

Text auf GIF mit REST-API mittels cURL überlagern

Unten finden Sie die cURL‑Befehle, die dieselbe Operation von einem Terminal aus ausführen. Sie veranschaulichen den vollständigen REST‑Workflow: Authentifizierung, Hochladen, Wasserzeichen und Herunterladen.

# 1. Obtain an access token
curl -X POST "https://api.groupdocs.cloud/v2.0/auth/token" \
     -H "Content-Type: application/json" \
     -d '{"client_id":"YOUR_CLIENT_ID","client_secret":"YOUR_CLIENT_SECRET"}'

Ersetzen Sie YOUR_ACCESS_TOKEN in den folgenden Aufrufen durch das oben zurückgegebene Token.

# 2. Upload the source GIF to storage
curl -X PUT "https://api.groupdocs.cloud/v2.0/storage/file/input.gif" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -H "Content-Type: application/octet-stream" \
     --data-binary @path/to/local/input.gif
# 3. Add text overlay to the GIF
curl -X POST "https://api.groupdocs.cloud/v2.0/watermark/add" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -H "Content-Type: application/json" \
     -d '{
           "fileInfo": { "filePath": "input.gif", "storageName": "MyStorage" },
           "outputFileInfo": { "filePath": "output.gif", "storageName": "MyStorage" },
           "options": {
               "text": "Sample Watermark",
               "fontFamily": "Arial",
               "fontSize": 24,
               "color": "#FF0000",
               "opacity": 0.5,
               "horizontalAlignment": "Center",
               "verticalAlignment": "Middle",
               "pageRange": "1-"
           }
         }'
# 4. Download the watermarked GIF
curl -X GET "https://api.groupdocs.cloud/v2.0/storage/file/output.gif" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -o path/to/local/output.gif

Weitere Details zu Anforderungskörpern und Antwortformaten finden Sie in der offiziellen API-Dokumentation.

Aufschlüsselung von Add Text Overlay zu GIF mit REST in Java - Wie es funktioniert

  1. Initialisieren Sie den API-Client - new Configuration("YOUR_CLIENT_ID", "YOUR_CLIENT_SECRET") erstellt ein Konfigurationsobjekt, das Ihre Anmeldeinformationen enthält. Die WatermarkApi‑Instanz verwendet diese Konfiguration, um jede Anfrage zu signieren.
Configuration config = new Configuration("YOUR_CLIENT_ID", "YOUR_CLIENT_SECRET");
WatermarkApi watermarkApi = new WatermarkApi(config);
  1. Quell- und Zieldateien angeben - FileInfo und OutputFileInfo teilen dem Dienst mit, wo das ursprüngliche GIF gelesen und wo das Ergebnis geschrieben werden soll. Beide können einen benutzerdefinierten Speichernamen referenzieren.

    FileInfo inputFile = new FileInfo();
    inputFile.setFilePath("input.gif");
    inputFile.setStorageName("MyStorage");
    
  2. Konfigurieren Sie das Textwasserzeichen - TextWatermarkOptions enthält alle visuellen Eigenschaften: Text, Schriftart, Größe, Farbe, Deckkraft, Drehung und Ausrichtung. Das Festlegen von pageRange auf "1-" stellt sicher, dass jedes Frame des animierten GIFs die Überlagerung erhält.

TextWatermarkOptions textOptions = new TextWatermarkOptions();
textOptions.setText("Sample Watermark");
textOptions.setFontFamily("Arial");
textOptions.setFontSize(24.0);
textOptions.setColor("#FF0000");
textOptions.setOpacity(0.5);
textOptions.setHorizontalAlignment(HorizontalAlignment.CENTER);
textOptions.setVerticalAlignment(VerticalAlignment.MIDDLE);
textOptions.setPageRange("1-");
  1. Erstellen und senden Sie die Anforderung - AddWatermarkRequest fasst die Dateiinformationen und Optionen zusammen. Der Aufruf von watermarkApi.addWatermark(request) führt die Operation auf dem Server aus und gibt den Pfad der verarbeiteten Datei zurück.

    AddWatermarkRequest request = new AddWatermarkRequest();
    request.setFileInfo(inputFile);
    request.setOutputFileInfo(outputFile);
    request.setOptions(textOptions);
    AddWatermarkResponse response = watermarkApi.addWatermark(request);
    
  2. Antwort verarbeiten - Die Antwort enthält den Pfad der Ausgabedatei. In einer echten Anwendung würden Sie typischerweise die Datei herunterladen oder den Pfad an einen anderen Dienst übergeben.

Für eine vollständige Liste von Klassen und Eigenschaften siehe die API-Referenz.

Installation und Konfiguration von GroupDocs.Watermark Cloud SDK für Java

Fügen Sie die Maven‑Abhängigkeit zu Ihrer pom.xml hinzu (oder den entsprechenden Gradle‑Eintrag). Dadurch wird Version 23.8 des SDKs eingebunden.

<dependency>
    <groupId>com.groupdocs</groupId>
    <artifactId>groupdocs-watermark-cloud</artifactId>
    <version>23.8</version>
</dependency>

Voraussetzungen

  • Java 8 oder höher
  • Ein aktives GroupDocs Cloud-Konto
  • Client ID und Client Secret (verfügbar im GroupDocs Cloud dashboard)

Konfigurationsbeispiel

Configuration config = new Configuration("YOUR_CLIENT_ID", "YOUR_CLIENT_SECRET");

Laden Sie die neuesten JARs von der Download‑Seite herunter. Für den Produktionseinsatz wenden Sie eine gültige Lizenz an, die Sie von der temporären Lizenz‑Seite erhalten.

Fazit

Das Hinzufügen von Text‑Overlay zu GIFs über REST in Java wird zu einer wiederholbaren, serverseitigen Operation mit Hilfe des GroupDocs.Watermark Cloud SDK for Java. Das SDK abstrahiert die Komplexität der Handhabung animierter Frames, sodass Sie sich auf den Inhalt Ihrer Untertitel oder Werbebotschaften konzentrieren können. Nach der Integration des Beispielcodes oder des cURL‑Workflows können Sie Schriftarten, Farben und Deckkraft feinabstimmen, um Ihrer Marke zu entsprechen. Denken Sie daran, eine Produktionslizenz zu sichern; Preisinformationen finden Sie auf der Produktseite, und eine temporäre Lizenz kann für Tests über die temporäre Lizenzseite bezogen werden. Viel Spaß beim Programmieren!

FAQs

  • Wie füge ich einem GIF über die REST‑Schnittstelle in Java einen Text‑Overlay hinzu, wenn sich der Text pro Benutzer ändert?
    Erstellen Sie das TextWatermarkOptions‑Objekt zur Laufzeit mit dem benutzerspezifischen String und rufen Sie anschließend denselben addWatermark‑Aufruf auf. Die API verarbeitet jede Anfrage unabhängig, sodass dynamische Inhalte vollständig unterstützt werden.

  • Kann ich Untertitel zu einem animierten GIF hinzufügen, ohne die Animationsgeschwindigkeit zu beeinflussen?
    Ja. Das Wasserzeichen wird auf jedes Bild angewendet, wobei die ursprüngliche Bildverzögerung beibehalten wird. Setzen Sie einfach pageRange auf "1-", damit jedes Bild dieselbe Überlagerung erhält.

  • Welche Formate werden für die Overlay-Textfarbe unterstützt?
    Das SDK akzeptiert HEX‑Farbcodes (z. B. #FF0000) und standardmäßige HTML Farbnamen. Siehe die API‑Referenz für die vollständige Liste.

  • Benötige ich eine Lizenz für Entwicklung und Tests?
    Eine temporäre Lizenz reicht für Evaluierung und Tests aus. Für Produktionsbereitstellungen kaufen Sie eine Volllizenz auf der Produktseite und wenden Sie sie über die Lizenzierungs‑API des SDK an.

Read More