C#을 사용하여 PDF 문서 만들기

PDF 문서의 자동 생성 및 처리는 최근 까다로운 기능이 되었습니다. 다양한 애플리케이션에서 송장, 영수증 및 다양한 유형의 보고서와 같은 PDF 문서가 동적으로 생성됩니다. 이에 따라 이 기사에서는 .NET 애플리케이션 내에서 PDF 자동화의 기본 구현을 다룹니다. 궁극적으로 C#을 사용하여 PDF 파일을 만드는 방법을 배우게 됩니다. 코드 샘플은 C#을 사용하여 PDF에 텍스트, 이미지, 표 및 기타 구성 요소를 삽입하는 방법을 보여줍니다.

C# .NET PDF API - 무료 다운로드

Aspose.PDF for .NET는 .NET 응용 프로그램 내에서 PDF 파일을 생성하고 처리할 수 있는 PDF 파일 조작 API입니다. API를 사용하여 다양한 종류의 보고서 및 비즈니스 문서를 동적으로 생성할 수 있습니다. API는 다운로드 가능한 DLLNuGet에서 호스팅됩니다.

Install-Package Aspose.Pdf

C#에서 PDF 파일 만들기

텍스트 조각이 포함된 간단한 PDF 문서를 만드는 것으로 시작해 보겠습니다. 다음은 C#을 사용하여 PDF 파일을 만드는 단계입니다.

  • Document 클래스의 객체를 생성합니다.
  • Document.Pages.Add() 메서드를 사용하여 문서에 페이지를 추가합니다.
  • TextFragment 개체를 만들고 해당 텍스트를 설정합니다.
  • 페이지의 Paragraphs 컬렉션에 TextFragment를 추가합니다.
  • Document.Save(String) 메서드를 사용하여 PDF 파일을 저장합니다.

다음 코드 샘플은 C#을 사용하여 간단한 PDF 파일을 만드는 방법을 보여줍니다.

// 문서 객체 초기화
Document document = new Document();

// 페이지 추가
Page page = document.Pages.Add();

// 새 페이지에 텍스트 추가
page.Paragraphs.Add(new Aspose.Pdf.Text.TextFragment("Hello World!"));

// PDF 저장 
document.Save("document.pdf");

복잡한 PDF 문서 만들기에 대해 자세히 알아보십시오.

C#에서 PDF 파일 편집

PDF 파일을 수정하는 것은 새 파일을 만드는 것만큼 간단합니다. Document 클래스를 사용하여 파일을 로드하고 원하는 작업을 수행하고 저장하기만 하면 됩니다. 다음은 PDF를 수정하는 단계입니다.

  • Document 클래스의 개체를 만들고 생성자에 대한 PDF 파일의 경로를 제공합니다.
  • 문서의 페이지나 내용을 조작합니다.
  • Document.Save() 메서드를 사용하여 문서를 저장합니다.

다음 코드 샘플은 C#을 사용하여 PDF를 수정하는 방법을 보여줍니다.

// PDF 로드
var pdfDocument = new Aspose.Pdf.Document("document.pdf");

// 새로운 빈 페이지 추가와 같은 조작을 하십시오.
pdfDocument.Pages.Add();

// 업데이트된 PDF 저장
pdfDocument.Save(modifiedFileName);

C#을 사용하여 PDF에 이미지 삽입

이제 PDF 문서에 이미지를 삽입하는 방법을 알아보겠습니다. 다음은 그렇게 하는 단계입니다.

  • Document 클래스의 객체를 생성하여 PDF 문서를 엽니다.
  • Page 클래스를 이용하여 이미지를 추가하고 싶은 페이지에 접근합니다.
  • 페이지의 Resources 컬렉션에 이미지를 추가합니다.
  • 연산자를 사용하여 페이지에 이미지를 배치합니다.
    • G저장 operator to save the current graphical state.
    • 행렬 연결 operator to specify where the image is to be placed.
    • 하다 operator to draw the image on the page.
    • 마지막으로 GRestore 연산자를 사용하여 업데이트된 그래픽 상태를 저장합니다.
  • PDF 파일을 저장합니다.

다음 코드 샘플은 C#을 사용하여 PDF 문서에 이미지를 추가하는 방법을 보여줍니다.

// 문서 열기
Document pdfDocument = new Document("document.pdf");

// 좌표 설정
int lowerLeftX = 100;
int lowerLeftY = 100;
int upperRightX = 200;
int upperRightY = 200;

// 이미지를 추가해야 하는 페이지 가져오기
Page page = pdfDocument.Pages[1];

// 스트림에 이미지 로드
FileStream imageStream = new FileStream("aspose-logo.jpg", FileMode.Open);

// 페이지 리소스의 이미지 컬렉션에 이미지 추가
page.Resources.Images.Add(imageStream);

// GSave 연산자 사용: 이 연산자는 현재 그래픽 상태를 저장합니다.
page.Contents.Add(new Aspose.Pdf.Operators.GSave());

// Rectangle 및 Matrix 객체 만들기
Aspose.Pdf.Rectangle rectangle = new Aspose.Pdf.Rectangle(lowerLeftX, lowerLeftY, upperRightX, upperRightY);
Matrix matrix = new Matrix(new double[] { rectangle.URX - rectangle.LLX, 0, 0, rectangle.URY - rectangle.LLY, rectangle.LLX, rectangle.LLY });

