
외부 응용 프로그램을 설치하지 않고도 프로그래밍 방식으로 PDF 문서를 수정할 수 있습니다. C# 개발자는 .NET 응용 프로그램에서 PDF 문서를 쉽게 수정할 수 있습니다. 이 기사에서는 C#을 사용하여 PDF 문서를 수정하는 방법에 중점을 둘 것입니다.
이 문서에서는 다음 주제를 논의/다룹니다.
- PDF 수정을 위한 C# API
- C#을 사용하여 PDF의 텍스트 수정
- C#을 사용하여 PDF의 메타데이터 수정
- C#을 사용하여 PDF의 이미지 수정
- C#을 사용하여 PDF에 여러 수정 적용
PDF 수정을 위한 C# API
PDF 문서의 수정을 위해 GroupDocs.Redaction for .NET API를 사용합니다. PDF, Word, Excel, PowerPoint 및 이미지 파일을 수정할 수 있습니다. 또한 30가지 이상의 지원 형식에서 분류된 정보를 제거할 수 있습니다. 텍스트 교정, 메타데이터 교정, 주석 교정, 테이블 형식 문서 교정 등 다양한 유형의 교정을 적용할 수 있습니다.
API의 DLL을 다운로드하거나 NuGet을 사용하여 설치할 수 있습니다.
Install-Package GroupDocs.Redaction
C#을 사용하여 PDF의 텍스트 수정
아래에 언급된 간단한 단계에 따라 PDF 문서에서 텍스트 교정을 쉽게 적용할 수 있습니다.
- 입력 파일 경로로 Redactor 클래스의 인스턴스 생성
- SearchPhrase 및 ReplacementOptions을 사용하여 ExactPhraseRedaction 클래스 인스턴스를 만듭니다.
- Redactor.Apply() 메서드 호출
- RedactorChangeLog 클래스 개체에서 결과 가져오기
- Redactor.Save() 메서드를 호출합니다.
다음 코드 샘플은 C#을 사용하여 PDF 문서의 텍스트를 수정하는 방법을 보여줍니다.
// 편집자 생성
Redactor redactor = new Redactor("C:\\Files\\sample.pdf");
// 정확한 문구 수정 생성
ExactPhraseRedaction redaction = new ExactPhraseRedaction("John Doe", true, new ReplacementOptions("[personal]"));
// 수정 적용
RedactorChangeLog result = redactor.Apply(redaction);
if (result.Status != RedactionStatus.Failed)
{
redactor.Save();
};

C#을 사용하여 PDF의 텍스트 수정
Redactor는 문서 편집 프로세스를 수행하기 위한 다양한 메소드를 제공하는 메인 클래스입니다. 또한 문서를 열고 수정하고 저장할 수 있습니다. 이 클래스의 Apply() 메서드는 정의된 수정을 문서에 적용합니다. 또한 이 클래스의 Save() 메서드는 문서를 파일로 저장합니다.
ExactPhraseRedaction은 문서의 정확한 구문을 대체하기 위해 텍스트 수정을 수행하는 방법을 제공합니다. 또한 IsCaseSensitive를 true로 설정하여 대소문자를 구분하는 데이터를 검색할 수 있습니다.
ReplacementOptions은 일치하는 텍스트 대체 옵션을 나타냅니다.
RedactorChangeLog 클래스는 Redactor 클래스의 Apply() 메서드에 전달된 수정 목록에 대한 결과를 나타냅니다.
C#을 사용하여 PDF의 메타데이터 수정
아래에 언급된 간단한 단계에 따라 PDF 문서에 메타데이터 수정을 적용할 수 있습니다.
- 입력 파일 경로로 Redactor 클래스의 인스턴스 생성
- 포함할 MetadataFilter를 사용하여 EraseMetadataRedaction 클래스 인스턴스를 만듭니다.
- Redactor.Apply() 메서드 호출
- Redactor.Save() 메서드를 호출합니다.
다음 코드 샘플은 C#을 사용하여 PDF 문서의 메타데이터를 수정하는 방법을 보여줍니다.
// 편집자 생성
Redactor redactor = new Redactor("C:\\Files\\sample.pdf");
// 작성자, 관리자 및 회사 지우기
EraseMetadataRedaction redaction = new EraseMetadataRedaction(MetadataFilters.Author | MetadataFilters.Manager | MetadataFilters.Company);
// 수정 적용
redactor.Apply(redaction);
redactor.Save();

