GroupDocs.Redaction for .NET 26.9 está agora disponível. Esta versão remove a dependência System.Drawing.Common dos pacotes .NET 6, .NET 8 e .NET 10 e melhora a compatibilidade multiplataforma com Linux e outros sistemas operacionais suportados.

Correções e aprimoramentos

  • [Enhancement] Migrar do System.Drawing para melhorar a compatibilidade multiplataforma. (REDACTIONNET-799)

O que há de novo?

A versão 26.9 conclui a migração do System.Drawing. Os tipos System.Drawing foram removidos da API pública. O código interno continua a usar System.Drawing apenas para o processamento de documentos no .NET Framework 4.6.2.

Pacotes multiplataforma sem System.Drawing.Common

Os pacotes .NET 6, .NET 8 e .NET 10 não dependem mais de System.Drawing.Common. O processamento de documentos não requer GDI+ ou libgdiplus. A compilação para .NET Framework 4.6.2 ainda usa a pilha Windows GDI+.

Tipos System.Drawing removidos da API pública

Os valores de cor, ponto, tamanho, retângulo e fonte agora vêm apenas de GroupDocs.Redaction.Options.Drawing. Código que ainda passa System.Drawing.Color, System.Drawing.Point, System.Drawing.Size, System.Drawing.Rectangle ou System.Drawing.Font não compila mais.

GroupDocs.Redaction.Options.Drawing.Color ainda expõe cores nomeadas como Color.Black e Color.Blue, além de Color.FromName e Color.FromArgb.

Os nomes originais dos membros são novamente a API atual. BoxColor, FillColor, Size, TopLeft e Rectangle agora utilizam os tipos de desenho do GroupDocs. Os aliases temporários adicionados na 26.6 estão obsoletos:

Alias obsoleta Usar em vez
ReplacementOptions.BoxFillColor ReplacementOptions.BoxColor
RegionReplacementOptions.AreaFillColor RegionReplacementOptions.FillColor
RegionReplacementOptions.AreaSize RegionReplacementOptions.Size
ImageAreaRedaction.TopLeftPosition ImageAreaRedaction.TopLeft
PageAreaFilter.AreaRectangle PageAreaFilter.Rectangle
TextFragment.BoundingRectangle TextFragment.Rectangle

Alterações na API pública

Removidos

  • Membros públicos que aceitavam ou retornavam tipos System.Drawing em ReplacementOptions, RegionReplacementOptions, ImageAreaRedaction, PageAreaFilter, TextFragment e IImageFormatInstance
  • ReplacementOptions(System.Drawing.Color)
  • Construtores de RegionReplacementOptions que recebiam System.Drawing.Color, System.Drawing.Size ou System.Drawing.Font
  • ImageAreaRedaction(System.Drawing.Point, RegionReplacementOptions)
  • PageAreaFilter(System.Drawing.Point, System.Drawing.Size)
  • TextFragment(string, System.Drawing.Rectangle)
  • IImageFormatInstance.EditArea(System.Drawing.Point, RegionReplacementOptions)

API atual

  • ReplacementOptions.BoxColor e ReplacementOptions(GroupDocs.Redaction.Options.Drawing.Color)
  • RegionReplacementOptions.FillColor, RegionReplacementOptions.Size e construtores que aceitam cor, tamanho e fonte de GroupDocs.Redaction.Options.Drawing
  • ImageAreaRedaction.TopLeft e ImageAreaRedaction(GroupDocs.Redaction.Options.Drawing.Point, RegionReplacementOptions)
  • PageAreaFilter.Rectangle e PageAreaFilter(GroupDocs.Redaction.Options.Drawing.Point, GroupDocs.Redaction.Options.Drawing.Size)
  • TextFragment.Rectangle e TextFragment(string, GroupDocs.Redaction.Options.Drawing.Rectangle)
  • IImageFormatInstance.EditArea(GroupDocs.Redaction.Options.Drawing.Point, RegionReplacementOptions)

Obsoletos

  • ReplacementOptions.BoxFillColor — use ReplacementOptions.BoxColor
  • RegionReplacementOptions.AreaFillColor — use RegionReplacementOptions.FillColor
  • RegionReplacementOptions.AreaSize — use RegionReplacementOptions.Size
  • ImageAreaRedaction.TopLeftPosition — use ImageAreaRedaction.TopLeft
  • PageAreaFilter.AreaRectangle — use PageAreaFilter.Rectangle
  • TextFragment.BoundingRectangle — use TextFragment.Rectangle

Exemplos de código

Desenhar uma caixa colorida sobre o texto correspondido

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

using (Redactor redactor = new Redactor("sample.docx"))
{
    redactor.Apply(new ExactPhraseRedaction("John Doe", new ReplacementOptions(Color.Black)));
    redactor.Save();
}

Redigir uma área de uma imagem

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

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();
}

Como obter a atualização

  • NuGet – Atualize para o pacote mais recente GroupDocs.Redaction for .NET via NuGet
  • Download direto – Baixe os assemblies do GroupDocs.Redaction na página GroupDocs.Redaction for .NET 26.9

Saiba mais