PDF dosyalarına görsel bir tanımlayıcı eklemek, fikri mülkiyeti korumak ve belgeleri markalaştırmak için esastır. GroupDocs.Watermark Cloud SDK for Java Java uygulamanızdan PDF’lere doğrudan görüntü filigranları eklemek için basit bir API sunar. Bu öğreticide, Java’da PDF belgelerine görüntü filigranı eklemeyi öğrenecek, tam çalışan bir örnek görecek ve bulut entegrasyonu için eşdeğer cURL REST çağrılarını inceleyeceksiniz.
Java’da PDF Belgelerine Görüntü Filigranı Ekleme 5 Adımda
- API istemcisini başlatın:
ApiClientörneğini istemci kimliğiniz ve gizli anahtarınızla oluşturun.
ApiClient apiClient = new ApiClient("YOUR_CLIENT_ID", "YOUR_CLIENT_SECRET");
WatermarkApi watermarkApi = new WatermarkApi(apiClient);
Bu adım, Java kodunuzu GroupDocs.Watermark Cloud hizmetine bağlar. Daha fazla ayrıntı için API referansına bakın.
- Kaynak PDF dosyasını belirtin: İşaretlemek istediğiniz PDF’ye işaret eden bir
FileInfonesnesi oluşturun.
FileInfo fileInfo = new FileInfo();
fileInfo.setFilePath("input.pdf");
Dosya, istek yapılmadan önce GroupDocs depolama alanınıza yüklenmelidir.
Görüntü filigranını yapılandırın: Görüntü yolunu, opaklığı, ölçek faktörünü, dönüşü ve hizalamayı tanımlayın.
ImageWatermark imageWatermark = new ImageWatermark(); imageWatermark.setImagePath("watermark.png"); imageWatermark.setOpacity(0.5); imageWatermark.setScaleFactor(0.3); imageWatermark.setHorizontalAlignment(HorizontalAlignment.CENTER); imageWatermark.setVerticalAlignment(VerticalAlignment.CENTER); imageWatermark.setMargin(new Margin(10, 10, 10, 10));İstenilen görünümü elde etmek için bu değerleri ayarlayın; opaklık şeffaflığı kontrol ederken, ölçek faktörü sayfaya göre boyutu belirler.
Filigran seçeneklerini ve çıktı yolunu ayarlayın: Dosya bilgisi ve filigranı bir
WatermarkOptionsnesnesine birleştirin.WatermarkOptions options = new WatermarkOptions(); options.setFileInfo(fileInfo); options.setImageWatermark(imageWatermark); options.setOutputPath("output.pdf");outputPath, hizmete oluşturulan PDF’nin nerede saklanacağını bildirir.İsteği yürütün: Bir
AddWatermarkRequestoluşturun ve API’yi çağırın. Başarı veya hata yanıtlarını işleyin.AddWatermarkRequest request = new AddWatermarkRequest(options); try { AddWatermarkResponse response = watermarkApi.addWatermark(request); System.out.println("Watermark added successfully. Output file: " + response.getPath()); } catch (Exception e) { System.err.println("Error adding watermark: " + e.getMessage()); }Yürütmeden sonra, filigranlı PDF belirttiğiniz konumda bulunur.
Tam Kod Örneği: Java’da PDF Belgelerine Görüntü Filigranı Ekleme
Aşağıdaki örnek, istemci başlatmadan su işareti eklenmiş PDF’yi kaydetmeye kadar tam uygulamayı gösterir.
import com.groupdocs.cloud.watermark.api.WatermarkApi;
import com.groupdocs.cloud.watermark.client.ApiClient;
import com.groupdocs.cloud.watermark.model.AddWatermarkRequest;
import com.groupdocs.cloud.watermark.model.AddWatermarkResponse;
import com.groupdocs.cloud.watermark.model.FileInfo;
import com.groupdocs.cloud.watermark.model.ImageWatermark;
import com.groupdocs.cloud.watermark.model.Margin;
import com.groupdocs.cloud.watermark.model.WatermarkOptions;
import com.groupdocs.cloud.watermark.model.enums.HorizontalAlignment;
import com.groupdocs.cloud.watermark.model.enums.VerticalAlignment;
public class AddImageWatermarkExample {
public static void main(String[] args) {
// Initialize API client (replace with your actual credentials)
ApiClient apiClient = new ApiClient("YOUR_CLIENT_ID", "YOUR_CLIENT_SECRET");
WatermarkApi watermarkApi = new WatermarkApi(apiClient);
// Input PDF file information
FileInfo fileInfo = new FileInfo();
fileInfo.setFilePath("input.pdf");
// Image watermark configuration
ImageWatermark imageWatermark = new ImageWatermark();
imageWatermark.setImagePath("watermark.png"); // Path to watermark image
imageWatermark.setOpacity(0.5); // 50% opacity
imageWatermark.setScaleFactor(0.3); // 30% of page size
imageWatermark.setRotationAngle(0); // No rotation
imageWatermark.setHorizontalAlignment(HorizontalAlignment.CENTER);
imageWatermark.setVerticalAlignment(VerticalAlignment.CENTER);
imageWatermark.setMargin(new Margin(10, 10, 10, 10)); // 10 points margin on all sides
// Watermark options
WatermarkOptions options = new WatermarkOptions();
options.setFileInfo(fileInfo);
options.setImageWatermark(imageWatermark);
options.setOutputPath("output.pdf"); // Resulting PDF with watermark
// Create request and call API
AddWatermarkRequest request = new AddWatermarkRequest(options);
try {
AddWatermarkResponse response = watermarkApi.addWatermark(request);
System.out.println("Watermark added successfully. Output file: " + response.getPath());
} catch (Exception e) {
System.err.println("Error adding watermark: " + e.getMessage());
e.printStackTrace();
}
}
}
Not: Bu kod örneği temel işlevselliği gösterir. Projenizde kullanmadan önce dosya yollarını (
input.pdf,watermark.png,output.pdf) gerçek dosya konumlarınıza göre güncellediğinizden, tüm gerekli bağımlılıkların doğru şekilde yüklendiğinden emin olun ve geliştirme ortamınızda kapsamlı bir şekilde test edin. Herhangi bir sorunla karşılaşırsanız, lütfen resmi belgeler adresine bakın veya destek ekibi ile iletişime geçin.
cURL ve REST API ile PDF Belgelerine Görüntü Filigranı Uygulama
Aşağıda, Java kodu yazmadan aynı sonucu elde etmek için cURL ile kullanabileceğiniz REST çağrıları bulunmaktadır.
Erişim belirteci alın
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"}'Yanıt, sonraki çağrılarda kullanılan bir
access_tokeniçerir.Kaynak PDF’yi yükleyin
curl -X POST "https://api.groupdocs.cloud/v2.0/storage/upload?path=input.pdf" \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \ -F "file=@/path/to/input.pdf"Filigran görüntüsünü yükleyin
curl -X POST "https://api.groupdocs.cloud/v2.0/storage/upload?path=watermark.png" \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \ -F "file=@/path/to/watermark.png"Görüntü filigranı ekleyin
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.pdf" },
"imageWatermark": {
"imagePath": "watermark.png",
"opacity": 0.5,
"scaleFactor": 0.3,
"horizontalAlignment": "Center",
"verticalAlignment": "Center",
"margin": { "top": 10, "right": 10, "bottom": 10, "left": 10 }
},
"outputPath": "output.pdf"
}'
Bu istek, Java kod mantığını yansıtarak aynı opaklık, ölçekleme ve hizalama ayarlarını uygular.
- Filigranlı PDF’yi indirin
curl -X GET "https://api.groupdocs.cloud/v2.0/storage/download?path=output.pdf" \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \ -o output.pdf
İstek gövdeleri ve desteklenen parametreler hakkında daha fazla ayrıntı için, resmi API belgelerine bakın.
Kurulum ve Yapılandırma GroupDocs.Watermark Cloud SDK for Java
Maven bağımlılığını pom.xml dosyanıza ekleyin (veya eşdeğer Gradle snippet’ini). Kütüphane Maven Central’da barındırılmaktadır.
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-watermark-cloud</artifactId>
<version>23.8</version>
</dependency>
Ayrıca geçerli bir GroupDocs Cloud hesabına da ihtiyacınız var. Client ID ve Client Secret değerlerinizi GroupDocs portalından alın. SDK bulut hizmetiyle iletişim kurduğundan ek bir çalışma zamanı kurulumu gerekmez.
PDF Belgeleri için Görüntü Filigran Seçeneklerini İnce Ayar Yapma
SDK, filigranın görsel görünümünü kontrol etmenizi sağlayan çeşitli özellikler sunar.
Opaklığı Ayarla
imageWatermark.setOpacity(0.75); // 75% opacity for a more visible watermark
Opaklık değerleri 0.0 (tamamen şeffaf) ile 1.0 (tamamen opak) arasında değişir.
Ölçek Faktörünü Değiştir
imageWatermark.setScaleFactor(0.5); // Watermark occupies 50% of the page width
Ölçek faktörü, filigran boyutunu sayfa boyutlarına göre belirler.
Hizalama ve Kenar Boşluklarını Ayarla
imageWatermark.setHorizontalAlignment(HorizontalAlignment.RIGHT);
imageWatermark.setVerticalAlignment(VerticalAlignment.BOTTOM);
imageWatermark.setMargin(new Margin(20, 20, 20, 20));
Bu ayarlar, filigranı sağ alt köşeye 20 puanlık bir kenar boşluğu ile yerleştirir.
Yapılandırılabilir özelliklerin tam listesi için, API referansına bakın.
Sonuç
Java’da PDF belgelerine resim filigranı eklemek, GroupDocs.Watermark Cloud SDK for Java kullandığınızda basit bir görevdir. SDK, tüm düşük seviyeli PDF manipülasyonunu yönetir ve opaklık, ölçekleme ve konumlandırma gibi görsel yönlere odaklanmanızı sağlar. Yerel bir Java uygulamasını mı yoksa bulut tabanlı bir cURL iş akışını mı tercih ederseniz edin, aynı yüksek kaliteli sonuçlar performanstan ödün vermeden elde edilebilir. Üretim kullanımı için uygun bir lisans almayı unutmayın; fiyatlandırma detayları ürün sayfasında mevcuttur ve değerlendirme için bir geçici lisans sayfası kullanılabilir.
FAQs
Java’da kalite kaybı olmadan PDF’ye resim filigranı nasıl eklenir?
scaleFactorözelliğini kullanarak filigranı sayfaya göre boyutlandırın ve kaynak PDF’nin orijinal DPI’sını koruyun. SDK, PDF’nin çözünürlüğünü korur, böylece filigran herhangi bir yakınlaştırma seviyesinde net görünür.Aynı PDF’ye birden fazla filigran ekleyebilir miyim?
Evet. Farklı yapılandırmalara sahip ayrıImageWatermarknesneleri oluşturun ve bunlarıaddWatermarkmetodunu birden fazla kez çağırarak veya istekte bir listeye ekleyerek sıralı bir şekilde ekleyin.Filigran için desteklenen görüntü formatları nelerdir?
API, PNG, JPG, BMP, GIF ve TIFF gibi yaygın görüntü türlerini kabul eder. PNG, kayıpsız kalite ve şeffaflık desteği nedeniyle önerilir.Uygulamadan önce filigranı önizlemenin bir yolu var mı?
Filigranlı geçici bir PDF oluşturmak ve inceleme için indirmek için GroupDocs.Watermark Cloud SDK for Java’yı kullanabilirsiniz. Bu, aynıaddWatermarkçağrısını, çıkış yolunu geçici bir konuma işaret edecek şekilde kullanır.
