C#/VB.NET: 기존 PDF 문서에 페이지 번호 추가

2023-08-18 05:45:25

NuGet을 통해 설치됨

PM> Install-Package Spire.PDF

관련된 링크들

페이지 번호는 전자 및 종이 문서 모두에 필수적입니다. 이를 통해 독자는 페이지별로 찾아볼 필요 없이 문서의 특정 부분을 더 쉽게 찾고 액세스할 수 있습니다. 이 기사에서는 다음을 수행하는 방법을 배웁니다 C# 및 VB.NET에서 기존 PDF 문서에 페이지 번호 추가 Spire.PDF for .NET사용.

Spire.PDF for .NET 설치

먼저 Spire.PDF for .NET 패키지에 포함된 DLL 파일을 .NET 프로젝트의 참조로 추가해야 합니다. DLL 파일은 이 링크 에서 다운로드하거나 NuGet을 통해 설치할 수 있습니다.

PM> Install-Package Spire.PDF

C# 및 VB.NET을 사용하여 기존 PDF 문서에 페이지 번호 추가

PdfPageNumberField, PdfPageCountFieldPdfCompositeField와 같은 동적 필드를 사용하여 PDF 문서에 페이지 번호를 추가할 수 있습니다.

이름에서 알 수 있듯이 PdfPageNumberField는 페이지 번호를 표시하는 데 사용되고 PdfPageCountField는 총 페이지 수를 표시하는 데 사용되며 PdfCompositeField는 PdfPageNumberField 및 PdfPageCountField와 같은 둘 이상의 동적 필드를 단일 필드로 결합하는 데 사용됩니다.

페이지 1, 페이지 2, 페이지 3…과 같은 페이지 번호만 PDF 문서에 추가하려면 PdfPageNumberField를 사용하면 됩니다. 페이지 X/Y와 같은 페이지 번호를 문서에 추가하려면 PdfPageNumberField, PdfPageCountField 및 PdfCompositeField를 사용해야 합니다.

다음 단계는 기존 PDF 문서에 "페이지 X/Y" 페이지 번호를 추가하는 방법을 보여줍니다.

  • PdfDocument 클래스의 인스턴스를 초기화합니다.
  • PdfDocument.LoadFromFile() 메서드를 사용하여 PDF 문서를 로드합니다.
  • PdfPageNumberField 클래스의 인스턴스를 초기화합니다.
  • PdfPageCountField 클래스의 인스턴스를 초기화합니다.
  • PdfCompositeField 클래스의 인스턴스를 초기화합니다.
  • PdfCompositeField.StringFormat 속성을 통해 복합 필드의 텍스트 정렬을 설정합니다.
  • PDF 문서의 각 페이지를 반복한 다음 PdfCompositeField.Draw() 메서드를 사용하여 페이지의 특정 위치에 복합 필드를 그립니다.
  • PdfDocument.SaveToFile() 메서드를 사용하여 결과 문서를 저장합니다.
  • C#
  • VB.NET
using Spire.Pdf;
    using Spire.Pdf.AutomaticFields;
    using Spire.Pdf.Graphics;
    using System.Drawing;
    
    
    namespace AddPageNumbers
    {
        class Program
        {
            static void Main(string[] args)
            {
                //Load a PDF document
                PdfDocument pdf = new PdfDocument();
                pdf.LoadFromFile("Sample.pdf");
    
                //Create a true type font
                PdfTrueTypeFont font = new PdfTrueTypeFont(new Font("Arial", 10f, FontStyle.Regular), true);
    
                //Create a PdfPageNumberField instance
                PdfPageNumberField pageNumber = new PdfPageNumberField();
    
                //Create a PdfPageCountField instance
                PdfPageCountField pageCount = new PdfPageCountField();
    
                //Create a PdfCompositeField instance
                PdfCompositeField compositeField = new PdfCompositeField(font, PdfBrushes.Black, "Page {0} of {1}", pageNumber, pageCount);
                //Set the text alignment for the composite field
                compositeField.StringFormat = new PdfStringFormat(PdfTextAlignment.Left, PdfVerticalAlignment.Top);
    
                //Loop through the pages
                for(int i = 0; i < pdf.Pages.Count; i ++)
                {
                    //Draw composite filed on each page
                    compositeField.Draw(pdf.Pages[i].Canvas, pdf.Pages[i].Size.Width / 2 - 20, pdf.Pages[i].Size.Height - pdf.PageSettings.Margins.Bottom);
                }
    
                //Save the result document
                pdf.SaveToFile("AddPageNumbers.pdf");
            }
        }
    }

C#/VB.NET: Add Page Numbers to Existing PDF Documents

임시 면허 신청

생성된 문서에서 평가 메시지를 제거하거나 기능 제한을 제거하려면 다음을 수행하십시오 30일 평가판 라이선스 요청 자신을 위해.

또한보십시오