푸터 콘텐츠로 바로가기
IRONPDF 사용하기
IronPDF를 사용하여 프로그래밍 방식으로 PDF를 채우는 방법

C#에서 프로그래밍적으로 PDF 양식을 작성하기 (코딩 튜토리얼)

이 튜토리얼은 PDF 파일의 양식을 프로그래밍 방식으로 상호작용하는 방법을 보여줄 것입니다.

PDF 양식을 C#에서 프로그래밍 방식으로 작성할 수 있는 여러 .NET 라이브러리가 시장에 존재합니다. 그들 중 일부는 이해하기 어려우며, 일부는 비용을 지불해야 합니다.

IronPDF는 이해하기 쉽고 개발용으로 무료이기 때문에 최고의 .NET Core 라이브러리입니다. PDF 양식 작성을 제외하고도 IronPDF는 HTML 문자열, HTML 파일 및 URL에서 새로운 PDF를 만드는 것도 가능합니다.

C#을 사용하여 프로그래밍 방식으로 PDF 양식을 작성하는 방법을 살펴보겠습니다. 첫째로, 콘솔 애플리케이션을 시연을 위해 생성할 것이지만, 필요에 따라 어떤 것도 사용할 수 있습니다.

Visual Studio 프로젝트 생성

Microsoft Visual Studio를 엽니다. Create New Project 클릭 > 템플릿에서 Console Application 선택 > Next 버튼 눌러 > 프로젝트 이름 지정. Next 버튼 누르기 > 대상 프레임워크 선택. Create 버튼을 클릭하세요. 프로젝트는 아래와 같이 생성됩니다.

C#에서 프로그래밍 방식으로 PDF 양식 채우기(코딩 튜토리얼), 그림 1: Visual Studio에서 새로 생성된 콘솔 애플리케이션 Visual Studio에서 새로 생성된 콘솔 애플리케이션

IronPDF 라이브러리 설치하기

앞서 논의한 바와 같이, 이 튜토리얼에서는 IronPDF 라이브러리를 사용할 것입니다. 이 .NET 라이브러리를 사용하는 주요 이유는 개발용으로 무료이며 모든 기능을 단 하나의 라이브러리로 제공하기 때문입니다.

패키지 관리자 콘솔로 이동하세요. 다음 명령을 입력합니다:

Install-Package IronPdf

이 명령어는 IronPDF 라이브러리를 설치해줍니다. 다음으로, 코딩을 시작합시다.

PDF 문서 읽기

PDF 양식을 작성하는 첫 번째 단계는 PDF 문서를 읽는 것입니다. 물론, 먼저 읽지 않고 어떻게 양식을 작성할 수 있겠습니까? 데모에 사용할 PDF 문서는 다음과 같습니다. Google Drive 링크에서 다운로드할 수 있으며, 또는 자신의 문서를 사용할 수 있습니다.

C#에서 프로그래밍 방식으로 PDF 양식 채우기(코딩 튜토리얼), 그림 2: 양식을 작성할 샘플 PDF 파일 양식을 작성하기 위한 샘플 PDF 파일

이 파일을 읽기 위한 코드:

using IronPdf;

// Load the PDF document from the file path
PdfDocument doc = PdfDocument.FromFile(@"D:\myPdfForm.pdf");
using IronPdf;

// Load the PDF document from the file path
PdfDocument doc = PdfDocument.FromFile(@"D:\myPdfForm.pdf");
Imports IronPdf

' Load the PDF document from the file path
Private doc As PdfDocument = PdfDocument.FromFile("D:\myPdfForm.pdf")
$vbLabelText   $csharpLabel

PDF 문서의 전체 경로를 FromFile 메서드에 전달하세요. 이 작업은 로컬 시스템에서 PDF 파일을 읽습니다.

PDF 양식 가져오기

로딩된 PDF 문서에서 양식을 얻기 위해 다음 코드 줄을 작성합니다.

var form = doc.Form;
var form = doc.Form;
Dim form = doc.Form
$vbLabelText   $csharpLabel

양식 필드 가져오기

양식 필드의 값을 설정하기 위해 IronPDF는 필드 이름 또는 인덱스를 통해 양식 필드에 접근하는 두 가지 방법으로 매우 쉽게 접근할 수 있도록 합니다. 하나씩 차례대로 논의해 봅시다.

이름으로 양식 필드 가져오기

다음 코드는 이름으로 필드를 가져옵니다:

