Bugün, C# kullanarak görüntülerin yanı sıra belgelerin meta verilerini programlı olarak kaldırmanın veya tamamen temizlemenin bazı yollarını öğrenmek üzereyiz. Önceki bir gönderide, Java kullanarak belgelerden ve görüntülerden seçici ve tüm kullanılabilir meta veri özelliklerini kaldırmayı tartışmıştık. Belgeye eklenen kişisel bilgilerin alıcıdan gizlenmesi bazen önemlidir. C# kullanarak dosyalarınızı meta verilerden temizlemenize yardımcı olacak konular aşağıdadır.
- .NET Meta Veri Temizleyici API’si
- C# kullanarak Belgelerden Meta Verileri Kaldırma
- C# kullanarak Görsellerden Meta Verileri Temizleyin
- C# kullanarak Belgelerden ve Görüntülerden Seçici Meta Verileri Kaldırma
.NET Meta Veri Kaldırma API’sı
Planlananı başarmak için, .NET geliştiricilerinin birçok desteklenen biçim belgeden meta veri eklemesine, değiştirmesine, ayıklamasına, kaldırmasına veya tamamen meta verisine izin veren GroupDocs.Metadata for .NET API’sini kullanacağım. görüntüler ve diğer dosyalar. API, EXIF, XMP, IPTC, ID3 etiketi vb. meta veri standartlarını destekler. DLL’leri veya MSI yükleyicisini indirebilir veya NuGet aracılığıyla kurabilirsiniz.
Install-Package GroupDocs.Metadata
C# kullanarak Belgelerden Meta Verileri Kaldırma
Belirli bir filtre uygulamadan tüm meta veri özelliklerini kaldırmak için Sanitize yöntemini kullanın. Aşağıda, GroupDocs.Metadata for .NET kullanılarak DOCX, PDF, XLSX vb. belgelerden meta verileri temizleme adımları yer almaktadır.
- Metadata sınıf nesnesi oluşturarak başlayın ve hedef belgenin yolunu parametre olarak iletin.
- Mevcut tüm meta verileri temizlemek için Sanitize yöntemini kullanın. Kaldırılan meta veri özelliklerinin sayısını döndürür.
- Çıktı dosyasını kaldırılmış meta verilerle kaydetmek için Kaydet yöntemini çağırın.
Aşağıdaki C# kod örneği, bir PDF belgesinden meta verilerin nasıl kaldırılacağını ve temizleneceğini gösterir.
/*
* Algılanan tüm meta veri özelliklerini Word, Excel'den temizleyin,
* PowerPoint, PDF ve C# kullanan diğer belgeler
*/
using (Metadata metadata = new Metadata("filePath/document.pdf"))
{
var affected = metadata.Sanitize();
metadata.Save("filePath/output.pdf");
}
C# kullanarak Görsellerden Meta Verileri Kaldırma
Meta verileri belgelerinizden veya görüntü dosyalarınızdan kaldırmak isteyip istemediğinize göre süreç aynı kalacaktır. Yalnızca kaynak belge buna göre değiştirilecektir.
- Metadata sınıfının nesnesini oluşturun ve belge yolunu parametre olarak iletin.
- Kullanılabilir tüm meta veri özelliklerini kaldırmak için Sanitize yöntemini çağırın.
- Çıktı dosyasını Kaydet yöntemini kullanarak kaydedin.
Aşağıdaki C# kod örneği, bir JPG görüntüsünden meta verilerin nasıl kaldırılacağını gösterir.
/*
* PNG, JPG/JPEG'den algılanan tüm meta veri özelliklerini temizleyin veya kaldırın.
* WebP, BMP, GIF, TIFF ve C# kullanan diğer resimler
*/
using (Metadata metadata = new Metadata("filePath/document.jpg"))
{
var affected = metadata.Sanitize();
metadata.Save("filePath/output.jpg");
}
C# kullanarak Belgelerden ve Görüntülerden Seçici Meta Verileri Kaldırma
Dosyalardan tüm kullanılabilir meta verilerin kaldırılması gerekmiyorsa ve yalnızca seçili meta veri özelliklerini kaldırmak istiyorsak. Aşağıdaki adımlar, özelliğin belirli adını kullanarak hedeflenen meta veri özelliklerini bulmanıza ve kaldırmanıza olanak tanır.
- Kaynak belgeyi veya görüntü dosyasını yüklemek için Metadata sınıfından bir nesne oluşturun.
- Meta veri özelliklerini bulmak için kişiselleştirilmiş özellikler oluşturun.
- Oluşturulan kişiselleştirilmiş belirtimlerle RemoveProperties yöntemini çağırın.
- Çıktı dosyasını Kaydet yöntemini kullanarak kaydedin.
// C# kullanarak özelleştirilmiş filtreyi karşılayan belgelerden ve resimlerden meta veri özelliklerini kaldırın
using (Metadata metadata = new Metadata("filePath/document.docx"))
{
// Aşağıdaki özelliklerin tümünü kaldırın:
// belge yazarının adını içerir VEYA
// son düzenleyiciyi ifade eder VEYA
// özellik değeri bir dizedir VE verilen "GroupDocs" dizisine eşittir
var affected = metadata.RemoveProperties(
p => p.Tags.Contains(Tags.Person.Creator) ||
p.Tags.Contains(Tags.Person.Editor) ||
p.Value.Type == MetadataPropertyType.String && p.Value.ToString().Contains("GroupDocs"));
Console.WriteLine("Properties removed: {0}", affected);
metadata.Save("outputPath/document.docx");
}
Çözüm
C# kullanarak belgelerden ve görüntülerden meta verileri kaldırmanın yollarını öğrendik. Bu makaleyi okuduktan sonra, .NET kullanarak kendi meta veri temizleyici uygulamanızı oluşturmakta kendinizi rahat hissedeceksiniz. MS Word belge formatlarından, elektronik tablolardan, sunumlardan, PDF dosyalarından, resimlerden, e-postalardan, e-Kitaplardan, çizimlerden, zip dosyalarından ve daha pek çok [API tarafından desteklenen dosya formatlarından] meta veri kaldırmayı destekleyebilir 20.
Belgelerden .NET Metadata Manipulation API hakkında daha fazla bilgi edinebilirsiniz.