동적으로 생성된 여러 PDF 파일 병합: iTextSharp 접근 방식
컨텍스트:
이 질문은 병합과 관련이 있습니다. 실시간으로 동적으로 생성되는 여러 PDF 파일. 목표는 인쇄 목적으로 이러한 파일을 병합하는 것입니다.
해결책:
iTextSharp를 사용하여 여러 PDF 파일을 병합하려면 두 가지 기본 접근 방식이 있습니다.
1. PdfCopy 클래스
내용과 대화형 주석을 유지하면서 페이지를 원래 형식으로 병합하는 것이 목표라면 PdfCopy 클래스를 사용해야 합니다. PdfCopy를 사용한 샘플은 아래와 같습니다.
// Assuming pdf is a List<byte[]> containing in-memory PDF documents using (MemoryStream ms = new MemoryStream()) { using (Document document = new Document()) { using (PdfCopy copy = new PdfCopy(document, ms)) { document.Open(); for (int i = 0; i < pdf.Count; ++i) { PdfReader reader = new PdfReader(pdf[i]); int n = reader.NumberOfPages; for (int page = 0; page < n; ) { copy.AddPage(copy.GetImportedPage(reader, ++page)); } } } } mergedPdf = ms.ToArray(); }
2. PdfWriter 클래스
또는 소스 문서의 페이지를 새 문서에 통합하고 일반 형식을 사용자 정의하고 대화형 주석을 무시하는 것이 목표라면 PdfWriter 클래스를 활용해야 합니다. 이 클래스는 다른 PDF 문서에서 페이지를 가져오지만 해당 문서의 대화형 기능을 삭제합니다.
추가 고려 사항:
해결책은 다음과 같습니다. 프로젝트의 특정 요구 사항에 따라 선택됩니다.
위 내용은 iTextSharp를 사용하여 동적으로 생성된 여러 PDF를 어떻게 병합할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!