IronPDF와 PSPDFKit의 비교
1. 서론
프로그래밍 언어를 사용하여 PDF를 조작하는 것은 개발자에게 꽤 도전적인 일이 될 수 있으며, 특히 .NET 플랫폼에서는 더욱 그렇습니다. 이 기사에서는 C#.NET에서 여러 도구를 사용하여 PDF를 어떻게 관리할 수 있는지 논의할 것이며, 이 도구들은 많은 생산적인 시간과 에너지를 절약하는 데 도움이 될 것입니다. PDF 파일의 자료를 표시할 때 고려해야 할 요소가 여러 가지 있으며, 다른 형식에서 PDF로 내용을 전송할 때는 더욱 많습니다. 우리가 논의할 도구들은 개발자와 포춘 500대 기업이나 조직에서 사용하는 최고급 제품입니다. .NET 도구 중에서는 PDF 문제에 대한 즉각적인 해결책을 제공하는 도구는 다음과 같습니다:
- PSPDFKit
- IronPDF
2. IronPDF
IronPDF는 .NET 및 .NET Core 개발에서 HTML 웹사이트를 변환하는 데 이상적인 솔루션입니다. 또한 HTML을 변환하는 것 이상으로 다양한 추가 기능을 제공합니다. IronPDF를 통해 개발자는 .NET Core 및 프레임워크 프로젝트 내에서 PDF 문서를 생성, 수정 및 추출할 수 있습니다. IronPDF 패키지를 사용하면 개발자는 HTML 페이지에서 PDF를 쉽게 생성하거나 변환할 수 있습니다.
IronPDF는 몇 줄의 코드만으로 PDF 파일을 빠르게 생성, 읽기 및 조작할 수 있는 .NET 라이브러리입니다. 기존 PDF 문서 저장소에서 콘텐츠를 가져와 이동하고 인덱싱하여 콘텐츠 관리 및 성능 애플리케이션에 사용할 수 있습니다.
2.1. IronPDF 기능
2.1.1. PDF 이미지 처리
사용자는 이제 PDF에서 이미지를 만들거나 사진에서 PDF를 만들 수 있습니다. 이미지 추출, 다양한 이미지 확장 지원, PDF 인쇄를 모두 포함합니다.
2.1.2. PDF 파일 입출력
IronPDF는 128비트 암호화로 PDF를 암호화하고, 비밀번호로 보호하며 PDF에 디지털 서명을 할 수 있습니다.
2.1.3. PDF 변환
이 기능을 사용하면 HTML, 웹 폼, HTML 문자열, MVC 보기 및 URL을 포함한 다양한 소스에서 PDF를 생성할 수 있습니다.
2.1.4. PDF 편집
이 IronPDF 도구를 사용하면 워터마크 추가, 페이지 추가, 페이지 삭제, 배경 및 전경 변경 등을 포함한 다양한 방식으로 PDF를 포맷할 수 있습니다. 간단히 말해, IronPDF는 PDF로 할 수 있는 모든 것을 수행합니다.
2.1.5. PDF 콘텐츠 추출
PDF에서 포함된 텍스트는 종종 쉽게 추출될 수 있습니다. 그러나 이것이 작동하지 않는다면, 그 이유는 텍스트가 이미지 안에 '갇혀' 있기 때문일 수 있습니다. 일반 텍스트 대신 시각적 텍스트를 위해 문서를 스캔하려면 IronOCR 라이브러리를 사용하세요.
2.1.6. 헤더와 바닥글
PDF를 생성하거나 기존 PDF에 추가할 때 머리글과 바닥글을 포함할 수 있습니다. Print Options 속성을 사용하여 각 문서 페이지에 대한 머리글과 바닥글을 만들 수 있습니다. 이 매개변수는 Chrome PDF Renderer 객체에서 사용할 수 있습니다. 이 예제는 .NET Core 콘솔 애플리케이션에서 실행됩니다.
2.1.7. 호환성
IronPDF는 C#과 호환되는 거의 모든 운영 체제 및 프레임워크를 지원합니다, 예를 들어:
- Windows, Azure
- .NET Core 2.1, 3.0, 3.1, .NET 5
- 보편적 호환성 for .NET Standard 2.0 준수
- Azure
- AWS
- Docker
- Linux
3. PSPDFKit
PSPDFKit Library for .NET은 PDF 편집, 양식 작성, 수정 및 생성에 대한 소프트웨어 개발 키트(SDK)입니다. 이 SDK는 .NET 애플리케이션에 PDF 기능을 빠르게 추가할 수 있는 강력한 API를 제공합니다.
PSPDFKit는 앱이나 웹사이트에 PDF 호환성을 추가하기 위한 가장 인기 있는 크로스 플랫폼 도구 중 하나입니다. 제품 사용을 위해서는 PSPDFKit SDK가 상업적 라이선스를 필요로 합니다. PSPDFKit API의 주요 이점 중 하나는 PDF 제작 워크플로우에 다양한 문서 조작 방법을 통합할 수 있다는 점입니다. 예로는:
- PDF 편집
- OCR
- 워터마크
- 문서 변환
3.1. PSPDFKit 기능
PSPDFKit는 가장 인기 있는 주석 도구들을 지원합니다:
- 텍스트
- 잉크
- 타원, 폴리라인, 폴리곤, 직사각형, 선
- 메모
- 링크
- 강조, 밑줄, 스트라이크아웃, 물결, 수정
3.1.1. .NET의 XFDF 파일
읽기 및 작성 모두 PSPDFKit .NET 라이브러리에서 XFDF 파일을 지원합니다. ImportXfdf 및 ExportXfdf 메서드를 사용하여 이러한 작업을 수행할 수 있습니다.
3.1.2. PDF 페이지 렌더링
PSPDFKit .NET 라이브러리는 PDF를 쉽게 이미지로 변환할 수 있게 합니다. 호환성과 효율성을 보장하기 위해 PSPDFKit는 기본 .NET Standard 기능을 사용합니다.
3.1.3. PDF 병합
문서 편집기를 사용하여 여러 문서를 단일 통합 문서로 결합할 수 있습니다.
3.1.4. PDF 검열
GDPR 및 기타 개인정보 보호 규정을 준수하여 PDF 문서에서 개인 정보를 영구적으로 삭제하여 민감한, 비공개 또는 특권이 있는 정보를 제거합니다.
3.1.5. 즉시 JSON
주석과 북마크는 Instant JSON을 사용하여 별도의 JSON 파일에 저장됩니다. 이는 PDF 파일을 한 번만 전송하고 모든 수정이 원본 PDF에 오버레이로 추가되는 것을 의미합니다.
4. Visual Studio에서 새 프로젝트 생성하기
이 기사에서는 새 콘솔 응용 프로그램을 사용하여 PDF 문서를 생성할 것입니다.
Visual Studio 소프트웨어를 열고 파일 메뉴로 이동합니다. "새 프로젝트"를 선택한 후 콘솔 애플리케이션을 선택합니다.
프로젝트 이름을 입력하고 적절한 텍스트 상자에서 경로를 선택합니다. 그런 다음 만들기 버튼을 클릭합니다. 아래 스크린샷과 같이 필요한 .NET Framework를 선택합니다:
이제 Visual Studio 프로젝트가 선택한 응용 프로그램 구조를 생성할 것입니다.
다음 섹션에서는 IronPDF와 PSPDFKit 라이브러리를 프로젝트에 추가할 것입니다.
5. IronPDF 라이브러리 설치
IronPDF 라이브러리는 네 가지 다른 방법으로 다운로드 및 설치할 수 있습니다. 다음과 같습니다:
- Visual Studio NuGet 패키지 관리자 사용
- Visual Studio 명령줄 사용하기
- NuGet 갤러리에서 직접 다운로드
- IronPDF 공식 웹사이트에서 직접 다운로드
5.1 Visual Studio NuGet 패키지 관리자 사용
Visual Studio 소프트웨어는 솔루션에 패키지를 직접 설치하기 위한 NuGet 패키지 관리자 옵션을 제공합니다. 아래 스크린샷은 NuGet 패키지 관리자를 여는 방법을 보여줍니다.
패키지 관리자 GUI가 열리면 아래 스크린샷처럼 탐색 섹션에서 'IronPDF'라는 키워드를 검색하세요:
검색 결과에서 IronPDF 옵션을 선택하고 패키지를 설치해야 합니다.
5.2 Visual Studio 명령줄 사용
- Visual Studio 메뉴에서, 도구 > NuGet 패키지 관리자 > 패키지 관리자 콘솔로 이동합니다.
- 패키지 관리자 콘솔 탭에 다음 줄을 입력하십시오:
Install-Package IronPdf
IronPDF 패키지가 현재 프로젝트에 설치될 것입니다.
5.3 NuGet 갤러리에서 직접 다운로드
세 번째 방법은 IronPDF NuGet 갤러리 웹 페이지에서 NuGet 패키지를 직접 다운로드하는 것입니다.
- 오른쪽 메뉴에서 다운로드 패키지 옵션을 선택합니다.
- 다운로드된 패키지를 더블 클릭합니다; 자동으로 설치될 것입니다.
- 그런 다음, 솔루션을 다시 로드하고 프로젝트에서 사용을 시작하십시오.
5.4 IronPDF 공식 웹사이트에서 직접 다운로드
IronPDF 다운로드 페이지를 방문하여 최신 패키지를 웹사이트에서 직접 다운로드하세요. 다운로드 후 아래의 단계를 따라 프로젝트에 패키지를 추가하세요.
- 솔루션 창에서 프로젝트를 마우스 오른쪽 버튼으로 클릭합니다.
- 그런 다음 '참조 추가'를 선택하고 다운로드한 참조 위치를 탐색합니다.
- 다음, 확인을 클릭하여 참조를 추가합니다.
6. PSPDFKit 라이브러리 설치
PSPDFKit 라이브러리를 얻고 설치하는 네 가지 방법이 있습니다. 다음과 같습니다:
- Visual Studio NuGet 패키지 관리자 사용
- Visual Studio 명령줄 사용
- NuGet 갤러리에서 직접 다운로드
- VSIX 확장 사용
6.1 Visual Studio NuGet 패키지 관리자 사용
개발자는 NuGet 패키지 관리자를 사용하여 쉽게 PSPDFKit를 통합할 수 있습니다. 그 방법의 예는 아래와 같습니다.
도구에서 NuGet 패키지 관리자를 클릭하면 검색 창이 있는 새 창이 나타납니다. PSPDFKit를 검색하세요. 목록이 나타납니다.
위 이미지에서 검색과 관련된 패키지 목록을 볼 수 있습니다. 다음으로 원하는 PSPDFKit 옵션을 선택하고 패키지를 설치하세요.
6.2 Visual Studio 명령줄 사용
- Visual Studio 메뉴에서, 도구 > NuGet 패키지 관리자 > 패키지 관리자 콘솔로 이동합니다.
- 패키지 관리자 콘솔 탭에 다음 줄을 입력하십시오:
Install-Package PSPDFKit.NET -Version 1.4.1
패키지가 지금 현재 프로젝트에 설치될 것입니다.
6.3 NuGet 갤러리에서 직접 다운로드
세 번째 방법은 PSPDFKit의 NuGet 갤러리 페이지에서 NuGet 패키지를 직접 다운로드하는 것입니다.
- 오른쪽 메뉴에서 패키지를 다운로드할 옵션을 선택합니다.
- 설치 프로세스를 시작하려면 다운로드된 패키지를 두 번 클릭하세요.
- 솔루션을 다시 로드하고 프로젝트에서 사용하세요.
6.4 VSIX 확장 사용
NuGet을 사용하여 패키지를 로컬로 다운로드하는 대신, 특정 위치에서 패키지를 참조하는 구성 파일을 사용할 수 있습니다. 이는 네트워크에서 자원을 공유하는 기계가 있는 경우에 유용합니다.
- PSPDFKit 다운로드 페이지에서 VSIX 확장을 다운로드하고 zip 파일을 추출합니다.
그런 다음 .NET 애플리케이션과 동일한 디렉토리에
nuget.config파일을 만듭니다. - 파일은 이 XML 코드를 포함해야 합니다.
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<add key="PSPDFKitSource" value="path\to\directoryContainingNupkg" />
</packageSources>
</configuration>
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<add key="PSPDFKitSource" value="path\to\directoryContainingNupkg" />
</packageSources>
</configuration>
- 그런 다음 Visual Studio를 열고 참조 탭 아래에 있는 다음 패키지를 구성하세요.
7. PDF 병합
PDF 파일에 몇 가지 필수 문서를 첨부해야 할 필요가 있을 수 있습니다. 이 주제에서는 두 개 이상의 PDF를 .NET 플랫폼을 사용하여 병합하는 방법을 논의할 것입니다.
7.1. IronPDF를 사용한 PDF 병합
IronPDF의 IronPdf.PdfDocument.Merge 클래스는 간단하고 이해하기 쉬운 코드를 사용하여 C#.NET에서 두 개 이상의 PDF 문서를 쉽게 결합할 수 있도록 합니다.
using IronPdf;
// Example HTML content for PDF_A
var html_a = @"<p> [PDF_A] </p>
<p> [PDF_A] 1st Page </p>
<div style='page-break-after: always;'></div>
<p> [PDF_A] 2nd Page</p>";
// Example HTML content for PDF_B
var html_b = @"<p> [PDF_B] </p>
<p> [PDF_B] 1st Page </p>
<div style='page-break-after: always;'></div>
<p> [PDF_B] 2nd Page</p>";
// Initialize renderer
var Renderer = new IronPdf.ChromePdfRenderer();
// Render HTML to PDFs
using var pdfdoc_a = Renderer.RenderHtmlAsPdf(html_a);
using var pdfdoc_b = Renderer.RenderHtmlAsPdf(html_b);
// Merge PDFs
using var merged = IronPdf.PdfDocument.Merge(pdfdoc_a, pdfdoc_b);
// Save merged PDF to file
merged.SaveAs("Merged.pdf");
using IronPdf;
// Example HTML content for PDF_A
var html_a = @"<p> [PDF_A] </p>
<p> [PDF_A] 1st Page </p>
<div style='page-break-after: always;'></div>
<p> [PDF_A] 2nd Page</p>";
// Example HTML content for PDF_B
var html_b = @"<p> [PDF_B] </p>
<p> [PDF_B] 1st Page </p>
<div style='page-break-after: always;'></div>
<p> [PDF_B] 2nd Page</p>";
// Initialize renderer
var Renderer = new IronPdf.ChromePdfRenderer();
// Render HTML to PDFs
using var pdfdoc_a = Renderer.RenderHtmlAsPdf(html_a);
using var pdfdoc_b = Renderer.RenderHtmlAsPdf(html_b);
// Merge PDFs
using var merged = IronPdf.PdfDocument.Merge(pdfdoc_a, pdfdoc_b);
// Save merged PDF to file
merged.SaveAs("Merged.pdf");
Imports IronPdf
' Example HTML content for PDF_A
Private html_a = "<p> [PDF_A] </p>
<p> [PDF_A] 1st Page </p>
<div style='page-break-after: always;'></div>
<p> [PDF_A] 2nd Page</p>"
' Example HTML content for PDF_B
Private html_b = "<p> [PDF_B] </p>
<p> [PDF_B] 1st Page </p>
<div style='page-break-after: always;'></div>
<p> [PDF_B] 2nd Page</p>"
' Initialize renderer
Private Renderer = New IronPdf.ChromePdfRenderer()
' Render HTML to PDFs
Private pdfdoc_a = Renderer.RenderHtmlAsPdf(html_a)
Private pdfdoc_b = Renderer.RenderHtmlAsPdf(html_b)
' Merge PDFs
Private merged = IronPdf.PdfDocument.Merge(pdfdoc_a, pdfdoc_b)
' Save merged PDF to file
merged.SaveAs("Merged.pdf")
7.2. PSPDFKit GMBH를 사용한 PDF 병합
첨부된 코드는 두 개 이상의 PDF를 병합하기 위해 PSPDFKit 문서 편집기를 사용하는 방법을 보여줍니다.
using PSPDFKit;
using PSPDFKit.Providers;
namespace PdfEditing
{
public sealed class Program
{
public static void Main(string[] args)
{
var documentEditor = new DocumentEditor();
// Import the first document to merge
documentEditor.ImportDocument(0, DocumentEditor.IndexPosition.BeforeIndex, new FileDataProvider("Assets/dog.pdf"));
// Import the second document to merge
documentEditor.ImportDocument(0, DocumentEditor.IndexPosition.BeforeIndex, new FileDataProvider("Assets/cat.pdf"));
// Save the merged document to a new file
documentEditor.SaveDocument(new FileDataProvider("dogCatPair.pdf"));
}
}
}
using PSPDFKit;
using PSPDFKit.Providers;
namespace PdfEditing
{
public sealed class Program
{
public static void Main(string[] args)
{
var documentEditor = new DocumentEditor();
// Import the first document to merge
documentEditor.ImportDocument(0, DocumentEditor.IndexPosition.BeforeIndex, new FileDataProvider("Assets/dog.pdf"));
// Import the second document to merge
documentEditor.ImportDocument(0, DocumentEditor.IndexPosition.BeforeIndex, new FileDataProvider("Assets/cat.pdf"));
// Save the merged document to a new file
documentEditor.SaveDocument(new FileDataProvider("dogCatPair.pdf"));
}
}
}
Imports PSPDFKit
Imports PSPDFKit.Providers
Namespace PdfEditing
Public NotInheritable Class Program
Public Shared Sub Main(ByVal args() As String)
Dim documentEditor As New DocumentEditor()
' Import the first document to merge
documentEditor.ImportDocument(0, DocumentEditor.IndexPosition.BeforeIndex, New FileDataProvider("Assets/dog.pdf"))
' Import the second document to merge
documentEditor.ImportDocument(0, DocumentEditor.IndexPosition.BeforeIndex, New FileDataProvider("Assets/cat.pdf"))
' Save the merged document to a new file
documentEditor.SaveDocument(New FileDataProvider("dogCatPair.pdf"))
End Sub
End Class
End Namespace
8. 주석
주석은 특정 영역을 설명하거나 비판하기 위해 텍스트에 추가되는 의견 또는 비고입니다. 이 주제에서는 .NET을 사용하여 PDF에 주석을 추가하는 방법을 논의할 것입니다.
8.1. IronPDF를 사용한 주석
PDF 주석을 통해 PDF 문서에 '포스트잇' 스타일의 의견을 추가할 수 있습니다. IronPdf.PdfDocument.AddTextAnnotation 메서드와 PdfDocument.TextAnnotation 클래스는 프로그래밍 방식으로 주석을 추가할 수 있도록 합니다. 색상, 크기, 불투명도, 아이콘 및 편집은 제공되는 고급 텍스트 주석 옵션 중 일부입니다.
// Install-Package IronPdf
using IronPdf;
var pdf = PdfDocument.FromFile("existing.pdf");
var annotation = new IronPdf.Annotations.TextAnnotation()
{
Title = "This is the major title",
Subject = "This is a subtitle",
Contents = "This is the long 'sticky note' comment content...",
Icon = IronPdf.Annotations.TextAnnotation.AnnotationIcon.Help,
Opacity = 0.9,
Printable = false,
Hidden = false,
OpenByDefault = true,
ReadOnly = false,
Rotateable = true
};
// Add annotation to a specific page at given coordinates
pdf.AddTextAnnotation(annotation, pageIndex: 1, xPosition: 150, yPosition: 250);
// Save the updated PDF
pdf.SaveAs("updated_existing.pdf");
// Install-Package IronPdf
using IronPdf;
var pdf = PdfDocument.FromFile("existing.pdf");
var annotation = new IronPdf.Annotations.TextAnnotation()
{
Title = "This is the major title",
Subject = "This is a subtitle",
Contents = "This is the long 'sticky note' comment content...",
Icon = IronPdf.Annotations.TextAnnotation.AnnotationIcon.Help,
Opacity = 0.9,
Printable = false,
Hidden = false,
OpenByDefault = true,
ReadOnly = false,
Rotateable = true
};
// Add annotation to a specific page at given coordinates
pdf.AddTextAnnotation(annotation, pageIndex: 1, xPosition: 150, yPosition: 250);
// Save the updated PDF
pdf.SaveAs("updated_existing.pdf");
' Install-Package IronPdf
Imports IronPdf
Private pdf = PdfDocument.FromFile("existing.pdf")
Private annotation = New IronPdf.Annotations.TextAnnotation() With {
.Title = "This is the major title",
.Subject = "This is a subtitle",
.Contents = "This is the long 'sticky note' comment content...",
.Icon = IronPdf.Annotations.TextAnnotation.AnnotationIcon.Help,
.Opacity = 0.9,
.Printable = False,
.Hidden = False,
.OpenByDefault = True,
.ReadOnly = False,
.Rotateable = True
}
' Add annotation to a specific page at given coordinates
pdf.AddTextAnnotation(annotation, pageIndex:= 1, xPosition:= 150, yPosition:= 250)
' Save the updated PDF
pdf.SaveAs("updated_existing.pdf")
8.2. PSPDFKit을 사용한 주석
PDF 주석을 설명하기 위해 PSPDFKit for .NET은 JSON 기반 API를 제공합니다. 이를 통해 코드 내에서 수제 주석을 가지거나 필요에 따라 가져오는 JSON 파일을 통해 주석을 처리할 수 있는 많은 자유를 제공합니다.
using Newtonsoft.Json.Linq;
using PSPDFKit;
using PSPDFKit.Providers;
namespace Annotations
{
public sealed class Program
{
public static void Main(string[] args)
{
var provider = new FileDataProvider("document.pdf");
var document = new Document(provider);
var annotationProvider = document.GetAnnotationProvider();
// JSON structure for a text annotation
var textAnJson = new JObject
{
{ "text", "Hello from PSPDFKit" },
{ "bbox", new JArray(10, 10, 400, 400) },
{ "creatorName", "Will" },
{ "type", "pspdfkit/text" },
{ "updatedAt", "2021-01-01T00:00:00Z" },
{ "v", 1 }
};
// Add the annotation to the document
annotationProvider.AddAnnotationJson(textAnJson);
// Save the updated document
document.Save(new DocumentSaveOptions());
}
}
}
using Newtonsoft.Json.Linq;
using PSPDFKit;
using PSPDFKit.Providers;
namespace Annotations
{
public sealed class Program
{
public static void Main(string[] args)
{
var provider = new FileDataProvider("document.pdf");
var document = new Document(provider);
var annotationProvider = document.GetAnnotationProvider();
// JSON structure for a text annotation
var textAnJson = new JObject
{
{ "text", "Hello from PSPDFKit" },
{ "bbox", new JArray(10, 10, 400, 400) },
{ "creatorName", "Will" },
{ "type", "pspdfkit/text" },
{ "updatedAt", "2021-01-01T00:00:00Z" },
{ "v", 1 }
};
// Add the annotation to the document
annotationProvider.AddAnnotationJson(textAnJson);
// Save the updated document
document.Save(new DocumentSaveOptions());
}
}
}
Imports Newtonsoft.Json.Linq
Imports PSPDFKit
Imports PSPDFKit.Providers
Namespace Annotations
Public NotInheritable Class Program
Public Shared Sub Main(ByVal args() As String)
Dim provider = New FileDataProvider("document.pdf")
Dim document As New Document(provider)
Dim annotationProvider = document.GetAnnotationProvider()
' JSON structure for a text annotation
Dim textAnJson = New JObject From {
{ "text", "Hello from PSPDFKit" },
{ "bbox", New JArray(10, 10, 400, 400) },
{ "creatorName", "Will" },
{ "type", "pspdfkit/text" },
{ "updatedAt", "2021-01-01T00:00:00Z" },
{ "v", 1 }
}
' Add the annotation to the document
annotationProvider.AddAnnotationJson(textAnJson)
' Save the updated document
document.Save(New DocumentSaveOptions())
End Sub
End Class
End Namespace
부트스트랩 및 최신 CSS 프레임워크 지원
부트스트랩 및 최신 CSS 프레임워크를 사용하는 웹 애플리케이션에서 PDF를 생성할 때 디자인 일관성을 유지하기 위해 전체 프레임워크 지원이 필수적이며, 별도의 'PDF 안전' 레이아웃을 생성할 필요가 없습니다.
IronPDF: 완전한 부트스트랩 프레임워크 지원
IronPDF의 Chromium 기반 렌더링 엔진은 다음을 완벽하게 지원합니다:
- 부트스트랩 5: 완전한 플렉스박스 레이아웃, CSS 그리드, 유틸리티 클래스 및 모든 컴포넌트
- Bootstrap 4: 완전한 카드 시스템, 내비게이션, 플렉스 유틸리티, 반응형 디자인
- Tailwind CSS: 모든 유틸리티 클래스가 정확히 렌더링됩니다
- 파운데이션: 완벽한 그리드 시스템 및 구성 요소 라이브러리
- 현대 CSS3: 플렉스박스, CSS 그리드, 사용자 정의 속성, 애니메이션
실제 검증: IronPDF는 부트스트랩 홈페이지와 모든 공식 예제를 픽셀 단위로 정확하게 렌더링합니다.
PSPDFKit: HTML을 PDF로 변환하지 않음
PSPDFKit은 HTML을 PDF로 변환하는 것이 아닌 PDF 보기, 주석, 조작에 초점을 맞춥니다:
- HTML 렌더링 엔진 없음: PSPDFKit은 HTML을 PDF로 변환하지 않습니다
- 뷰어 중심: PDF 디스플레이 및 상호작용을 위한 설계, 생성이 아님
- 외부 변환 필요: HTML을 PDF로 변환하려면 별도의 도구가 필요
- JavaScript SDK: 클라이언트 측 PDF 뷰어, 서버 측 생성 라이브러리가 아님
개발 영향: HTML을 PDF로 변환해야 하는 팀은 PSPDFKit과 함께 추가 도구를 통합해야 하며, 이는 복잡성과 유지 관리 요구 사항을 증가시킵니다.
포괄적인 부트스트랩 프레임워크 가이드와 최신 CSS 렌더링 기능은 부트스트랩 및 Flexbox CSS 가이드를 참조하세요.
9. 라이센스
IronPDF는 무료 개발자 라이선스를 제공합니다. IronPDF는 또한 독특한 가격 체계를 제공하며, 기본 번들은 별도의 비용 없이 특정 가격으로 시작됩니다. SaaS 및 OEM 제품을 재배포하는 것도 가능합니다. 모든 라이선스(일회성 구매)에는 30일 환불 보증, 1년 소프트웨어 지원 및 업그레이드, 개발/스테이징/프로덕션 유효성, 영구 라이선스가 포함됩니다. IronPDF 라이선스 세부 정보를 알아보고 IronPDF의 사용 가능한 라이선스와 가격 구조를 탐색하십시오.
PSPDFKit은 생산성 워크플로우를 위해 개발한 다섯 가지 유형의 라이선스를 제공합니다. 매월 최대 100개의 문서에 대해 무료 라이선스가 있으며; 그 이상의 경우, 다음 패키지 중 하나를 구입해야 합니다:
- 시작자 패키지 (매월 1000개의 문서까지, 월 $75 또는 연간 $804)
- 성장 패키지 (매월 5000개의 문서까지, 월 $275 또는 연간 $2964)
- 프로 패키지 (매월 10000개의 문서까지, 월 $445 또는 연간 $4788)
- 기업 패키지 (매월 10,000개 이상의 문서, 가격 문의는 회사에 문의하세요)
이 PSPDFKit 가격 페이지는 PSPDFKit의 전체 가격 구조를 자세히 설명합니다.
10. 결론
IronPDF는 원격 서버에서 HTML을 PDF로 변환하지 않습니다. 대신에, 현실적인 표준 준수 브라우저 인스턴스를 백그라운드에서 시작합니다 (추가 소프트웨어를 설치할 필요가 없습니다). HTML은 상업적 인쇄에 적합한 벡터 포맷으로 렌더링됩니다. 그 결과, 명확하고 고품질의 PDF를 얻을 수 있습니다. IronPDF 웹사이트는 라이선스 및 가격에 대한 정보를 제공합니다.
PSPDFKit은 PC, Mac, Android 앱, iOS를 포함한 모든 플랫폼을 지원하는 완전 기능의 PDF SDK입니다. PDF 파일의 전환, 주석 달기, 서명하기, 채우기, 변환, 편집을 지원합니다. PSPDFKit은 앱 또는 웹사이트에 PDF 지원을 통합하는 가장 널리 사용되는 크로스 플랫폼 솔루션입니다.
IronPDF와 PSPDFKit 모두 프로덕션 사용을 위해 상업적 라이센스가 필요합니다. IronPDF는 평생 라이센스를 제공하는 반면, PSPDFKit은 월간 및 연간 패키지를 제공합니다. IronPDF 라이센스는 개발자 중심입니다. 그 가격 모델은 제품을 사용하는 개발자의 수와 그들의 작업 위치를 기반으로 구조화되어 있습니다. PSPDFKit 라이센스는 문서 중심이며, 매월 처리되는 PDF 문서 수를 기반으로 구조화되어 있습니다. 비용 측면에서, PSPDFKit을 사용하면 반복 발생하는 비용이 발생합니다. 반면에, IronPDF는 반복 발생하는 비용이 없는 평생 라이센스를 제공합니다.
IronPDF와 PSPDFKit 둘 다 유사한 기술을 기반으로 하고 있으며, 동일한 기본적인 PDF 처리 기능을 제공하는 업계 선도적인 프레임워크입니다. IronPDF를 사용하여 작성된 코드는 더 간결하고 compact합니다. PSPDFKit로 작성된 코드는 이해하기는 같지만 구조상 약간 더 복잡합니다.
Iron Software는 두 가지 가격으로 다섯 가지 도구를 묶어서 제공합니다. 제공되는 도구는 다음과 같습니다:
IronBarcode IronXL IronOCR IronPDF IronWebscraper
묶음 도구에 대해 더 알아보려면 Iron Suite의 공식 페이지를 방문하십시오.
자주 묻는 질문
C#에서 HTML을 PDF로 변환하는 방법은 무엇인가요?
IronPDF의 RenderHtmlAsPdf 메서드를 사용하여 HTML 문자열을 PDF로 변환할 수 있습니다. 또한 RenderHtmlFileAsPdf 사용하여 HTML 파일을 PDF로 변환할 수도 있습니다.
IronPDF의 주요 기능은 무엇인가요?
IronPDF는 PDF 이미징, 암호화, 변환, 편집, 그리고 Windows, Azure, Linux 등을 포함한 여러 플랫폼 호환성을 제공합니다. 또한 Visual Studio NuGet Package Manager를 통한 간단한 통합을 제공합니다.
PSPDFKit는 PDF 기능을 어떻게 지원하나요?
PSPDFKit는 편집, OCR, 워터마킹, 문서 변환을 포함한 방대한 PDF 기능을 지원합니다. 또한 풍부한 주석 기능과 효과적인 문서 병합 및 삭제 기능을 제공합니다.
.NET 프로젝트에 IronPDF를 어떻게 설치할 수 있습니까?
IronPDF는 Visual Studio NuGet Package Manager, Visual Studio 명령행, 또는 NuGet Gallery나 IronPDF의 공식 웹사이트에서 직접 다운로드하여 설치할 수 있습니다.
IronPDF의 라이선스 옵션은 무엇인가요?
IronPDF는 반복 비용이 없는 라이프타임 라이선스를 제공합니다. 무료 개발자 라이선스와 30일 환불 보장, 소프트웨어 지원 및 1년간 업데이트를 포함한 독특한 가격 구조가 포함되어 있습니다.
IronPDF와 PSPDFKit의 가격 차이는 무엇인가요?
IronPDF는 반복 비용이 없는 라이프타임 라이선스를 제공하는 반면, PSPDFKit는 반복 비용이 있는 월간 및 연간 패키지를 제공합니다. IronPDF는 사용자 수 및 위치에 기반한 개발자 중심의 라이선싱을 제공하며, PSPDFKit의 라이선싱은 월간 문서 처리량에 기반한 문서 중심의 라이선싱을 제공합니다.
Iron Software 번들에는 어떤 추가 도구들이 제공되나요?
Iron Software는 IronBarcode, IronXL, IronOCR, IronPDF, IronWebscraper를 포함한 다섯 개의 도구 번들을 제공합니다. 이 도구들은 .NET 응용 프로그램을 위한 포괄적인 개발 솔루션을 제공합니다.



