PDF 문서를 웹 응용 프로그램에 포함하는 동안 축소판을 생성해야 하는 경우가 종종 있습니다. 또한 PDF 뷰어를 생성할 때 페이지의 썸네일이 필요합니다. 이러한 시나리오의 경우 이 문서에서는 C# .NET에서 프로그래밍 방식으로 PDF 파일의 축소판을 생성하는 방법을 다룹니다. PDF 파일의 특정 페이지 또는 모든 페이지의 축소판을 만드는 방법을 명시적으로 다룹니다.
PDF의 축소판을 생성하는 C# .NET API
.NET용 Aspose.PDF는 .NET 응용 프로그램 내에서 PDF 문서를 만들고 조작할 수 있는 C# 클래스 라이브러리입니다. API를 사용하면 기본 및 고급 PDF 자동화 작업을 매우 쉽게 수행할 수 있습니다. 이 API를 사용하여 PDF 파일의 축소판을 생성합니다. API는 DLL으로 다운로드하거나 NuGet을 통해 설치할 수 있습니다.
PM> Install-Package Aspose.Pdf
C# .NET에서 PDF 파일의 축소판 생성
일반적으로 PDF 문서에 대해 단일 축소판 이미지를 생성해야 합니다. 썸네일의 페이지는 표지 또는 선택한 다른 페이지가 될 수 있습니다. 다음은 C#에서 원하는 PDF 페이지의 축소판을 생성하는 단계입니다.
- Document 클래스를 사용하여 PDF 파일을 로드합니다.
- Document.Pages 컬렉션에서 원하는 페이지의 참조를 가져옵니다.
- 이미지 파일에 대해 새 FileStream을 만듭니다.
- Resolution 클래스의 인스턴스를 만들어 축소판 이미지의 해상도를 설정합니다.
- JpegDevice를 인스턴스화하고 이미지의 높이, 너비, 해상도 및 품질을 설정합니다.
- JpegDevice.Process(Page, FileStream) 메소드를 사용하여 썸네일을 생성합니다.
- 파일 스트림을 닫습니다.
다음 코드 샘플은 C#에서 PDF 파일의 축소판을 생성하는 방법을 보여줍니다.
// 문서 열기
Document pdfDocument = new Document("file.pdf");
int pageIndex = 0;
// 컬렉션에서 원하는 인덱스 페이지 가져오기
var page = pdfDocument.Pages[pageIndex];
// 이미지 파일용 스트림 생성
using (FileStream imageStream = new FileStream("Thumbanils_" + page.Number + ".jpg", FileMode.Create))
{
// 해상도 개체 만들기
Resolution resolution = new Resolution(300);
// JpegDevice의 인스턴스를 생성하고 이미지의 높이, 너비, 해상도 및 품질을 설정합니다.
JpegDevice jpegDevice = new JpegDevice(45, 59, resolution, 100);
// 특정 페이지를 변환하고 이미지를 스트림에 저장
jpegDevice.Process(page, imageStream);
// 스트림 닫기
imageStream.Close();
}
C#에서 PDF의 모든 페이지 축소판 생성
다음은 C#에서 PDF의 모든 페이지에 대한 축소판을 생성하는 단계입니다.
- Document 클래스를 사용하여 PDF 파일을 로드합니다.
- Document.Pages 컬렉션을 사용하여 PDF의 모든 페이지를 반복합니다.
- 각 반복에서 다음 작업을 수행합니다.
- 이미지 파일에 대해 새 FileStream을 만듭니다.
- Resolution 클래스의 인스턴스를 만들어 썸네일 이미지의 해상도를 설정합니다.
- JpegDevice를 인스턴스화하고 이미지의 높이, 너비, 해상도 및 품질을 설정합니다.
- JpegDevice.Process(Page, FileStream) 메소드를 사용하여 썸네일을 생성합니다.
- 파일 스트림을 닫습니다.
다음 코드 샘플은 PDF의 모든 페이지에 대한 축소판을 생성하는 방법을 보여줍니다.
// 문서 열기
Document pdfDocument = new Document("file.pdf");
// 페이지 반복
for (int pageCount = 1; pageCount <= pdfDocument.Pages.Count; pageCount++)
{
// 각 이미지에 대한 스트림 생성
using (FileStream imageStream = new FileStream("Thumbanils_" + pageCount + ".jpg", FileMode.Create))
{
// 해상도 개체 만들기
Resolution resolution = new Resolution(300);
// JpegDevice의 인스턴스를 생성하고 이미지의 높이, 너비, 해상도 및 품질을 설정합니다.
JpegDevice jpegDevice = new JpegDevice(45, 59, resolution, 100);
// 특정 페이지를 변환하고 이미지를 스트림에 저장
jpegDevice.Process(pdfDocument.Pages[pageCount], imageStream);
// 스트림 닫기
imageStream.Close();
}
}
무료 라이선스 받기
평가 제한 없이 Aspose.PDF for .NET을 사용하려면 무료 임시 라이센스를 얻으십시오.
결론
이 기사에서는 C#에서 PDF 파일의 축소판을 생성하는 방법을 배웠습니다. PDF 파일의 특정 페이지 또는 모든 페이지의 축소판을 생성하는 방법을 살펴보았습니다. 또한 문서를 사용하여 C# PDF API에 대해 자세히 알아볼 수 있습니다. 질문이나 질문이 있는 경우 포럼을 통해 문의할 수 있습니다.