GroupDocs.Redaction for .NET 26.6이(가) 이제 제공됩니다. 이번 릴리스에서는 스트림 및 파일에서 명시적인 형식으로 문서를 열기가 쉬워졌으며, System.Drawing에 의존하지 않는 새로운 그리기 API를 도입해 크로스 플랫폼 호환성을 향상시켰습니다.
수정 및 개선 사항
- [Enhancement] 스트림 또는 파일 경로에서 문서를 열 때 파일 형식을 지정합니다. (REDACTIONNET-572)
- [Enhancement]
System.Drawing에서 마이그레이션하여 크로스 플랫폼 호환성을 강화합니다. (REDACTIONNET-799)
새로운 기능
이번 릴리스는 통합을 간소화하고 API를 보다 넓은 플랫폼 지원을 위해 준비하는 두 가지 영역에 중점을 두었습니다.
LoadOptions.FileType으로 문서 형식 지정
문서를 열 때 GroupDocs.Redaction은 일반적으로 형식을 자동으로 감지합니다. 파일 확장자가 올바른 경우에는 잘 작동하지만, 파일 이름이 없는 스트림이거나 확장자가 실제 내용과 일치하지 않을 경우 감지가 실패할 수 있습니다.
버전 26.6에서는 LoadOptions.FileType 속성과 LoadOptions(FileType) 생성자가 추가되었습니다. FileType을 FileType.DOCX 또는 FileType.PDF와 같은 지원되는 상수로 설정하면, 라이브러리는 바이너리 형식 감지를 수행하지 않고 해당 형식으로 문서를 엽니다. FileType을 지정하지 않거나 FileType.Unknown인 경우 기본 동작은 변경되지 않습니다.
GroupDocs.Redaction.Options.Drawing의 크로스 플랫폼 그리기 타입
이전에는 여러 레드랙션 옵션이 System.Drawing 타입(Color, Point, Size, Rectangle, Font)에 의존했습니다. 이러한 타입은 모든 플랫폼에서 사용할 수 없으며, Linux 및 컨테이너 환경에서 배포를 복잡하게 만들 수 있습니다.
새로운 GroupDocs.Redaction.Options.Drawing 네임스페이스는 공개 API에서 사용할 수 있도록 Color, Point, Size, Rectangle, Font, FontStyle 타입을 제공합니다. 새로운 오버로드는 ReplacementOptions, RegionReplacementOptions, ImageAreaRedaction, PageAreaFilter, TextFragment 및 관련 클래스에서 이러한 타입을 받아들입니다.
System.Drawing을 사용하던 기존 코드는 계속 컴파일되고 실행됩니다. 해당 멤버는 폐기 예정으로 표시되며, 향후 업데이트에서는 새로운 타입으로 마이그레이션해야 합니다.
공개 API 변경 사항
추가된 내용
LoadOptions.FileType속성LoadOptions(FileType fileType)생성자GroupDocs.Redaction.Options.Drawing에 포함된 그리기 타입:Color,Point,Size,Rectangle,Font,FontStyleGroupDocs.Redaction.Options.Drawing타입을 받아들이는 새로운 오버로드
폐기된 내용
ReplacementOptions.BoxColor— 대신ReplacementOptions.BoxFillColor사용ReplacementOptions(System.Drawing.Color)— 대신ReplacementOptions(GroupDocs.Redaction.Options.Drawing.Color)사용RegionReplacementOptions.FillColor— 대신RegionReplacementOptions.AreaFillColor사용RegionReplacementOptions.Size— 대신RegionReplacementOptions.AreaSize사용RegionReplacementOptions(System.Drawing.Color, System.Drawing.Size)— 대신GroupDocs.Redaction.Options.Drawing.Color와GroupDocs.Redaction.Options.Drawing.Size를 사용하는 오버로드 사용RegionReplacementOptions(System.Drawing.Color, System.Drawing.Font, string)— 대신GroupDocs.Redaction.Options.Drawing.Color와GroupDocs.Redaction.Options.Drawing.Font를 사용하는 오버로드 사용ImageAreaRedaction.TopLeft— 대신ImageAreaRedaction.TopLeftPosition사용ImageAreaRedaction(System.Drawing.Point, RegionReplacementOptions)— 대신GroupDocs.Redaction.Options.Drawing.Point를 사용하는 오버로드 사용PageAreaFilter.Rectangle— 대신PageAreaFilter.AreaRectangle사용PageAreaFilter(System.Drawing.Point, System.Drawing.Size)— 대신GroupDocs.Redaction.Options.Drawing.Point와GroupDocs.Redaction.Options.Drawing.Size를 사용하는 오버로드 사용TextFragment.Rectangle— 대신TextFragment.BoundingRectangle사용TextFragment(string, System.Drawing.Rectangle)— 대신TextFragment(string, GroupDocs.Redaction.Options.Drawing.Rectangle)사용IImageFormatInstance.EditArea(System.Drawing.Point, RegionReplacementOptions)— 대신GroupDocs.Redaction.Options.Drawing.Point를 사용하는 오버로드 사용
코드 예제
명시적인 파일 형식으로 문서 열기
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 대신 GroupDocs.Redaction.Options.Drawing 사용
using GroupDocs.Redaction.Options.Drawing;
using GroupDocs.Redaction.Redactions;
// 이전: 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();
}
// 이전: 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();
}
업데이트 받는 방법
- NuGet – NuGet 을 통해 최신
GroupDocs.Redaction for .NET패키지로 업그레이드 - 직접 다운로드 – GroupDocs.Redaction for .NET 26.6 페이지에서 어셈블리를 다운로드
자세히 알아보기
- Full Release Notes
- Documentation
- Load document with explicit file type
- GroupDocs.Redaction Free Support Forum