오늘 우리는 C#을 사용하여 문서 및 이미지의 메타데이터를 프로그래밍 방식으로 제거하거나 완전히 정리하는 몇 가지 방법을 배우려고 합니다. 이전 게시물에서 Java를 사용하여 문서 및 이미지에서 사용 가능한 모든 메타데이터 속성과 선택적 속성을 제거하는 것에 대해 논의했습니다. 문서에 첨부된 수신자에게 개인 정보를 숨기는 것이 중요한 경우가 있습니다. 다음은 C#을 사용하여 메타데이터에서 파일을 정리하는 데 도움이 되는 항목입니다.
.NET 메타데이터 제거 API
계획된 것을 달성하기 위해 GroupDocs.Metadata for .NET API를 사용하여 .NET 개발자가 지원되는 형식의 많은 문서에서 메타데이터를 추가, 수정, 추출, 제거 또는 완전히 추가할 수 있습니다. 이미지 및 기타 파일. API는 EXIF, XMP, IPTC, ID3 태그 등과 같은 메타데이터 표준을 지원합니다. DLL 또는 MSI 설치 프로그램을 다운로드하거나 NuGet을 통해 설치할 수 있습니다.
Install-Package GroupDocs.Metadata
C#을 사용하여 문서에서 메타데이터 제거
특정 필터를 적용하지 않고 모든 메타데이터 속성을 제거하려면 Sanitize 방법을 사용하세요. 다음은 GroupDocs.Metadata for .NET를 사용하여 DOCX, PDF, XLSX 등과 같은 문서에서 메타데이터를 정리하는 단계입니다.
- 먼저 Metadata 클래스 객체를 생성하고 대상 문서의 경로를 매개변수로 전달합니다.
- 사용 가능한 모든 메타데이터를 지우려면 Sanitize 방법을 사용하십시오. 제거된 메타데이터 속성의 수를 반환합니다.
- Save 메서드를 호출하여 메타데이터가 제거된 출력 파일을 저장합니다.
다음 C# 코드 샘플은 PDF 문서에서 메타데이터를 제거하고 지우는 방법을 보여줍니다.
/*
* Word, Excel,
* C#을 사용하는 PowerPoint, PDF 및 기타 문서
*/
using (Metadata metadata = new Metadata("filePath/document.pdf"))
{
var affected = metadata.Sanitize();
metadata.Save("filePath/output.pdf");
}
C#을 사용하여 이미지에서 메타데이터 제거
문서에서 메타데이터를 제거하든 이미지 파일에서 제거하든 상관없이 프로세스는 동일하게 유지됩니다. 소스 문서만 그에 따라 변경됩니다.
- Metadata 클래스의 객체를 생성하고 문서 경로를 매개변수로 전달합니다.
- 사용 가능한 메타데이터 속성을 제거하려면 Sanitize 메서드를 호출합니다.
- 저장 방식으로 출력 파일을 저장합니다.
다음 C# 코드 샘플은 JPG 이미지에서 메타데이터를 제거하는 방법을 보여줍니다.
/*
* PNG, JPG/JPEG,
* C#을 사용하는 WebP, BMP, GIF, TIFF 및 기타 이미지
*/
using (Metadata metadata = new Metadata("filePath/document.jpg"))
{
var affected = metadata.Sanitize();
metadata.Save("filePath/output.jpg");
}
C#을 사용하여 문서 및 이미지에서 선택적 메타데이터 제거
파일에서 사용 가능한 모든 메타데이터를 제거할 필요가 없고 선택적 메타데이터 속성만 제거하려는 경우. 다음 단계에서는 속성의 특정 이름을 사용하여 대상 메타데이터 속성을 찾고 제거할 수 있습니다.
- Metadata 클래스의 객체를 생성하여 소스 문서 또는 이미지 파일을 로드합니다.
- 메타데이터 속성을 찾기 위해 개인화된 사양을 만듭니다.
- 생성된 개인화 사양으로 RemoveProperties 메소드를 호출합니다.
- 저장 방식으로 출력 파일을 저장합니다.
// C#을 사용하여 사용자 정의 필터를 충족하는 문서 및 이미지에서 메타데이터 속성 제거
using (Metadata metadata = new Metadata("filePath/document.docx"))
{
// 다음 속성을 모두 제거합니다.
// 문서 작성자의 이름을 포함하거나
// 마지막 편집자를 참조하거나
// 속성 값은 문자열이고 주어진 문자열 "GroupDocs"와 같습니다.
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");
}
결론
C#을 사용하여 문서 및 이미지에서 메타데이터를 제거하는 방법을 배웠습니다. 이 기사를 살펴본 후에는 .NET을 사용하여 자신만의 메타데이터 클리너 애플리케이션을 구축하는 것이 편할 것입니다. MS Word 문서 형식, 스프레드시트, 프리젠테이션, PDF 파일, 이미지, 이메일, eBook, 그림, zip 파일 및 더 많은 API에서 지원하는 파일 형식에서 메타데이터 제거를 지원할 수 있습니다.
문서에서 .NET 메타데이터 조작 API를 더 탐색할 수 있습니다.