// ConcatenateMatrix(행렬 연결) 연산자 사용: 이미지를 배치하는 방법을 정의합니다.
page.Contents.Add(new Aspose.Pdf.Operators.ConcatenateMatrix(matrix));
XImage ximage = page.Resources.Images[page.Resources.Images.Count];

// Do 연산자 사용: 이 연산자는 이미지를 그립니다.
page.Contents.Add(new Aspose.Pdf.Operators.Do(ximage.Name));

// GRestore 연산자 사용: 이 연산자는 그래픽 상태를 복원합니다.
page.Contents.Add(new Aspose.Pdf.Operators.GRestore()); 

// 업데이트된 문서 저장
pdfDocument.Save("document.pdf");

PDF에 이미지 삽입에 대해 자세히 알아보십시오.

C#을 사용하여 PDF로 테이블 만들기

테이블은 행과 열의 형태로 데이터를 구성하는 데 사용되는 문서의 필수 구성 요소입니다. .NET용 Aspose.PDF는 PDF 문서에 표를 만들고 삽입하는 아주 간단한 방법을 제공합니다. 다음은 이 작업을 수행하는 단계입니다.

  • Document 클래스를 사용하여 PDF 파일을 로드합니다.
  • Table 클래스를 사용하여 테이블을 초기화하고 열과 행을 설정합니다.
  • 테이블 설정(예: 테두리)을 설정합니다.
  • Table.Rows.Add() 메서드를 사용하여 행을 생성하여 테이블을 채웁니다.
  • Document.Pages1.Paragraphs.Add(Table) 메서드를 사용하여 페이지에 테이블을 추가합니다.
  • PDF 파일을 저장합니다.

다음 코드 샘플은 C#에서 PDF 문서에 테이블을 만들고 추가하는 방법을 보여줍니다.

// 원본 PDF 문서 로드
Aspose.Pdf.Document doc = new Aspose.Pdf.Document("document.pdf");

// 테이블의 새 인스턴스를 초기화합니다.
Aspose.Pdf.Table table = new Aspose.Pdf.Table();

// 테이블 테두리 색상을 LightGray로 설정
table.Border = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, .5f, Aspose.Pdf.Color.FromRgb(System.Drawing.Color.LightGray));

// 표 셀의 테두리 설정
table.DefaultCellBorder = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, .5f, Aspose.Pdf.Color.FromRgb(System.Drawing.Color.LightGray));

// 10개의 행을 추가하는 루프 만들기
for (int row_count = 1; row_count < 10; row_count++)
{
    // 테이블에 행 추가
    Aspose.Pdf.Row row = table.Rows.Add();
    // 표 셀 추가
    row.Cells.Add("Column (" + row_count + ", 1)");
    row.Cells.Add("Column (" + row_count + ", 2)");
    row.Cells.Add("Column (" + row_count + ", 3)");
}

// 입력 문서의 첫 페이지에 테이블 개체 추가
doc.Pages[1].Paragraphs.Add(table);

// 테이블 개체가 포함된 업데이트된 문서 저장
doc.Save("document_with_table_out.pdf");

PDF로 표 만들기에 대해 자세히 알아보세요.

C#에서 PDF로 양식 만들기

PDF 형식은 독자로부터 데이터를 수집하는 데 사용됩니다. PDF 양식에 텍스트 상자, 확인란, 라디오 버튼 및 기타 지원되는 컨트롤을 삽입할 수 있습니다. PDF 형식은 두 가지 유형의 양식을 지원합니다. Acro 양식 및 XFA 양식(세부 정보 참조). 다음은 PDF에서 양식을 만들고 추가하는 단계입니다.

다음 코드 샘플은 C#을 사용하여 PDF 문서에 양식을 추가하는 방법을 보여줍니다.

// 문서 열기
Document pdfDocument = new Document("document.pdf");

// 필드 만들기
TextBoxField textBoxField = new TextBoxField(pdfDocument.Pages[1], new Aspose.Pdf.Rectangle(100, 200, 300, 300));
textBoxField.PartialName = "textbox1";
textBoxField.Value = "Text Box";

// TextBoxField.Border = 새로운 테두리(
Border border = new Border(textBoxField);
border.Width = 5;
border.Dash = new Dash(1, 1);
textBoxField.Border = border;

textBoxField.Color = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.Green);

// 문서에 필드 추가
pdfDocument.Form.Add(textBoxField, 1);

// 수정된 PDF 저장
pdfDocument.Save("output.pdf");

PDF로 양식 만들기에 대해 자세히 알아보십시오.

결론

이 게시물에서는 C#을 사용하여 처음부터 PDF 파일을 만드는 방법을 배웠습니다. 또한 텍스트, 이미지, 표 및 양식과 같은 다양한 유형의 구성 요소를 프로그래밍 방식으로 PDF 문서에 삽입하는 방법을 알게 되었습니다. 문서를 사용하여 PDF API에 대해 자세히 알아볼 수 있습니다.

또한보십시오

정보: Aspose는 PDF 온라인 보기, PDF를 비디오로 변환, PDF 온라인 편집이 가능한 무료 온라인 웹 앱을 제공합니다. ].