// Retrieve the form field using its name
var field = form.FindFormField("First Name");
// Retrieve the form field using its name
var field = form.FindFormField("First Name");
' Retrieve the form field using its name
Dim field = form.FindFormField("First Name")
$vbLabelText   $csharpLabel

FindFormField 메서드는 매개변수로 필드 이름을 받습니다. 이는 오류 허용성이 있으며 대소문자 실수와 부분적인 필드 이름과 일치하려고 시도합니다.

인덱스로 양식 필드 가져오기

우리는 또한 인덱스를 사용하여 PDF 양식 필드를 얻을 수 있습니다. 인덱스는 0부터 시작합니다. 다음 샘플 코드는 인덱스로 양식 필드를 얻기 위해 사용됩니다.

// Retrieve the form field using its index
var field = form.Fields[0];
// Retrieve the form field using its index
var field = form.Fields[0];
' Retrieve the form field using its index
Dim field = form.Fields(0)
$vbLabelText   $csharpLabel

PDF 양식 채우기

다음으로, PDF 양식을 채우기 위해 모든 코드를 결합해 봅시다.

using IronPdf;

class Program
{
    static void Main()
    {
        // Load the PDF document from the file path
        PdfDocument doc = PdfDocument.FromFile(@"D:\myPdfForm.pdf");

        // Access the PDF form
        var form = doc.Form;

        // Fill out the form fields using their index
        form.Fields[0].Value = "John";
        form.Fields[1].Value = "Smith";
        form.Fields[2].Value = "+19159969739";
        form.Fields[3].Value = "John@email.com";
        form.Fields[4].Value = "Chicago";

        // Save the modified PDF document
        doc.SaveAs(@"D:\myPdfForm.pdf");
    }
}
using IronPdf;

class Program
{
    static void Main()
    {
        // Load the PDF document from the file path
        PdfDocument doc = PdfDocument.FromFile(@"D:\myPdfForm.pdf");

        // Access the PDF form
        var form = doc.Form;

        // Fill out the form fields using their index
        form.Fields[0].Value = "John";
        form.Fields[1].Value = "Smith";
        form.Fields[2].Value = "+19159969739";
        form.Fields[3].Value = "John@email.com";
        form.Fields[4].Value = "Chicago";

        // Save the modified PDF document
        doc.SaveAs(@"D:\myPdfForm.pdf");
    }
}
Imports IronPdf

