PDF 파일에 목차 추가
소개
긴 PDF를 끝없이 스크롤하면서 잘 정리된 목차가 있었으면 좋겠다고 생각한 적이 있나요? 글쎄요, 오늘은 당신의 행운의 날입니다! 이 튜토리얼에서는 Aspose.PDF for .NET을 사용하여 PDF 파일에 목차를 추가하는 방법을 알아봅니다. 복잡한 보고서, 전자책 또는 사업 제안서를 작업하든 목차는 문서를 전문적이고 탐색하기 쉬운 걸작으로 바꿀 수 있습니다.
필수 조건
코드로 넘어가기 전에 먼저 필요한 모든 것이 있는지 확인해 보겠습니다.
.NET용 Aspose.PDF: Aspose.PDF 라이브러리를 다운로드하여 설치했는지 확인하세요. 다음에서 다운로드할 수 있습니다.여기.
개발 환경: Visual Studio와 같은 .NET 개발 환경이 컴퓨터에 설치되어 있는지 확인하세요.
라이센스: 라이센스가 없는 경우 무료 체험판을 받거나 임시 라이센스를 요청할 수 있습니다.여기.
패키지 가져오기
시작하려면 코드 파일의 시작 부분에서 필요한 네임스페이스를 가져오세요. 방법은 다음과 같습니다.
using System.IO;
using System;
using Aspose.Pdf;
using Aspose.Pdf.Text;
이러한 네임스페이스를 사용하면 PDF 관련 기능에 액세스하고 문서 내의 텍스트 요소를 조작할 수 있습니다.
이 작업을 한 입 크기의 단계로 나누어 보겠습니다. 각 단계는 PDF 문서에 TOC를 만들고 삽입하는 과정을 안내합니다.
1단계: PDF 문서 로드
가장 먼저 해야 할 일은 TOC를 추가하려는 기존 PDF 파일을 로드하는 것입니다.
string dataDir = "YOUR DOCUMENT DIRECTORY";
Document doc = new Document(dataDir + "AddTOC.pdf");
이 단계에서는 문서 디렉토리 경로를 지정하고 다음을 사용하여 PDF를 로드합니다.Document
객체입니다. 반드시 교체하세요."YOUR DOCUMENT DIRECTORY"
파일의 실제 경로를 포함합니다.
2단계: TOC에 대한 새 페이지 삽입
다음으로, PDF 문서의 시작 부분에 새 페이지를 삽입합니다. 이 페이지는 목차를 호스팅합니다.
Page tocPage = doc.Pages.Insert(1);
TOC 페이지를 시작 부분에 삽입함으로써 독자가 PDF에서 가장 먼저 보는 부분으로 표시되도록 합니다.
3단계: TOC 정보 개체 만들기
이제 TOC 정보를 나타낼 객체를 만들어 보겠습니다. 또한 TOC에 제목을 추가하여 눈에 띄게 만들겠습니다.
TocInfo tocInfo = new TocInfo();
TextFragment title = new TextFragment("Table Of Contents");
title.TextState.FontSize = 20;
title.TextState.FontStyle = FontStyles.Bold;
tocInfo.Title = title;
tocPage.TocInfo = tocInfo;
여기에서는 TOC의 제목을 “목차"로 설정하고 글꼴 크기를 늘리고, 강조를 위해 굵게 표시했습니다.
4단계: TOC 요소 정의
이 단계에서는 TOC에 표시될 요소(또는 제목)를 정의합니다. 이러한 요소는 독자가 문서의 특정 섹션으로 이동하는 데 도움이 됩니다.
string[] titles = new string[4];
titles[0] = "First page";
titles[1] = "Second page";
titles[2] = "Third page";
titles[3] = "Fourth page";
우리는 PDF의 다양한 페이지에 해당하는 TOC 항목으로 사용될 문자열 배열을 생성했습니다.
5단계: TOC 제목 만들기
이제 가장 중요한 단계, 즉 TOC에 제목을 추가하고 이를 해당 페이지에 연결하는 단계입니다.
for (int i = 0; i < 2; i++)
{
Aspose.Pdf.Heading heading2 = new Aspose.Pdf.Heading(1);
TextSegment segment2 = new TextSegment();
heading2.TocPage = tocPage;
heading2.Segments.Add(segment2);
heading2.DestinationPage = doc.Pages[i + 2];
heading2.Top = doc.Pages[i + 2].Rect.Height;
segment2.Text = titles[i];
tocPage.Paragraphs.Add(heading2);
}
무슨 일이 일어나고 있는지 알려드리겠습니다.
- 제목: 우리는 만듭니다
Heading
객체를 추가하고TextSegment
그것에. - 도착 페이지: 각 제목이 링크될 페이지를 설정합니다.
- 상단 위치: 제목이 가리키는 페이지의 위치를 지정합니다.
- 텍스트: 각 제목은 앞서 만든 배열에서 해당 제목을 가져옵니다.
이 루프는 TOC의 처음 두 요소에 대한 제목을 만들고 이를 해당 페이지에 연결합니다.
6단계: TOC를 포함한 PDF 저장
마지막으로 TOC 요소를 모두 추가한 후에는 업데이트된 PDF를 저장할 때입니다.
dataDir = dataDir + "TOC_out.pdf";
doc.Save(dataDir);
이제 파일이 PDF에 TOC가 추가되어 저장됩니다. 축하합니다. 목차를 성공적으로 추가했습니다!
7단계: 확인 메시지
사용자에게 프로세스가 완료되었음을 알리기 위해 콘솔에 간단한 메시지를 표시합니다.
Console.WriteLine("\nTOC added successfully to an existing PDF.\nFile saved at " + dataDir);
결론
이제 다 알게 되셨죠! Aspose.PDF for .NET을 사용하면 PDF에 목차를 추가하는 것이 쉬울 뿐만 아니라 사용자 정의도 가능합니다. 간단한 탐색 링크나 복잡한 구조를 만들어야 하든 이 도구가 해결해 드립니다. 그러니 다음에 긴 PDF를 작업할 때는 전문적인 터치를 위해 목차를 추가하는 것을 잊지 마세요!
자주 묻는 질문
Aspose.PDF에서 TOC의 모양을 사용자 정의할 수 있나요?
네, TOC의 모양을 글꼴 스타일, 크기, 정렬 등 원하는 대로 사용자 지정할 수 있습니다.
TOC에 부제목을 추가하려면 어떻게 해야 하나요?
하위 제목을 추가하려면 다음을 조정하세요.Heading
수준(예:Heading(2)
)을 사용하여 계층적 TOC를 만듭니다.
문서가 변경되면 TOC를 자동으로 업데이트할 수 있나요?
아니요, TOC는 자동으로 업데이트되지 않습니다. 문서 구조가 변경되면 다시 만들어야 합니다.
TOC 항목을 외부 문서에 연결할 수 있나요?
네, 하이퍼링크를 사용하여 TOC 항목을 외부 PDF나 URL에 연결할 수 있습니다.
Aspose.PDF는 다단계 목차를 지원합니까?
네, Aspose.PDF는 하위 섹션이 있는 복잡한 문서에 대해 다단계 TOC를 지원합니다.