Menambahkan caption dinamis, subtitle, atau pesan promosi ke GIF animasi adalah kebutuhan umum untuk aplikasi web dan seluler modern. GroupDocs.Watermark Cloud SDK for Java menyediakan pustaka berbasis REST yang kuat yang membuat tugas ini menjadi mudah. Dalam panduan ini Anda akan mempelajari cara menambahkan Overlay teks ke GIF menggunakan REST di Java, melihat implementasi Java lengkap, menjelajahi perintah cURL yang setara, dan memahami langkah‑langkah penyiapan yang diperlukan.

Menambahkan Teks Overlay ke GIF Menggunakan REST di Java - Contoh Kode

Contoh ini menunjukkan cara mengonfigurasi watermark teks dan menerapkannya ke setiap frame file GIF.

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();
        }
    }
}

Catatan: Contoh kode ini menunjukkan fungsi inti. Sebelum menggunakannya dalam proyek Anda, pastikan untuk memperbarui semua jalur file dan nilai konfigurasi agar sesuai dengan lingkungan Anda yang sebenarnya, verifikasi bahwa semua dependensi yang diperlukan telah terpasang dengan benar, dan uji secara menyeluruh di lingkungan pengembangan Anda. Jika Anda menemukan masalah, silakan merujuk ke dokumentasi resmi atau hubungi tim dukungan untuk bantuan.

Menambahkan Teks pada GIF dengan REST API Menggunakan cURL

Berikut adalah perintah cURL yang melakukan operasi yang sama dari terminal. Mereka menggambarkan alur kerja REST lengkap: otentikasi, unggah, penambahan watermark, dan unduhan.

# 1. Dapatkan token akses
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"}'

Ganti YOUR_ACCESS_TOKEN dalam panggilan berikut dengan token yang dikembalikan di atas.

# 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

Untuk detail lebih lanjut tentang badan permintaan dan format respons, lihat dokumentasi API resmi.

Memecah Penambahan Teks Overlay ke GIF Menggunakan REST di Java - Cara Kerjanya

  1. Inisialisasi klien API - new Configuration("YOUR_CLIENT_ID", "YOUR_CLIENT_SECRET") membuat objek konfigurasi yang menyimpan kredensial Anda. Instansi WatermarkApi menggunakan konfigurasi ini untuk menandatangani setiap permintaan.
Configuration config = new Configuration("YOUR_CLIENT_ID", "YOUR_CLIENT_SECRET");
WatermarkApi watermarkApi = new WatermarkApi(config);
  1. Tentukan file sumber dan tujuan - FileInfo dan OutputFileInfo memberi tahu layanan di mana membaca GIF asli dan di mana menulis hasilnya. Keduanya dapat merujuk ke nama penyimpanan khusus.

    FileInfo inputFile = new FileInfo();
    inputFile.setFilePath("input.gif");
    inputFile.setStorageName("MyStorage");
    
  2. Konfigurasikan watermark teks - TextWatermarkOptions menyimpan semua properti visual: teks, font, ukuran, warna, opasitas, rotasi, dan perataan. Menetapkan pageRange ke "1-" memastikan setiap frame GIF animasi menerima overlay.

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. Bangun dan kirim permintaan - AddWatermarkRequest menggabungkan info file dan opsi. Memanggil watermarkApi.addWatermark(request) melakukan operasi pada server dan mengembalikan jalur file yang diproses.

    AddWatermarkRequest request = new AddWatermarkRequest();
    request.setFileInfo(inputFile);
    request.setOutputFileInfo(outputFile);
    request.setOptions(textOptions);
    AddWatermarkResponse response = watermarkApi.addWatermark(request);
    
  2. Tangani respons - Respons berisi jalur file output. Dalam aplikasi nyata, Anda biasanya akan mengunduh file atau meneruskan jalur tersebut ke layanan lain.

Untuk daftar lengkap kelas dan properti, lihat referensi API.

Menginstal dan Mengonfigurasi GroupDocs.Watermark Cloud SDK for Java

Tambahkan dependensi Maven ke pom.xml Anda (atau entri Gradle yang setara). Ini menarik versi 23.8 dari SDK.

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

Prasyarat

  • Java 8 atau lebih tinggi
  • Akun GroupDocs Cloud yang aktif
  • Client ID and Client Secret (tersedia di dasbor GroupDocs Cloud)

Contoh Konfigurasi

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

Unduh JAR terbaru dari halaman unduhan. Untuk penggunaan produksi, terapkan lisensi yang valid yang diperoleh dari halaman lisensi sementara.

Kesimpulan

Menambahkan teks Overlay ke GIF menggunakan REST di Java menjadi operasi berulang di sisi server dengan bantuan GroupDocs.Watermark Cloud SDK for Java. SDK menyederhanakan kompleksitas penanganan frame animasi, memungkinkan Anda fokus pada konten subtitle atau pesan promosi Anda. Setelah mengintegrasikan kode contoh atau alur kerja cURL, Anda dapat menyesuaikan gaya font, warna, dan opasitas agar sesuai dengan merek Anda. Ingatlah untuk mengamankan lisensi produksi; detail harga tersedia di halaman produk, dan lisensi sementara dapat diperoleh untuk pengujian melalui halaman lisensi sementara. Selamat coding!

Pertanyaan yang Sering Diajukan

  • Bagaimana cara menambahkan overlay teks ke GIF menggunakan REST di Java ketika teks berubah untuk setiap pengguna?
    Bangun objek TextWatermarkOptions pada runtime dengan string spesifik pengguna, lalu panggil addWatermark yang sama. API memproses setiap permintaan secara independen, sehingga konten dinamis sepenuhnya didukung.

  • Bisakah saya menambahkan subtitle ke GIF animasi tanpa memengaruhi kecepatan animasinya?
    Ya. Watermark diterapkan pada setiap frame sambil mempertahankan jeda frame asli. Cukup setel pageRange ke "1-" sehingga setiap frame menerima overlay yang sama.

  • Format apa yang didukung untuk warna teks overlay?
    SDK menerima kode warna HEX (mis., #FF0000) dan nama warna standar HTML . Lihat referensi API untuk daftar lengkap.

  • Apakah saya memerlukan lisensi untuk pengembangan dan pengujian?
    Lisensi sementara sudah cukup untuk evaluasi dan pengujian. Untuk penyebaran produksi, beli lisensi penuh dari halaman produk dan terapkan menggunakan API lisensi SDK.

Baca Selengkapnya