C#을 사용하여 PDF의 메타데이터 수정
EraseMetadataRedaction 클래스는 모든 메타데이터를 지우는 메서드를 제공합니다. 또한 문서에서 특정 MetadataFilters와 일치하는 메타데이터를 지울 수 있습니다.
MetadataFilters는 Author, Comments, Company와 같은 가장 일반적인 문서 메타데이터 유형의 목록입니다.
C#을 사용하여 PDF의 이미지 수정
아래에 언급된 간단한 단계에 따라 PDF 문서에서 이미지 교정을 적용할 수 있습니다.
- 입력 파일 경로로 Redactor 클래스의 인스턴스 생성
- 도면 점 및 크기 정의
- 그리기 포인트와 RegionReplacementOptions를 사용하여 ImageAreaRedaction 클래스 인스턴스를 만듭니다.
- Redactor.Apply() 메서드 호출
- Redactor.Save() 메서드를 호출합니다.
다음 코드 샘플은 C#을 사용하여 PDF 문서의 이미지를 수정하는 방법을 보여줍니다.
// 편집자 생성
Redactor redactor = new Redactor("C:\\Files\\sample_with_images.pdf");
// 크기 및 점 정의
System.Drawing.Point samplePoint = new System.Drawing.Point(0, 0);
System.Drawing.Size sampleSize = new System.Drawing.Size(300, 240);
// 이미지 영역 수정 정의
ImageAreaRedaction redaction = new ImageAreaRedaction(samplePoint,
new RegionReplacementOptions(System.Drawing.Color.Blue, sampleSize));
// 수정 적용
RedactorChangeLog result = redactor.Apply(redaction);
if (result.Status != RedactionStatus.Failed)
{
redactor.Save();
};

C#을 사용하여 PDF의 이미지 수정
ImageAreaRedaction 클래스를 사용하면 이미지 문서의 지정된 영역에 색상이 지정된 사각형을 배치할 수 있습니다.
RegionReplacementOption 클래스는 이미지로 대체할 영역에 대한 색상 및 영역 매개변수를 나타냅니다.
C#을 사용하여 PDF에 여러 수정 적용
아래에 언급된 간단한 단계에 따라 PDF 문서에 여러 편집을 적용할 수 있습니다.
- 입력 파일 경로로 Redactor 클래스의 인스턴스 생성
- ExactPhraseRedaction, RegexRedaction 및 EraseMetadataRedaction을 만듭니다.
- 수정 목록에 생성된 수정 추가
- Redactor.Apply() 메서드 호출
- Redactor.Save() 메서드를 호출합니다., show errors if failed
다음 코드 샘플은 C#을 사용하여 PDF 문서에 여러 교정을 적용하는 방법을 보여줍니다.
// 편집자 생성
Redactor redactor = new Redactor("C:\\Files\\sample.pdf");
// 다중 수정 정의
var redactionList = new Redaction[]
{
new ExactPhraseRedaction("John Doe", new ReplacementOptions("[Client]")),
new RegexRedaction("Redaction", new ReplacementOptions("[Product]")),
new RegexRedaction("\\d{2}\\s*\\d{2}[^\\d]*\\d{6}", new ReplacementOptions(System.Drawing.Color.Blue)),
new EraseMetadataRedaction(MetadataFilters.All)
};
// 수정 적용
RedactorChangeLog result = redactor.Apply(redactionList);
// 적용된 경우 저장 그렇지 않으면 오류 표시
if (result.Status == RedactionStatus.Applied)
{
redactor.Save();
}
else if (result.Status == RedactionStatus.Failed)
{
for (int i = 0; i < result.RedactionLog.Count; i++)
{
RedactorLogEntry logEntry = result.RedactionLog[i];
if (logEntry.Result.Status != RedactionStatus.Applied)
{
Console.WriteLine("{0} status is {1}, details: {2}",
logEntry.Redaction.GetType().Name,
logEntry.Result.Status,
logEntry.Result.ErrorMessage);
}
}
};

C#을 사용하여 PDF에 여러 수정 적용
RegexRedaction 클래스를 사용하면 텍스트 수정을 수행할 수 있습니다. 정규식을 사용하여 텍스트를 일치시켜 문서의 모든 텍스트를 검색하고 바꿀 수 있습니다.
무료 라이선스 받기
임시 무료 라이선스를 요청하면 평가 제한 없이 API를 사용해 볼 수 있습니다.
결론
이 기사에서는 C#을 사용하여 PDF 문서를 수정하는 방법을 배웠습니다. PDF 문서에서 텍스트, 메타데이터 및 이미지를 수정하는 방법도 배웠습니다. 또한 C#을 사용하여 PDF에 여러 편집을 적용하는 방법을 배웠습니다. 문서를 사용하여 .NET API용 GroupDocs.Redaction에 대해 자세히 알아볼 수 있습니다. 모호한 부분이 있는 경우 포럼을 통해 언제든지 문의해 주십시오.