Friend Class Program
	Shared Sub Main()
		' Load the PDF document from the file path
		Dim doc As PdfDocument = PdfDocument.FromFile("D:\myPdfForm.pdf")

		' Access the PDF form
		Dim form = doc.Form

		' Fill out the form fields using their index
		form.Fields(0).Value = "John"
		form.Fields(1).Value = "Smith"
		form.Fields(2).Value = "+19159969739"
		form.Fields(3).Value = "John@email.com"
		form.Fields(4).Value = "Chicago"

		' Save the modified PDF document
		doc.SaveAs("D:\myPdfForm.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

위의 샘플 코드는 인덱스 값으로 양식 필드를 채웁니다. 이전에 언급한 필드 이름을 사용하여 동일한 작업을 수행할 수도 있습니다. 프로그램을 실행하여 출력을 확인해 봅시다.

채워진 PDF 양식

C#에서 프로그래밍 방식으로 PDF 양식 채우기(코딩 튜토리얼), 그림 3: 샘플 PDF 파일에서 채워진 양식

라이브러리가 복잡한 로직 없이 가장 단순한 코드로 PDF 양식을 채울 수 있다는 것을 알 수 있습니다. 이것이 IronPDF가 추천되는 이유입니다.

아직 양식이 있는 PDF 문서가 없다고 가정해 봅시다 — 걱정하지 마세요, IronPDF는 PDF 양식을 생성하는 것을 완전히 지원합니다. 아래 단계를 따르십시오:

새 PDF 양식 문서 생성

새 HTML 파일 생성

새 HTML 파일을 생성하고 다음 코드를 붙여넣습니다:

<!DOCTYPE html>
<html>
<body>

<h2>PDF Forms</h2>

<form action="/action_page.php">
  <label for="fname">First name:</label><br>
  <input type="text" id="fname" name="fname"><br>
  <label for="lname">Last name:</label><br>
  <input type="text" id="lname" name="lname"><br>
  <label for="contact">Contact #:</label><br>
  <input type="text" id="contact" name="contact"><br>
  <label for="email">Email:</label><br>
  <input type="text" id="email" name="email"><br>
  <label for="city">City:</label><br>
  <input type="text" id="city" name="city"><br>
</form> 

</body>
</html>
<!DOCTYPE html>
<html>
<body>

<h2>PDF Forms</h2>

<form action="/action_page.php">
  <label for="fname">First name:</label><br>
  <input type="text" id="fname" name="fname"><br>
  <label for="lname">Last name:</label><br>
  <input type="text" id="lname" name="lname"><br>
  <label for="contact">Contact #:</label><br>
  <input type="text" id="contact" name="contact"><br>
  <label for="email">Email:</label><br>
  <input type="text" id="email" name="email"><br>
  <label for="city">City:</label><br>
  <input type="text" id="city" name="city"><br>
</form> 

</body>
</html>
HTML

이 예제 HTML 파일을 저장합니다. 귀하의 양식 요구에 따라 이 HTML을 사용자 정의할 수 있습니다.

다음으로, C# 프로그램에서 다음 코드를 작성합니다.

using IronPdf;

class Program
{
    static void Main()
    {
        // Create an instance of ChromePdfRenderer
        var renderer = new ChromePdfRenderer();

        // Render the HTML file as a PDF
        var pdfDocument = renderer.RenderHtmlFileAsPdf(@"D:\myForm.html");

        // Save the PDF document to the specified file path
        pdfDocument.SaveAs(@"D:\myForm.pdf");
    }
}
using IronPdf;

class Program
{
    static void Main()
    {
        // Create an instance of ChromePdfRenderer
        var renderer = new ChromePdfRenderer();

        // Render the HTML file as a PDF
        var pdfDocument = renderer.RenderHtmlFileAsPdf(@"D:\myForm.html");

        // Save the PDF document to the specified file path
        pdfDocument.SaveAs(@"D:\myForm.pdf");
    }
}
Imports IronPdf

Friend Class Program
	Shared Sub Main()
		' Create an instance of ChromePdfRenderer
		Dim renderer = New ChromePdfRenderer()

		' Render the HTML file as a PDF
		Dim pdfDocument = renderer.RenderHtmlFileAsPdf("D:\myForm.html")

		' Save the PDF document to the specified file path
		pdfDocument.SaveAs("D:\myForm.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

프로그램을 실행하여 결과로 나오는 PDF 양식 문서를 확인합니다.

C#에서 프로그래밍 방식으로 PDF 양식 채우기(코딩 튜토리얼), 그림 3: HTML 파일에서 생성된 PDF 양식 HTML 파일에서 생성된 PDF 양식

요약

PDF 양식을 자동으로 프로그래밍적으로 채우는 것이 중요합니다. 이 기사에서는 C#에서 IronPDF를 사용하여 PDF 양식을 채우기 위한 가장 쉬운 접근법을 제안합니다. 또한, 새 PDF 양식을 처음부터 생성하는 방법도 배웠습니다.

또한, IronPDF는 PDF에서 텍스트와 콘텐츠를 추출하고, PDF에 차트를 렌더링하고, 바코드를 삽입하고, 암호로 보안을 강화하고, 워터마크를 삽입하는 방법 등을 개발자에게 제공합니다.

IronBarcode는 바코드 작업에, IronXL은 엑셀 문서 작업에, IronOCR은 OCR 작업에 사용하는 다른 많은 유용한 라이브러리가 있습니다. 전체 Iron Suite를 구매함으로써 다섯 가지 라이브러리를 단 두 가지 가격으로 받을 수 있습니다. 자세한 내용은 Iron Software 라이선스 페이지를 방문하세요.

자주 묻는 질문

C#을 사용하여 프로그래밍 방식으로 PDF 양식을 채울 수 있습니까?

IronPDF는 C#에서 프로그래밍 방식으로 PDF 양식을 채우도록 허용합니다. PdfDocument.FromFile으로 문서를 로드하고 doc.Form.Fields를 사용하여 필드 값을 설정할 수 있습니다.

C# 프로젝트를 설정하여 PDF 양식을 채우는 데 필요한 단계는 무엇입니까?

먼저 Visual Studio에서 콘솔 애플리케이션을 만듭니다. 그런 다음, 패키지 관리자 콘솔에서 Install-Package IronPdf 명령어로 IronPDF를 설치합니다. PdfDocument.FromFile을 사용하여 PDF를 로드하고 필요한 대로 폼 필드를 조작하세요.

IronPDF를 사용하여 HTML에서 C#으로 새로운 PDF 양식을 생성할 수 있습니까?

네, IronPDF는 ChromePdfRenderer 클래스를 사용하여 HTML 양식을 PDF 문서로 렌더링함으로써 새로운 PDF 양식을 생성할 수 있습니다. 이는 웹 폼 입력을 기반으로 동적 PDF 생성을 허용합니다.

.NET 애플리케이션에서 PDF 양식 처리를 위해 IronPDF를 사용하는 주요 이점은 무엇입니까?

IronPDF는 .NET 애플리케이션에서 PDF 양식 처리를 통합하는 사용하기 쉬운 접근 방식을 제공합니다. 양식 채우기, 텍스트 추출 및 문서 보안을 지원하며, 쉬운 통합 및 무료 개발 기능을 갖추고 있습니다.

IronPDF를 사용하여 PDF 양식에서 텍스트를 추출하려면 어떻게 해야 합니까?

IronPDF는 PDF 양식에서 텍스트를 추출하는 방법을 제공합니다. PdfDocument.FromFile로 문서를 로드한 후, pdfDocument.ExtractAllText()와 같은 방법을 사용하여 텍스트 콘텐츠를 접근하고 추출할 수 있습니다.

.NET 라이브러리를 사용하여 PDF 문서의 보안을 보장할 수 있습니까?

네, IronPDF는 PDF 문서의 보안을 강화하기 위한 기능을 제공합니다. 여기에는 디지털 서명, 생략 및 암호화를 포함하여 민감한 정보를 보호하기 위한 기능이 포함됩니다.

PDF 양식 필드가 예상대로 업데이트되지 않는 경우 어떤 문제 해결 단계를 수행할 수 있습니까?

IronPDF를 사용하여 양식 필드를 올바르게 식별하고 접근했는지 확인하세요. 필드 이름이나 인덱스를 확인하고 doc.Form.FindFormField('FieldName').Value = 'New Value'를 사용하여 필드 값을 업데이트하세요.

C#에서 폼 필드를 채운 후 수정된 PDF 문서를 저장하려면 어떻게 해야 합니까?

IronPDF를 사용하여 폼 필드를 수정한 후 pdfDocument.SaveAs('path/to/newfile.pdf')를 사용하여 업데이트된 문서를 저장하여 변경 사항을 유지합니다.

IronPDF는 PDF 양식 처리를 제외한 다른 문서 작업도 다룰 수 있습니까?

네, IronPDF는 다재다능하며 텍스트 추출, 차트 렌더링, 문서 보안 강화 등 다양한 PDF 작업을 처리할 수 있어 PDF 관리에 포괄적인 도구입니다.

PDF 양식과 함께 작업하는 개발자에게 IronPDF는 어떤 이점이 있습니까?

IronPDF는 HTML-to-PDF 렌더링 및 .NET 애플리케이션과의 통합과 같은 기능을 제공하여 개발자의 생산성을 향상시켜주는 간단한 API를 제공합니다.

IronPDF가 .NET 10을 지원합니까? IronPDF를 사용하여 C#에서 PDF 양식을 채우는 것은 무엇을 의미합니까?

네, IronPDF는 .NET 8과 .NET 9을 포함하여 최신 .NET 버전을 지원하며 2025년 11월에 예정된 .NET 10 릴리스와 이미 호환됩니다. 이는 .NET 10에서도 C#의 양식 채우기 및 PDF 조작을 IronPDF로 계속 사용할 수 있음을 의미합니다.

커티스 차우
기술 문서 작성자

커티스 차우는 칼턴 대학교에서 컴퓨터 과학 학사 학위를 취득했으며, Node.js, TypeScript, JavaScript, React를 전문으로 하는 프론트엔드 개발자입니다. 직관적이고 미적으로 뛰어난 사용자 인터페이스를 만드는 데 열정을 가진 그는 최신 프레임워크를 활용하고, 잘 구성되고 시각적으로 매력적인 매뉴얼을 제작하는 것을 즐깁니다.

커티스는 개발 분야 외에도 사물 인터넷(IoT)에 깊은 관심을 가지고 있으며, 하드웨어와 소프트웨어를 통합하는 혁신적인 방법을 연구합니다. 여가 시간에는 게임을 즐기거나 디스코드 봇을 만들면서 기술에 대한 애정과 창의성을 결합합니다.

아이언 서포트 팀

저희는 주 5일, 24시간 온라인으로 운영합니다.
채팅
이메일
전화해