GroupDocs.Redaction for .NET 26.6 artık kullanılabilir. Bu sürüm, akışlardan ve dosyalardan açık bir formatla belge açmayı kolaylaştırıyor ve çapraz platform uyumluluğunu artırmak için System.Drawing‘den bağımsız yeni bir çizim API’si sunuyor.

Düzeltmeler ve iyileştirmeler

  • [İyileştirme] Bir akıştan veya dosya yolundan belge açarken dosya türünü belirtin. (REDACTIONNET-572)
  • [İyileştirme] Çapraz platform uyumluluğunu artırmak için System.Drawing‘den ayrılın. (REDACTIONNET-799)

Yenilikler

Bu sürüm, entegrasyonu basitleştiren ve API’yi daha geniş platform desteği için hazırlayan iki alana odaklanıyor.

LoadOptions.FileType ile belge formatını belirtin

Bir belge açtığınızda, GroupDocs.Redaction genellikle formatını otomatik olarak algılar. Bu, doğru uzantıya sahip dosyalar için iyi çalışır, ancak dosya adı olmayan akışlar veya uzantı gerçek içeriğe uymadığında başarısız olabilir.

26.6 sürümü, LoadOptions.FileType özelliğini ve LoadOptions(FileType) yapıcısını ekler. FileType‘ı FileType.DOCX veya FileType.PDF gibi desteklenen bir sabite ayarlayın; kütüphane belgeyi bu formatta açar ve ikili format algılamasını atlar. FileType belirtilmediğinde veya FileType.Unknown olduğunda varsayılan davranış değişmez.

GroupDocs.Redaction.Options.Drawing içinde çapraz‑platform çizim türleri

Önceden bazı redaksiyon seçenekleri System.Drawing türlerine (Color, Point, Size, Rectangle, Font) dayanıyordu. Bu türler tüm platformlarda mevcut değildir ve Linux ya da konteyner ortamlarında dağıtımı zorlaştırabilir.

Yeni GroupDocs.Redaction.Options.Drawing ad alanı, genel API’de kullanılmak üzere Color, Point, Size, Rectangle, Font ve FontStyle türlerini sağlar. Yeni aşırı yüklemeler bu türleri ReplacementOptions, RegionReplacementOptions, ImageAreaRedaction, PageAreaFilter, TextFragment ve ilgili sınıflarda kabul eder.

System.Drawing kullanan mevcut kod derlenmeye ve çalışmaya devam eder. İlgili üyeler artık eski olarak işaretlenmiştir; gelecekteki güncellemelerde yeni türlere geçilmesi önerilir.

Genel API değişiklikleri

Eklenenler

  • LoadOptions.FileType özelliği
  • LoadOptions(FileType fileType) yapıcısı
  • GroupDocs.Redaction.Options.Drawing içinde çizim türleri: Color, Point, Size, Rectangle, Font, FontStyle
  • GroupDocs.Redaction.Options.Drawing türlerini kabul eden yeni aşırı yüklemeler

Eski (Obsolete) Olanlar

  • ReplacementOptions.BoxColor — yerine ReplacementOptions.BoxFillColor kullanın
  • ReplacementOptions(System.Drawing.Color) — yerine ReplacementOptions(GroupDocs.Redaction.Options.Drawing.Color) kullanın
  • RegionReplacementOptions.FillColor — yerine RegionReplacementOptions.AreaFillColor kullanın
  • RegionReplacementOptions.Size — yerine RegionReplacementOptions.AreaSize kullanın
  • RegionReplacementOptions(System.Drawing.Color, System.Drawing.Size) — yerine GroupDocs.Redaction.Options.Drawing.Color ve GroupDocs.Redaction.Options.Drawing.Size içeren aşırı yüklemeyi kullanın
  • RegionReplacementOptions(System.Drawing.Color, System.Drawing.Font, string) — yerine GroupDocs.Redaction.Options.Drawing.Color ve GroupDocs.Redaction.Options.Drawing.Font içeren aşırı yüklemeyi kullanın
  • ImageAreaRedaction.TopLeft — yerine ImageAreaRedaction.TopLeftPosition kullanın
  • ImageAreaRedaction(System.Drawing.Point, RegionReplacementOptions) — yerine GroupDocs.Redaction.Options.Drawing.Point içeren aşırı yüklemeyi kullanın
  • PageAreaFilter.Rectangle — yerine PageAreaFilter.AreaRectangle kullanın
  • PageAreaFilter(System.Drawing.Point, System.Drawing.Size) — yerine GroupDocs.Redaction.Options.Drawing.Point ve GroupDocs.Redaction.Options.Drawing.Size içeren aşırı yüklemeyi kullanın
  • TextFragment.Rectangle — yerine TextFragment.BoundingRectangle kullanın
  • TextFragment(string, System.Drawing.Rectangle) — yerine TextFragment(string, GroupDocs.Redaction.Options.Drawing.Rectangle) kullanın
  • IImageFormatInstance.EditArea(System.Drawing.Point, RegionReplacementOptions) — yerine GroupDocs.Redaction.Options.Drawing.Point içeren aşırı yüklemeyi kullanın

Kod örnekleri

Açık dosya türüyle bir belge açma

using System.IO;
using GroupDocs.Redaction.Options;
using GroupDocs.Redaction.Redactions;

using (Stream stream = File.OpenRead("sample.docx"))
{
    using (Redactor redactor = new Redactor(stream, new LoadOptions(FileType.DOCX)))
    {
        redactor.Apply(new DeleteAnnotationRedaction());
        redactor.Save();
    }
}

using (Redactor redactor = new Redactor("sample.pdf", new LoadOptions(FileType.PDF)))
{
    redactor.Apply(new ExactPhraseRedaction("Test", new ReplacementOptions("[redacted]")));
    redactor.Save();
}

System.Drawing yerine GroupDocs.Redaction.Options.Drawing kullanma

using GroupDocs.Redaction.Options.Drawing;
using GroupDocs.Redaction.Redactions;

// Önceden: new ReplacementOptions(System.Drawing.Color.Red)
using (Redactor redactor = new Redactor("sample.docx"))
{
    redactor.Apply(new ExactPhraseRedaction("John Doe", new ReplacementOptions(Color.Red)));
    redactor.Save();
}

// Önceden: new ImageAreaRedaction(new System.Drawing.Point(516, 311),
//     new RegionReplacementOptions(System.Drawing.Color.Blue, new System.Drawing.Size(170, 35)))
using (Redactor redactor = new Redactor("sample.jpg"))
{
    redactor.Apply(new ImageAreaRedaction(new Point(516, 311),
        new RegionReplacementOptions(Color.Blue, new Size(170, 35))));
    redactor.Save();
}

Güncellemeyi nasıl alabilirsiniz

  • NuGet – En yeni GroupDocs.Redaction for .NET paketine NuGet üzerinden yükseltin
  • Doğrudan İndirme – GroupDocs.Redaction derlemelerini GroupDocs.Redaction for .NET 26.6 sayfasından indirin

Daha fazla bilgi