Şablonlar, özelleştirilmiş belgeler oluşturmak için yaygın olarak kullanılır. Bu makale, C# kullanarak PDF belgelerinde metin ve sözcüklerin nasıl bulunacağı ve değiştirileceği konusunda rehberlik eder. Kelimeleri ve tümceleri programlı olarak nasıl değiştireceğimizi, kelimeleri büyük/küçük harfe duyarlı aramayla değiştirmeyi, normal ifadeleri kullanarak değiştirmeyi ayrıca tartışacağız. Son olarak, C# kullanarak aranan diziyi nasıl gizleyeceğimizi de öğreneceğiz.
Aşağıdaki konular aşağıda ele alınacaktır:
- Metni Değiştirmek için .NET API
- Kelimeleri veya Deyimleri Bul ve Değiştir
- Büyük/Küçük Harfe Duyarlı Kelime Arama ve Değiştirme
- Normal İfadelerle Değiştirme (RegEx)
- Renkli Kutu ile Metni Gizle
Metni Değiştirmek için .NET Redaksiyon API’si
GroupDocs, .NET uygulamasındaki belgelerin, sunumların, elektronik tabloların, PDF dosyalarının ve görüntülerin içeriğini ve hatta meta verilerini yeniden düzenlemek, gizlemek veya kaldırmak için API olan GroupDocs.Redaction for .NET’i gösterir. API hakkında daha fazla ayrıntı için belgelerini ziyaret edin.
DLL’leri veya MSI yükleyicisini indirilenler bölümünden indirebilir veya API’yi NuGet aracılığıyla .NET uygulamanıza yükleyebilirsiniz. /packages/groupdocs.redaction).
PM> Install-Package GroupDocs.Redaction
Redaksiyon için herhangi bir PDF düzenleyici veya başka bir üçüncü taraf yazılımı yüklemenize gerek yoktur. Aşağıdaki örneklerde kullanılan bir PDF belgesinin ekran görüntüsü aşağıdadır. Aynı yaklaşım, kodda neredeyse hiç değişiklik olmayan veya çok az değişiklik olan diğer belge biçimleri için de işe yarayacaktır.
C# kullanarak PDF’de Kelime veya Deyim Bul ve Değiştir
Bu özelliği, herhangi bir gizli veriyi gizlemek ve ayrıca şablondan yeni bir özelleştirilmiş belge oluşturmak için kullanabilirsiniz. Aşağıdaki adım, C# uygulamasındaki başka bir metinle birlikte bir PDF belgesindeki herhangi bir kelimenin/ifadenin nasıl bulunacağını açıklar.
- Redactor sınıfını kullanarak PDF dosyasını yükleyin.
- ExactPhraseRedaction ve ReplacementOptions kullanarak tam ifadeyi veya kelimeyi bulun. redaksiyon/net/groupdocs.redaction.redactions/replacementoptions).
- Apply() yöntemini kullanarak redaksiyonu uygulayın.
- Save() yöntemini kullanarak yeni belgeyi değişikliklerle birlikte kaydedin.
Aşağıdaki kod, C#‘daki kelimeyi bulur ve değiştirir. Daha doğrusu, “John Doe"nun tüm oluşumlarını “[sansürlü]” kelimesiyle değiştirerek gizler.
// Tam ifadeyi bulun ve C# kullanarak başka bir metinle değiştirin
using (Redactor redactor = new Redactor(@"path/document.pdf"))
{
redactor.Apply(new ExactPhraseRedaction("John Doe", new ReplacementOptions("[censored]")));
redactor.Save(new SaveOptions() { AddSuffix = true, RasterizeToPDF = false });
}
Kodun çıktısı aşağıdaki gibidir.
C# kullanarak PDF’de Büyük/Küçük Harfe Duyarlı Metin veya Tümcecik Bulma ve Değiştirme
Büyük/küçük harfe duyarlı arama ve düzenleme yapabilirsiniz. Aşağıdaki kod, C# dilinde “John Doe” kelimesinin büyük/küçük harfe duyarlı varlığını değiştirir, ancak “john doe” kelimesini değiştirmez.
// Tam ifadeyi bulun (büyük/küçük harfe duyarlı) ve C# kullanarak başka bir metinle değiştirin
using (Redactor redactor = new Redactor(@"path/document.pdf"))
{
redactor.Apply(new ExactPhraseRedaction("John Doe", true /*isCaseSensitive*/, new ReplacementOptions("[censored]")));
redactor.Save(new SaveOptions() { AddSuffix = true, RasterizeToPDF = false });
}
Kodun çıktısı aşağıdaki gibidir.
C# kullanarak PDF’deki Metni Normal İfadelerle (RegEx) Değiştirin
Normal ifadeleri kullanarak belirli bir metin kalıbını da değiştirebilirsiniz. Aşağıdaki adımlar, .NET uygulamanızda normal ifadeyi (RegEx) kullanarak aramadan sonra PDF’yi yeniden düzenlemenize olanak tanır.
- Redactor sınıfını kullanarak PDF belgesini yükleyin.
- ReplacementOptions ile RegexRedaction sınıfını kullanarak normal ifade eşleşmesini bulun net/groupdocs.redaction.redactions/replacementoptions).
- Apply() yöntemini kullanarak değişiklikleri belgeye ekleyin.
- Düzenlenen belgeyi uygun Save() yöntemini kullanarak kaydedin.
Aşağıdaki kod, RegEx kullanılarak bir PDF belgesinde belirli bir metin kalıbının nasıl bulunacağını ve daha sonra C# kullanılarak başka bir metinle nasıl değiştirileceğini/gizleneceğini gösterir.
// Normal ifadeyi kullanarak metni bulun ve C# kullanarak başka bir metinle değiştirin
using (Redactor redactor = new Redactor(@"path/document.pdf"))
{
redactor.Apply(new RegexRedaction("\\d{2}\\s*\\d{2}[^\\d]*\\d{6}", new ReplacementOptions("[censored]")));
redactor.Save(new SaveOptions() { AddSuffix = true, RasterizeToPDF = false });
}
Yukarıdaki kodun çıktısı aşağıdaki gibidir.
Metni C# ile Renkli Kutuyla Değiştirin
Yalnızca PDF dosyanızın aranan içeriğini (özel bilgileri) gizlemek istiyorsanız, üzerine bir kapak koyabilirsiniz. API, aranan metni gizlemenizi sağlar. Aşağıdaki C# kodu, siyah dikdörtgeni belirtilen özel metnin üzerine yerleştirir.
// PDF'de metin bulun ve üzerine C# kullanarak dikdörtgen çizerek gizleyin
using (Redactor redactor = new Redactor(@"path/document.pdf"))
{
redactor.Apply(new ExactPhraseRedaction("John Doe", new ReplacementOptions(System.Drawing.Color.Black)));
redactor.Save(new SaveOptions() { AddSuffix = true, RasterizeToPDF = false });
}
Yukarıdaki kodun çıktısı aşağıdaki gibidir.
Ücretsiz API Lisansı Alın
API’yi değerlendirme sınırlamaları olmadan kullanmak için ücretsiz bir geçici lisans alabilirsiniz.
Çözüm
Sonuç olarak, farklı arama teknikleri kullanarak PDF dosyalarındaki belirli metinleri nasıl bulacağımızı öğrendik. Daha sonra, C# kullanarak .NET uygulamasında metni değiştirerek veya gizleyerek PDF dosyalarının nasıl yeniden düzenleneceğini tartıştık. Daha doğrusu C# dilinde kelimeleri, cümleleri, büyük/küçük harf duyarlılığı ile ve düzenli ifadeleri kullanarak arama yaptık. Son olarak, arama sonuçlarını başka bir metinle veya üzerine bir dikdörtgen kutu ile gizleyerek değiştirdik.
API hakkında daha fazla ayrıntı için belgeleri ziyaret edin. Sorularınız için forum aracılığıyla bize ulaşın.