IronPDF와 Devexpress PDF Viewer의 비교
Portable Document Format (PDF)는 Adobe에 의해 텍스트 및 그래픽 서식을 사용하여 문서를 배포하기 위해 만들어졌습니다. 우리는 PDF 파일을 열기 위해 별도의 응용 프로그램이 필요합니다. 오늘날의 문화에서 PDF 파일은 절대적으로 필수입니다. 청구서 발행 및 문서 생성용으로, Portable Document Format 파일은 다양한 비즈니스 전반에서 사용됩니다. 개발자들은 클라이언트의 필요에 맞는 문서를 만들기 위해 PDF 형식을 사용합니다. 오늘날의 라이브러리 덕분에 PDF를 만드는 것이 그 어느 때보다 쉬워졌습니다. 프로젝트에서 이러한 유형의 라이브러리를 사용할 때 우리는 구축, 읽기, 변환 기능과 같은 요소를 고려하여 시장에서 가장 좋은 라이브러리를 결정해야 합니다.
이 기사에서는 .NET 구성 요소에 대한 두 가지 일반적인 PDF 라이브러리를 비교할 것입니다. 이 두 라이브러리는:
- IronPDF
- DevExpress PDF Viewer Controls
IronPDF 및 DevExpress PDF는 Microsoft .NET 응용 프로그램에서 사용할 수 있는 두 가지 라이브러리입니다. IronPDF는 온라인이든 데스크탑 응용 프로그램이든 PDF를 생성, 읽기, 변경할 수 있습니다. 그러나 DevExpress는 PDF를 보기 위해서만 사용할 수 있습니다.
IronPDF 기능
IronPDF는 브라우저가 할 수 있는 거의 모든 것을 할 수 있는 유능한 PDF 변환기입니다. 개발자 친화적인 PDF 라이브러리로, PDF 파일의 생성, 읽기 및 조작을 매우 쉽게 만들어 줍니다. IronPDF는 Chrome 엔진을 사용하여 HTML을 PDF로 변환합니다. IronPDF는 Windows Forms, HTML, ASPX, Razor HTML, .NET Core, ASP.NET, Windows Form, WPF, Xamarin, Blazor, Unity, HoloLens 앱 등 다양한 웹 구성 요소를 지원합니다. Microsoft .NET 및 .NET core 앱은 IronPDF에 의해 지원됩니다 (ASP.NET 웹 응용 프로그램 및 전통적인 Windows 응용 프로그램 모두). IronPDF는 또한 시각적으로 매력적인 PDF를 생성하는 데 사용할 수 있습니다.
IronPDF는 HTML5, JavaScript, CSS 및 그림을 PDF 문서로 변환할 수 있습니다. 파일에 머리글과 바닥글을 포함할 수 있습니다. 또한 PDF를 쉽게 읽을 수 있도록 할 수 있습니다. IronPDF는 PDF 파일을 사용하는 강력한 HTML to PDF 변환기도 함께 제공합니다. IronPDF는 강력한 PDF 변환 엔진을 자랑합니다. IronPDF와 함께 외부 종속성은 없습니다.
- PDF를 생성하는 데 사용할 수 있는 소스에는 HTML, HTML5, ASPX, Razor/MVC View가 포함됩니다. HTML 파일을 PDF로 변환할 수 있을 뿐만 아니라 이미지 파일도 변환할 수 있습니다.
- 인터랙티브 PDF 문서 생성, 대화형 양식을 작성 및 제출, PDF 문서 결합 및 분할, PDF 문서에서 텍스트 및 이미지 추출, PDF 문서에서 텍스트 검색, PDF 페이지를 이미지로 레스터화, PDF 문서 변환은 IronPDF를 사용하여 수행할 수 있는 작업 중 일부일 뿐입니다.
- 시작점으로, 공식 IronPDF 웹사이트를 사용하여 문서를 만듭니다. 또한 HTML 로그인 양식 뒤에서 로그인을 위해 사용자 지정 네트워크 로그인 자격 증명, 사용자 에이전트, 프록시, 쿠키, HTTP 헤더, 양식 변수를 지원합니다.
- 사용자 이름과 암호를 지정하여 IronPDF는 보호된 문서를 열 수 있게 해 줍니다.
- IronPDF는 기존 PDF 문서를 읽고 빈 칸을 채우는 프로그램입니다.
- 문서에서 이미지를 추출할 수 있는 능력을 가지고 있습니다.
- 머리글, 바닥글, 텍스트, 이미지, 책갈피, 워터마크 등으로 문서를 사용자 지정할 수 있게 해 줍니다.
- 새 문서 또는 기존 문서에서 페이지를 분할하고 결합할 수 있게 해 줍니다.
- Acrobat 리더 없이도 문서를 PDF 객체로 변환할 수 있습니다.
- CSS 파일을 PDF 문서로 변환할 수 있습니다.
- CSS 파일 미디어 타입 파일이 문서로 변환될 수 있습니다.
- 기존 PDF 양식을 작성하고 새 양식을 추가하십시오.
DevExpress PDF 기능
DevExpress는 Visual Studio에서 사용할 수 있는 Windows 응용 프로그램에서 사용할 수 있는 WinForms 컨트롤을 제공합니다. 사용자가 PDF에 액세스할 수 있도록 WinForms 컨트롤 목록을 제공합니다. WPF 컨트롤과 ASP.NET 폼 컨트롤에 대한 컨트롤도 제공합니다.
PDF 뷰어는 외부 PDF 뷰어를 PC에 설치하지 않고도 WinForms 응용 프로그램에서 직접 PDF 파일을 표시합니다. Windows Forms의 PDF Viewer 컨트롤을 통해 응용 프로그램에서 직접 PDF 문서를 보고, 변경하고, 인쇄할 수 있습니다. PDF 뷰어는 문서를 표시하는 것만이 아니라 사용자에게 양식 필드를 변경하고, 문서를 주석 처리하며, 클립보드를 사용하는 기능도 제공합니다. DevExpress는 모든 .NET Framework 및 라이브러리에 사용할 수 있습니다. 또한 ASP.NET, MVC, ASP.NET Core 등에도 컨트롤과 확장을 제공합니다.
PDF 뷰어는 다음과 같은 풍부한 문서 내용 유형을 지원합니다:
- JPX / JBIG2 이미지
- 패턴
- 투명도 그룹
- 3형식 글꼴
- 대화형 양식
DevExpress WinForms PDF 컨트롤은 DirectX로 구동되며, 뛰어난 텍스트 렌더링과 텍스트 초기화 지원을 제공합니다.
WinForms용 PDF 보기와 함께 전체 사용자 인터페이스가 포함되어 있습니다. 문서가 표시되는 방식을 변경하는 데 사용할 수 있으며, 오른쪽 및 왼쪽으로 회전, 페이지 콘텐츠 확대, 최근에 사용된 페이지 표시 스타일 전환 등이 가능합니다.
손 도구, 마키 줌 도구 및 다양한 키보드 및 커서 상호 작용 모드가 PDF Viewer 컨트롤에서 제공됩니다. 컨텍스트 메뉴에서 커서 모드를 변경하거나 명령 UI에서 도구를 선택하세요.
탐색 창에서는 저장된 페이지로 이동하거나 썸네일 이미지를 사용하여 특정 페이지로 이동하며, 파일 및 주석을 정리할 수 있습니다.
DevExpress는 피드백 제공을 허용하고 질의에 대한 지속적인 지원을 제공합니다. 지원팀은 보다 자세한 피드백이 필요할 경우 문의할 수 있습니다.
2. Visual Studio에서 새 프로젝트 생성하기
Visual Studio 소프트웨어를 열고 파일 메뉴로 이동합니다. "새 프로젝트"를 선택한 후 "콘솔 애플리케이션"을 선택합니다. 이 글에서는 콘솔 애플리케이션을 사용하여 PDF 문서를 생성할 것입니다.
프로젝트 이름을 입력하고 적절한 텍스트 상자에서 파일 경로를 선택합니다. 그런 다음, 만들기 버튼을 클릭하고 아래 스크린샷처럼 필요한 .NET Framework를 선택합니다:
Visual Studio 프로젝트는 이제 선택한 애플리케이션의 구조를 생성하며, 콘솔, 윈도우 및 웹 애플리케이션을 선택한 경우, 코드 입력 및 애플리케이션 빌드/실행이 가능한 program.cs 파일을 엽니다.
다음으로, 코드를 테스트하기 위해 라이브러리를 추가할 수 있습니다.
3.0 IronPDF 라이브러리 설치
IronPDF 라이브러리는 네 가지 방법으로 다운로드하고 설치할 수 있습니다.
다음과 같습니다:
- Visual Studio 사용
- Visual Studio 명령어 라인 사용
- NuGet 웹사이트에서 직접 다운로드
- IronPDF 웹사이트에서 직접 다운로드
3.1 Visual Studio 사용
Visual Studio 소프트웨어는 솔루션에 패키지를 직접 설치할 수 있는 NuGet 패키지 관리자 옵션을 제공합니다. 아래 스크린샷은 NuGet 패키지 관리자를 여는 방법을 보여줍니다.
NuGet 웹사이트에서 패키지 목록을 보여주는 검색 상자를 제공합니다. 패키지 관리자에서 "IronPDF"라는 키워드를 검색해야 합니다. 아래 스크린샷처럼:
위 이미지에서 관련 검색 항목 목록을 얻습니다. 솔루션에 패키지를 설치하기 위해 필요한 옵션을 선택해야 합니다.
3.2 Visual Studio 명령 줄 사용
Visual Studio에서 도구 -> NuGet 패키지 관리자 -> 패키지 관리자 콘솔로 이동
패키지 관리자 콘솔 탭에 다음 줄을 입력합니다:
Install-Package IronPdf
현재 프로젝트에 패키지가 다운로드/설치되어 사용 준비가 됩니다.
3.3 NuGet 웹사이트에서 직접 다운로드
세 번째 방법은 웹사이트에서 NuGet 패키지를 직접 다운로드하는 것입니다.
- NuGet 패키지 페이지로 이동
- 오른쪽 메뉴에서 다운로드 패키지 옵션을 선택하십시오.
- 다운로드한 패키지를 더블 클릭하십시오. 자동으로 설치됩니다.
- 다음으로, 솔루션을 다시 로드하고 프로젝트에서 사용을 시작합니다.
3.4 IronPDF 웹사이트에서 직접 다운로드
IronPDF 사이트에서 최신 패키지를 직접 다운로드합니다. 다운로드가 완료되면 아래 단계를 따라 프로젝트에 패키지를 추가하세요.
- 솔루션 창에서 프로젝트를 오른쪽 클릭.
- 그런 다음 옵션 참조를 선택하고 다운로드된 참조의 위치를 찾아봅니다.
- 다음으로 확인을 클릭하여 참조를 추가합니다.
4.0 PDF Viewer 라이브러리 설치
PDF Viewer 라이브러리는 네 가지 방법으로 다운로드 및 설치할 수 있습니다.
다음과 같습니다:
- Visual Studio 사용
- Visual Studio 명령어 라인 사용
- DevExpress 웹사이트에서 직접 다운로드
DevExpress NuGet 등록
NuGet을 사용하여 DevExpress 패키지를 설치하려면 먼저 DevExpress NuGet 피드를 패키지 소스로 등록해야 합니다.
- NuGet 피드 URL 또는 인증 키를 사용하여 DevExpress NuGet 패키지에 액세스할 수 있습니다. 추가 정보나 업데이트는 DevExpress 문서를 확인하세요.
- Visual Studio에서 옵션 패널(도구 -> 옵션)을 열고 DevExpress NuGet 피드를 패키지 소스로 등록합니다. 이 대화 상자에서 패키지 관리자 옵션을 찾아 아래와 같이 DevExpress 피드를 패키지 소스에 추가합니다.
- 인증 키를 사용하는 경우, 패키지 소스로
https://nuget.devexpress.com/api을 사용하십시오. - NuGet 피드 URL을 사용할 경우, 패키지 소스로 지정합니다.
- 인증 키를 사용하는 경우, 패키지 소스로
4.1 Visual Studio 사용
위와 같이 NuGet 패키지 관리자에 가서 DevExpress NuGet 패키지 관리자를 선택합니다. 그런 다음, "Win.PdfViewer" 키워드를 검색합니다. 아래와 같이 모든 관련 검색 결과를 제공합니다.
프로젝트에 패키지를 설치할 첫 번째 결과 옵션을 선택합니다.
4.2 Visual Studio 명령줄 사용
Visual Studio에서 도구 -> NuGet 패키지 관리자 -> 패키지 관리자 콘솔로 이동
패키지 관리자 콘솔 탭에 다음 줄을 입력합니다:
Install-Package DevExpress.Win.PdfViewer
다음으로 Enter 키를 누릅니다. 다음과 같이 로그인 창을 표시합니다. 사용자 이름은 DevExpress로 입력하고 비밀번호는 DevExpress URL에서 얻을 수 있습니다. 이렇게 하면 DevExpress가 서버에 접속하여 다운로드를 허용하게 됩니다.
다음으로 패키지가 현재 프로젝트에 다운로드/설치되고 사용 준비가 완료됩니다.
4.3 DevExpress 웹사이트에서 직접 다운로드
DevExpress 제품 체험판 페이지를 방문하면 다양한 .NET Framework 환경을 위한 최신 패키지를 웹사이트에서 직접 다운로드할 수 있는 DLL 옵션 목록으로 리디렉션됩니다; 필요한 패키지를 선택하여 다운로드할 수 있습니다. 다운로드가 완료되면 아래 단계를 따라 프로젝트에 패키지를 추가하세요.
파일이 다운로드되면 다운로드된 파일을 더블 클릭하면 아래 이미지처럼 설치가 시작됩니다:
그다음, 설치 버튼을 클릭하면 새로운 팝업 창이 나타납니다.
설치할 옵션을 선택하세요.
그런 다음 라이선스를 수락하고 몇 분 후에 설치가 완료됩니다.
5.0 IronPDF를 사용하여 PDF 생성하기
IronPDF로 PDF 문서를 쉽게 생성할 수 있습니다 — URL로부터 HTML 파일을 생성하고 이를 PDF로 변환합니다.
다음 단계들을 통해 PDF 문서를 쉽게 생성할 수 있습니다.
using IronPdf;
// Create an instance of the ChromePdfRenderer
ChromePdfRenderer Renderer = new ChromePdfRenderer();
// Render a URL as a PDF and save it
var Pdf = Renderer.RenderUrlAsPdf("https://www.google.co.in/");
Pdf.SaveAs("result.pdf");
// Alternatively, do the above in a single line
new ChromePdfRenderer().RenderUrlAsPdf("https://www.google.co.in/").SaveAs("result.pdf");
using IronPdf;
// Create an instance of the ChromePdfRenderer
ChromePdfRenderer Renderer = new ChromePdfRenderer();
// Render a URL as a PDF and save it
var Pdf = Renderer.RenderUrlAsPdf("https://www.google.co.in/");
Pdf.SaveAs("result.pdf");
// Alternatively, do the above in a single line
new ChromePdfRenderer().RenderUrlAsPdf("https://www.google.co.in/").SaveAs("result.pdf");
Imports IronPdf
' Create an instance of the ChromePdfRenderer
Private Renderer As New ChromePdfRenderer()
' Render a URL as a PDF and save it
Private Pdf = Renderer.RenderUrlAsPdf("https://www.google.co.in/")
Pdf.SaveAs("result.pdf")
' Alternatively, do the above in a single line
Call (New ChromePdfRenderer()).RenderUrlAsPdf("https://www.google.co.in/").SaveAs("result.pdf")
위의 예에서는 링크를 문서로 변환하는 두 가지 방법을 사용할 수 있습니다. 한 가지 방법은 IronPDF 객체를 생성하여 문서를 생성하는 것이고, 또 다른 방법은 RenderUrlAsPdf 객체를 생성하는 것입니다.
위 내용은 RenderUrlAsPdf를 사용하여 이를 문서로 변환할 수 있음을 보여줍니다. 우리는 링크와 저장 위치만 넘기기만 하면 됩니다. PDF 변환 완료 시간은 대략 3.4초입니다.
6.0 IronPDF를 사용하여 HTML 문자열로부터 PDF 생성하기
IronPDF를 사용하여 HTML 문자열을 PDF 문서로 변환할 수 있습니다. 다음은 HTML 문자열을 문서로 변환하는 방법의 예입니다. 어떤 HTML 태그라도 PDF로 변환할 수 있는 기능도 있습니다.
using IronPdf;
// Render an HTML string as a PDF and save it
new ChromePdfRenderer().RenderHtmlAsPdf("<h1>Hello world!!</h1>").SaveAs("result.pdf");
using IronPdf;
// Render an HTML string as a PDF and save it
new ChromePdfRenderer().RenderHtmlAsPdf("<h1>Hello world!!</h1>").SaveAs("result.pdf");
Imports IronPdf
' Render an HTML string as a PDF and save it
Call (New ChromePdfRenderer()).RenderHtmlAsPdf("<h1>Hello world!!</h1>").SaveAs("result.pdf")
앞의 예는 RenderHtmlAsPdf를 사용하여 HTML 문자열을 변환하는 방법을 보여줍니다. 또한, HTML을 문자열로 변환하는 함수에 원하는 만큼의 HTML 코드를 제공할 수 있습니다. "다른 이름으로 저장" 기능을 사용하여 문자열을 가져온 후 문서를 저장할 수 있습니다. 과정 완료에는 약 2초가 걸립니다.
Bootstrap 기능 매트릭스
PDF 생성 도구는 Enterprise 애플리케이션을 위한 최신 웹 프레임워크를 지원해야 합니다. 이 Bootstrap 5 데모는 리스트 그룹과 상태 배지를 사용하여 IronPDF의 포괄적인 기능 세트를 보여줍니다.
using IronPdf;
var renderer = new ChromePdfRenderer();
string capabilityMatrix = @"
<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8'>
<link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'>
<style>
.capability-item { border-left: 4px solid transparent; transition: all 0.2s; }
.capability-item.supported { border-left-color: #198754; }
.capability-item.limited { border-left-color: #ffc107; }
@media print { .list-group-item { page-break-inside: avoid; } }
</style>
</head>
<body class='bg-light'>
<div class='container py-4'>
<div class='card shadow-sm mb-4'>
<div class='card-header bg-primary text-white'>
<h3 class='mb-0'>PDF Library Feature Comparison</h3>
</div>
<div class='card-body'>
<div class='row'>
<div class='col-md-6'>
<h5 class='text-primary mb-3'>Rendering Capabilities</h5>
<ul class='list-group list-group-flush'>
<li class='list-group-item capability-item supported d-flex justify-content-between'>
<span><strong>HTML5 Support</strong><br><small class='text-muted'>Modern semantic elements</small></span>
<span class='badge bg-success align-self-center'>Full</span>
</li>
<li class='list-group-item capability-item supported d-flex justify-content-between'>
<span><strong>CSS3 Layouts</strong><br><small class='text-muted'>Flexbox and Grid</small></span>
<span class='badge bg-success align-self-center'>Native</span>
</li>
<li class='list-group-item capability-item supported d-flex justify-content-between'>
<span><strong>JavaScript</strong><br><small class='text-muted'>Dynamic content rendering</small></span>
<span class='badge bg-success align-self-center'>V8 Engine</span>
</li>
<li class='list-group-item capability-item supported d-flex justify-content-between'>
<span><strong>Web Fonts</strong><br><small class='text-muted'>Google Fonts, custom fonts</small></span>
<span class='badge bg-success align-self-center'>Complete</span>
</li>
</ul>
</div>
<div class='col-md-6'>
<h5 class='text-success mb-3'>Document Operations</h5>
<ul class='list-group list-group-flush'>
<li class='list-group-item capability-item supported d-flex justify-content-between'>
<span><strong>Merge/Split</strong><br><small class='text-muted'>Combine or extract pages</small></span>
<span class='badge bg-success align-self-center'>Available</span>
</li>
<li class='list-group-item capability-item supported d-flex justify-content-between'>
<span><strong>Watermarking</strong><br><small class='text-muted'>Text and image stamps</small></span>
<span class='badge bg-success align-self-center'>Advanced</span>
</li>
<li class='list-group-item capability-item supported d-flex justify-content-between'>
<span><strong>Form Fields</strong><br><small class='text-muted'>Interactive PDF forms</small></span>
<span class='badge bg-success align-self-center'>Full Support</span>
</li>
<li class='list-group-item capability-item supported d-flex justify-content-between'>
<span><strong>Security</strong><br><small class='text-muted'>Encryption and signatures</small></span>
<span class='badge bg-success align-self-center'>AES-256</span>
</li>
</ul>
</div>
</div>
</div>
</div>
<div class='row g-3'>
<div class='col-md-6'>
<div class='card shadow-sm h-100'>
<div class='card-body'>
<h5 class='card-title text-primary'>✓ IronPDF Strengths</h5>
<ul class='mb-0'>
<li>Chrome-based rendering for accuracy</li>
<li>Complete Bootstrap 5 compatibility</li>
<li>Cross-platform deployment ready</li>
<li>Intuitive API with extensive docs</li>
</ul>
</div>
</div>
</div>
<div class='col-md-6'>
<div class='card shadow-sm h-100 bg-light'>
<div class='card-body'>
<h5 class='card-title text-warning'>⚠ DevExpress Notes</h5>
<ul class='mb-0'>
<li>Viewer-focused, not generation</li>
<li>Limited HTML-to-PDF conversion</li>
<li>Requires UI suite subscription</li>
<li>Complex licensing model</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</body>
</html>";
var pdf = renderer.RenderHtmlAsPdf(capabilityMatrix);
pdf.SaveAs("capability-matrix.pdf");
using IronPdf;
var renderer = new ChromePdfRenderer();
string capabilityMatrix = @"
<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8'>
<link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'>
<style>
.capability-item { border-left: 4px solid transparent; transition: all 0.2s; }
.capability-item.supported { border-left-color: #198754; }
.capability-item.limited { border-left-color: #ffc107; }
@media print { .list-group-item { page-break-inside: avoid; } }
</style>
</head>
<body class='bg-light'>
<div class='container py-4'>
<div class='card shadow-sm mb-4'>
<div class='card-header bg-primary text-white'>
<h3 class='mb-0'>PDF Library Feature Comparison</h3>
</div>
<div class='card-body'>
<div class='row'>
<div class='col-md-6'>
<h5 class='text-primary mb-3'>Rendering Capabilities</h5>
<ul class='list-group list-group-flush'>
<li class='list-group-item capability-item supported d-flex justify-content-between'>
<span><strong>HTML5 Support</strong><br><small class='text-muted'>Modern semantic elements</small></span>
<span class='badge bg-success align-self-center'>Full</span>
</li>
<li class='list-group-item capability-item supported d-flex justify-content-between'>
<span><strong>CSS3 Layouts</strong><br><small class='text-muted'>Flexbox and Grid</small></span>
<span class='badge bg-success align-self-center'>Native</span>
</li>
<li class='list-group-item capability-item supported d-flex justify-content-between'>
<span><strong>JavaScript</strong><br><small class='text-muted'>Dynamic content rendering</small></span>
<span class='badge bg-success align-self-center'>V8 Engine</span>
</li>
<li class='list-group-item capability-item supported d-flex justify-content-between'>
<span><strong>Web Fonts</strong><br><small class='text-muted'>Google Fonts, custom fonts</small></span>
<span class='badge bg-success align-self-center'>Complete</span>
</li>
</ul>
</div>
<div class='col-md-6'>
<h5 class='text-success mb-3'>Document Operations</h5>
<ul class='list-group list-group-flush'>
<li class='list-group-item capability-item supported d-flex justify-content-between'>
<span><strong>Merge/Split</strong><br><small class='text-muted'>Combine or extract pages</small></span>
<span class='badge bg-success align-self-center'>Available</span>
</li>
<li class='list-group-item capability-item supported d-flex justify-content-between'>
<span><strong>Watermarking</strong><br><small class='text-muted'>Text and image stamps</small></span>
<span class='badge bg-success align-self-center'>Advanced</span>
</li>
<li class='list-group-item capability-item supported d-flex justify-content-between'>
<span><strong>Form Fields</strong><br><small class='text-muted'>Interactive PDF forms</small></span>
<span class='badge bg-success align-self-center'>Full Support</span>
</li>
<li class='list-group-item capability-item supported d-flex justify-content-between'>
<span><strong>Security</strong><br><small class='text-muted'>Encryption and signatures</small></span>
<span class='badge bg-success align-self-center'>AES-256</span>
</li>
</ul>
</div>
</div>
</div>
</div>
<div class='row g-3'>
<div class='col-md-6'>
<div class='card shadow-sm h-100'>
<div class='card-body'>
<h5 class='card-title text-primary'>✓ IronPDF Strengths</h5>
<ul class='mb-0'>
<li>Chrome-based rendering for accuracy</li>
<li>Complete Bootstrap 5 compatibility</li>
<li>Cross-platform deployment ready</li>
<li>Intuitive API with extensive docs</li>
</ul>
</div>
</div>
</div>
<div class='col-md-6'>
<div class='card shadow-sm h-100 bg-light'>
<div class='card-body'>
<h5 class='card-title text-warning'>⚠ DevExpress Notes</h5>
<ul class='mb-0'>
<li>Viewer-focused, not generation</li>
<li>Limited HTML-to-PDF conversion</li>
<li>Requires UI suite subscription</li>
<li>Complex licensing model</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</body>
</html>";
var pdf = renderer.RenderHtmlAsPdf(capabilityMatrix);
pdf.SaveAs("capability-matrix.pdf");
Imports IronPdf
Dim renderer As New ChromePdfRenderer()
Dim capabilityMatrix As String = "
<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8'>
<link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'>
<style>
.capability-item { border-left: 4px solid transparent; transition: all 0.2s; }
.capability-item.supported { border-left-color: #198754; }
.capability-item.limited { border-left-color: #ffc107; }
@media print { .list-group-item { page-break-inside: avoid; } }
</style>
</head>
<body class='bg-light'>
<div class='container py-4'>
<div class='card shadow-sm mb-4'>
<div class='card-header bg-primary text-white'>
<h3 class='mb-0'>PDF Library Feature Comparison</h3>
</div>
<div class='card-body'>
<div class='row'>
<div class='col-md-6'>
<h5 class='text-primary mb-3'>Rendering Capabilities</h5>
<ul class='list-group list-group-flush'>
<li class='list-group-item capability-item supported d-flex justify-content-between'>
<span><strong>HTML5 Support</strong><br><small class='text-muted'>Modern semantic elements</small></span>
<span class='badge bg-success align-self-center'>Full</span>
</li>
<li class='list-group-item capability-item supported d-flex justify-content-between'>
<span><strong>CSS3 Layouts</strong><br><small class='text-muted'>Flexbox and Grid</small></span>
<span class='badge bg-success align-self-center'>Native</span>
</li>
<li class='list-group-item capability-item supported d-flex justify-content-between'>
<span><strong>JavaScript</strong><br><small class='text-muted'>Dynamic content rendering</small></span>
<span class='badge bg-success align-self-center'>V8 Engine</span>
</li>
<li class='list-group-item capability-item supported d-flex justify-content-between'>
<span><strong>Web Fonts</strong><br><small class='text-muted'>Google Fonts, custom fonts</small></span>
<span class='badge bg-success align-self-center'>Complete</span>
</li>
</ul>
</div>
<div class='col-md-6'>
<h5 class='text-success mb-3'>Document Operations</h5>
<ul class='list-group list-group-flush'>
<li class='list-group-item capability-item supported d-flex justify-content-between'>
<span><strong>Merge/Split</strong><br><small class='text-muted'>Combine or extract pages</small></span>
<span class='badge bg-success align-self-center'>Available</span>
</li>
<li class='list-group-item capability-item supported d-flex justify-content-between'>
<span><strong>Watermarking</strong><br><small class='text-muted'>Text and image stamps</small></span>
<span class='badge bg-success align-self-center'>Advanced</span>
</li>
<li class='list-group-item capability-item supported d-flex justify-content-between'>
<span><strong>Form Fields</strong><br><small class='text-muted'>Interactive PDF forms</small></span>
<span class='badge bg-success align-self-center'>Full Support</span>
</li>
<li class='list-group-item capability-item supported d-flex justify-content-between'>
<span><strong>Security</strong><br><small class='text-muted'>Encryption and signatures</small></span>
<span class='badge bg-success align-self-center'>AES-256</span>
</li>
</ul>
</div>
</div>
</div>
</div>
<div class='row g-3'>
<div class='col-md-6'>
<div class='card shadow-sm h-100'>
<div class='card-body'>
<h5 class='card-title text-primary'>✓ IronPDF Strengths</h5>
<ul class='mb-0'>
<li>Chrome-based rendering for accuracy</li>
<li>Complete Bootstrap 5 compatibility</li>
<li>Cross-platform deployment ready</li>
<li>Intuitive API with extensive docs</li>
</ul>
</div>
</div>
</div>
<div class='col-md-6'>
<div class='card shadow-sm h-100 bg-light'>
<div class='card-body'>
<h5 class='card-title text-warning'>⚠ DevExpress Notes</h5>
<ul class='mb-0'>
<li>Viewer-focused, not generation</li>
<li>Limited HTML-to-PDF conversion</li>
<li>Requires UI suite subscription</li>
<li>Complex licensing model</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</body>
</html>"
Dim pdf = renderer.RenderHtmlAsPdf(capabilityMatrix)
pdf.SaveAs("capability-matrix.pdf")
출력: Bootstrap 5 리스트 그룹, 배지 및 카드 레이아웃을 포함한 포괄적인 기능 매트릭스 PDF. IronPDF는 모든 유틸리티 클래스, flexbox 정렬, 반응형 그리드 시스템을 완벽하게 렌더링하여 우수한 Bootstrap 프레임워크 지원을 제공합니다.
Bootstrap 지원에 대한 추가 정보는 Bootstrap & Flexbox CSS 가이드를 참조하세요.
7.0 IronPDF를 사용하여 PDF 읽기
IronPDF는 기존 PDF 파일을 읽을 수 있게 해주는 프로그램입니다. 다음은 IronPDF를 사용하여 기존 PDF를 읽는 방법의 예입니다.
using IronPdf;
// Read an existing PDF file
var pdfDocument = PdfDocument.FromFile("result.pdf");
// Extract all text from the PDF
string AllText = pdfDocument.ExtractAllText();
using IronPdf;
// Read an existing PDF file
var pdfDocument = PdfDocument.FromFile("result.pdf");
// Extract all text from the PDF
string AllText = pdfDocument.ExtractAllText();
Imports IronPdf
' Read an existing PDF file
Private pdfDocument = PdfDocument.FromFile("result.pdf")
' Extract all text from the PDF
Private AllText As String = pdfDocument.ExtractAllText()
위 코드에 표시된 대로 FromFile 메서드를 사용하여 기존 파일에서 PDF를 읽고 이를 PdfDocument 객체로 변환합니다. 이 객체를 사용하여 PDF 페이지에서 액세스 가능한 텍스트와 이미지를 읽을 수 있습니다. 객체에는 PDF 문서의 모든 텍스트를 문자열로 추출하는 ExtractAllText라는 메서드가 있습니다.
8.0 PDF 뷰어 애플리케이션 만들기
다음 단계로 PDF 뷰어 애플리케이션을 만들 수 있습니다:
- Microsoft® Visual Studio에서 새 Windows Forms 애플리케이션 프로젝트를 만듭니다.
- 폼에서 DX.21.2: Common Controls 도구상자 메뉴에서 PDF Viewer 항목을 드래그합니다.
- PDF Viewer 제어 작업 메뉴에서 PDF Viewer's 스마트 태그를 클릭하고 부모 컨테이너에 도킹을 선택합니다. 이렇게 하면 PDF Viewer가 폼의 크기로 확장됩니다.
- PDF Viewer 제어를 사용하려면 먼저 문서를 로드해야 합니다. PDF Viewer's 활동 목록에 액세스하려면 스마트 태그를 클릭하세요. 작업 목록에서 Load PDF 옵션을 클릭하세요.
- "열기" 대화상자가 표시됩니다. 이 대화상자에서 열려는 문서를 찾고 열기를 클릭하세요.
우리는 컨트롤을 사용하여 다음 작업을 수행할 수 있습니다:
PDF를 탐색하세요
PDF 파일을 쉽게 탐색하고 탐구할 수 있습니다. Viewer 컨트롤에는 다음과 같은 다양한 문서 탐색 옵션이 포함되어 있습니다:
- 책갈피와 링크
- 탐색 창(사용자 정의 가능 문서 탐색 UI)
- 모든 페이지의 썸네일
- 리본을 포함한 UI
Viewer는 모든 방문한 페이지를 추적하고 사용자가 필요에 따라 이전 페이지로 되돌아갈 수 있게 해줍니다. Find 패널을 사용하여 Adobe Reader에서와 마찬가지로 PDF 자료를 검색할 수 있습니다 (옵션에는 대소문자 구분 및 전체 단어 검색 포함).
검토 및 주석 달기
사용자는 의견을 추가, 수정 및 삭제할 수 있습니다. WinForms용 뷰어는 텍스트 강조 및 스티커 메모를 포함한 전체 주석 기능을 제공합니다.
- 문제없이 협업
- 추가 기능/옵션 포함:
- 답글 및 리뷰 추가 가능
- 마크업 도구의 옵션 구성 (색상 및 불투명도)
- 댓글 정렬, 필터링 및 검색 가능
- 포괄적인 API
- DevExpress를 사용하여 확대 및 축소 가능합니다.
작성 가능한 PDF 양식
AcroForms를 통해 문서를 편집할 수 있습니다. 당신이 WinForms 프로젝트에 뷰어를 추가한 후, 사용자는 양식 필드 데이터를 포함한 PDF를 편집할 수 있게 됩니다. 뷰어의 각 필드는 텍스트 상자, 라디오 버튼, 자동 완성이 있는 콤보 상자, 체크 상자, 리스트 등 소속된 양식 유형에 따라 표시됩니다.
PDF에 AcroForm 데이터가 포함되어 있다면 FDF, XFDF, XML 및 TXT 형식으로 가져오거나 내보낼 수 있습니다.
첨부된 파일 열기 및 저장
DevExpress PDF Viewers의 탐색 창에는 관련 파일이 표시됩니다. 첨부된 파일의 PDF를 열어서 디스크에 저장할 수 있습니다. PDF에 연결된 파일을 열 때 뷰어는 보안 경고를 표시할 수 있는 옵션도 제공합니다.
PDF 인쇄
뷰어는 Adobe에서 영감을 받은 전체 인쇄 옵션을 포함한 인쇄 미리보기 대화 상자와 함께 제공됩니다. 실시간 미리보기, 페이지 범위 선택, DPI 설정 및 방향이 포함됩니다.
9.0 결론
이 기사에서는 IronPDF와 DevExpress를 비교했습니다. 두 라이브러리에서 사용할 수 있는 공통 기능이 여러 가지 있습니다. IronPDF는 사용자의 Chrome 설정에 따라 HTML을 렌더링하지만, DevExpress는 현재 사용자 설정을 무시하고 HTML을 렌더링하는 별도의 엔진에서 실행됩니다. IronPDF는 DevExpress보다 HTML을 빠르게 렌더링할 수 있습니다.
성능 면에서 IronPDF는 DevExpress보다 빠릅니다. 또한, PDF 뷰어는 IronPDF를 사용하여 PDF를 생성할 수 없습니다. 그것은 단지 PDF를 볼 수 있을 뿐입니다. 추가 비용으로 제공되는 제한 없는 배포 허가는 IronPDF에 포함되지만, DevExpress에서는 이를 제공하지 않습니다. IronPDF는 DevExpress PDF 컨트롤과 비교하여 훨씬 더 많은 기능을 제공합니다.
결론적으로, 우리는 PDF와 작업하는 개발자에게 제공되는 높은 성능 수준과 다양한 기능 때문에 IronPDF를 선호합니다. IronPDF는 또한 사용자들이 제공되는 인상적인 기능 배열을 충분히 효과적으로 사용할 수 있도록 좋은 지원 및 문서를 제공합니다.
자주 묻는 질문
C#에서 HTML을 PDF로 변환하는 방법은 무엇인가요?
IronPDF의 RenderHtmlAsPdf 메서드를 사용하여 HTML 문자열을 PDF로 변환할 수 있습니다. 또한 RenderHtmlFileAsPdf 사용하여 HTML 파일을 PDF로 변환할 수도 있습니다.
IronPDF와 DevExpress PDF 뷰어의 차이점은 무엇입니까?
IronPDF는 다중 플랫폼에서 PDF를 생성, 읽기, 변형할 수 있는 다재다능한 도구로, 강력한 HTML에서 PDF로의 변환 기능을 가지고 있습니다. 반면, DevExpress PDF 뷰어는 주로 PDF 보기 기능에 초점을 맞추고 있으며, 문서 주석 및 양식 채우기를 지원합니다.
이미 존재하는 PDF에서 텍스트와 이미지를 라이브러리를 사용하여 추출할 수 있습니까?
예, IronPDF는 기존 PDF 파일에서 텍스트와 이미지를 그 종합 API를 사용하여 추출할 수 있게 해줍니다.
어떤 플랫폼이 PDF 관리에 대해 IronPDF를 지원합니까?
IronPDF는 Windows Forms, ASP.NET, .NET Core, WPF, Xamarin, Blazor, Unity, HoloLens 앱을 포함한 광범위한 플랫폼을 지원합니다.
.NET 프로젝트에 IronPDF를 어떻게 설치할 수 있습니까?
IronPDF는 Visual Studio의 NuGet 패키지 관리자, Visual Studio 커맨드 라인, 또는 NuGet 또는 IronPDF 웹사이트에서 직접 다운로드하여 .NET 프로젝트에 설치할 수 있습니다.
개발자가 DevExpress PDF 뷰어보다 IronPDF를 선택할 이유는 무엇입니까?
개발자가 IronPDF를 선택하는 이유는 그 광범위한 기능 때문입니다. HTML에서 PDF로의 변환, 인터랙티브 PDF 생성 및 강력한 성능을 포함합니다. 또한 훌륭한 지원과 문서를 제공하여 DevExpress보다 선호됩니다.
PDF 라이브러리를 사용할 때 일반적인 문제 해결 시나리오는 무엇입니까?
일반적인 문제 해결 시나리오에는 라이브러리의 올바른 설치 확인, .NET 버전과의 호환성 검증, PDF 생성 또는 변환 중 파일 경로 또는 권한과 관련된 예외 처리 등이 포함됩니다.
PDF 관리 라이브러리에서 어떤 기능을 찾아야 합니까?
고려해야 할 주요 기능으로는 HTML에서 PDF로 변환, 텍스트 및 이미지 추출, 인터랙티브 양식, 문서 커스터마이제이션 옵션, 다양한 플랫폼 지원이 있습니다. IronPDF는 이러한 모든 기능을 제공하여 PDF 관리의 종합적인 선택입니다.



