Bir belgedeki filigran, belgenin durumunu gizli, taslak vb. metinlerle tanımlar ve orijinal belgenin kopyalanmasını zorlaştırır. Filigranlar görüntü veya metin tabanlı olabilir ve sıklıkla PDF belgelerinde kullanılır. C++ uygulamalarınızda PDF belgelerine filigran eklemeniz gerekebilir. Bunun için, bu makale size C++ kullanarak PDF belgelerine metin ve görüntü filigranlarının nasıl ekleneceğini ve kaldırılacağını öğretecektir.

Metin/Görüntü Filigranlarını Eklemek ve Silmek için C++ API

Aspose.PDF for C++, PDF belgeleri oluşturmanıza, okumanıza ve güncellemenize olanak tanıyan bir C++ kitaplığıdır. Ayrıca API, PDF belgelerine Görüntü/Metin filigranlarının eklenmesini ve silinmesini destekler. API’yi NuGet aracılığıyla yükleyebilir veya doğrudan indirilenler bölümünden indirebilirsiniz.

PM> Install-Package Aspose.PDF.Cpp

C++ kullanarak bir PDF Dosyasına Metin Filigranı Ekleme

Aspose.PDF for C++ API ile metin filigranının yazı tipi stilini, metnini, rengini, açısını, opaklığını vb. kontrol edebilirsiniz. Aşağıdakiler, bir PDF dosyasına metin filigranı ekleme adımlarıdır.

Aşağıdaki örnek kod, C++ kullanılarak bir PDF dosyasına nasıl metin filigranı ekleneceğini gösterir.

// Kaynak PDF belgesini aç
auto pdfDocument = MakeObject<Document>(u"SourceDirectory\\Sample 1.pdf");

// TextStamp sınıfının bir örneğini oluşturun
System::SharedPtr<TextStamp> textStamp = MakeObject<TextStamp>(u"CONFIDENTIAL");

// Filigranın konumunu ayarlayın
textStamp->set_XIndent(70);
textStamp->set_YIndent(300);

// Metin özelliklerini ayarla
textStamp->get_TextState()->set_Font(FontRepository::FindFont(u"Arial"));
textStamp->get_TextState()->set_FontSize(72.0F);
textStamp->get_TextState()->set_ForegroundColor(Aspose::Pdf::Color::get_Red());
textStamp->set_Opacity(0.4);
textStamp->set_RotateAngle(45);
textStamp->setStampId(123456);

// PDF sayfasına filigran ekleyin
pdfDocument->get_Pages()->idx_get(1)->AddStamp(textStamp);

// PDF dosyasını kaydedin
pdfDocument->Save(u"OutputDirectory\\Text-Watermark-Out.pdf", SaveFormat::Pdf);
Örnek kod tarafından oluşturulan çıktı PDF dosyasının görüntüsü

Örnek kod tarafından oluşturulan çıktı PDF dosyasının görüntüsü

C++ kullanarak bir PDF Dosyasına Görüntü Filigranı Ekleme

Görüntü filigranları genellikle belgenin sahipliğini logo veya başka herhangi bir tanımlanabilir görüntü kullanarak göstermek için kullanılır. Aşağıda verilen adımları kullanarak PDF dosyalarına bir görüntü filigranı ekleyebilirsiniz.

Aşağıdaki örnek kod, C++ kullanarak bir PDF dosyasına görüntü filigranı eklemeyi gösterir.

// Kaynak PDF belgesini aç
auto pdfDocument = MakeObject<Document>(u"SourceDirectory\\Sample 1.pdf");

// ImageStamp sınıfının bir örneğini oluşturun
System::SharedPtr<ImageStamp> imageStamp = MakeObject<ImageStamp>(u"SourceDirectory\\aspose.png");

// Filigranın konumunu ayarlayın
imageStamp->set_XIndent(150);
imageStamp->set_YIndent(350);

// Diğer özellikleri ayarla
imageStamp->set_Height(100);
imageStamp->set_Width(300);
imageStamp->set_RotateAngle(45);
imageStamp->set_Opacity(0.4);
imageStamp->setStampId(12345678);

// PDF sayfasına filigran ekleyin
pdfDocument->get_Pages()->idx_get(1)->AddStamp(imageStamp);

// PDF dosyasını kaydedin
pdfDocument->Save(u"OutputDirectory\\Image-Watermark-Out.pdf", SaveFormat::Pdf);
Örnek kod tarafından oluşturulan çıktı PDF dosyasının görüntüsü

Örnek kod tarafından oluşturulan çıktı PDF dosyasının görüntüsü

C++ kullanarak bir PDF Dosyasından Metin veya Görüntü Filigranını Kaldırma

Bir PDF belgesinden filigranları kaldırmanız gereken senaryolar olabilir. Önceki örneklerde, hem metin hem de resim filigranları için kimlikler tanımladık. Bu kimlikleri, filigranları PDF belgelerinden kaldırmak için kullanacağız. PDF dosyalarından filigranları kaldırma adımları aşağıdadır.

Aşağıdaki örnek kod, C++ kullanılarak PDF dosyalarından metin ve resim filigranlarının nasıl kaldırılacağını gösterir.

// PdfContentEditor sınıfının bir örneğini oluşturun
System::SharedPtr<PdfContentEditor> contentEditor = MakeObject<PdfContentEditor>();

// Filigranı içeren PDF dosyasını açın
contentEditor->BindPdf(u"SourceDirectory\\SampleImageWatermark.pdf");

// Filigranı kimliğe göre sil
contentEditor->DeleteStampById(12345678);

// PDF dosyasını kaydedin
pdfDocument->Save(u"OutputDirectory\\Remove-Watermark-Out.pdf", SaveFormat::Pdf);

Ücretsiz Lisans Alın

Ücretsiz bir geçici lisans talep ederek API’yi değerlendirme sınırlamaları olmadan deneyebilirsiniz.

Çözüm

Bu makalede, C++ kullanarak PDF dosyalarında filigranlarla nasıl çalışılacağını öğrendiniz. Özellikle, Aspose.PDF for C++ API kullanarak PDF belgelerine görüntü ve metin filigranlarının nasıl ekleneceğini ve kaldırılacağını öğrendiniz. API, PDF ile ilgili görevlerinizi otomatikleştirmek için birçok ek özellik sağlar. Resmi belgeleri ziyaret ederek API’yi ayrıntılı olarak inceleyebilirsiniz. Herhangi bir sorunuz olması durumunda lütfen ücretsiz destek forumumuzda bize ulaşmaktan çekinmeyin.

Ayrıca bakınız