비교

C#의 무료 PDF 라이브러리의 숨겨진 비용

대개 Syncfusion Document SDK와Iron Suite사이에서 선택할 때는 하나의 임계 질문에 달려 있습니다: 구매자가 Syncfusion의 커뮤니티 라이선스 자격을 갖추고 있는지 여부. 회사가 수익이 $1M 미만이며 개발자가 5명 이하이고 직원이 10명 이하일 경우, Document SDK는 전체 상업적 사용에 대해 $0에 발송되며, 이에 대한 Iron의 등가품은 없습니다. 이 범위를 초과하면 조달 이야기가 바뀝니다: Syncfusion의 유료 Document SDK는 개발자당 연간 구독에 대한 견적 전용이며, Iron Suite는 $2,998부터 라이선스 좌석에 로열티가 없는 10개Iron Software제품의 고정 영구 개발자당 번들로 판매되고, SaaS 및 OEM 재배포는 단일 Redistribution Add-On으로 커버됩니다.

이 비교는 구매가 주도하는 결정에서 실제로 무엇에 영향을 미치는지에 중점을 두고 있습니다: 커뮤니티 라이선스 자격이 적용되는지 여부, 각각의 꾸러미가 이러한 제한을 초과한 후 어떻게 가격이 책정되는지, 그리고 실제로 무엇이 포함되어 있는지에 따라 결정됩니다. 능력 상세 정보 및 코드는 이를 배포할 엔지니어들을 위해 아래에 따라옵니다.

간단한 비교

차원Syncfusion Document SDKIron Suite
가격 위치견적 전용; Document SDK 및 UI Suite 모두 공개 가격 페이지에서 "맞춤형 견적 받기"로 이동합니다; 커뮤니티 라이선스 무료Lite $2,998 / Plus $4,498 / Professional $8,998 / Unlimited $17,998 (Enterprise custom); 2개의 가격으로 10개의 모든 제품 제공
라이선스 모델연간 개발자당 구독(초기/성장/사업 팀 계층); 로열티 무료 배포; $1M 미만의 매출, ≤5명의 개발자, ≤10명의 직원에 대한 커뮤니티 라이선스 무료영구 개발자당; 라이센스 좌석에 대해 로열티가 없음; 재배포 추가 기능을 통한 SaaS/OEM
번들 내 구성 요소4가지 헤드라인 라이브러리(PDF, DocIO, XlsIO, Presentation); OCR/바코드/압축은 인접한 Essential Studio 플랫폼에 위치10 products (IronPDF, IronWord, IronXL, IronPPT, IronOCR, IronBarcode, IronQR, IronPrint, IronZIP, IronWebScraper)
형식/기능 범위PDF, Word, Excel, PowerPoint 헤드라인; OCR/바코드/HTML/Visio는 Essential Studio를 통해 제공PDF, Office, OCR, Barcode/QR, ZIP, Print, 웹 스크래핑
크로스 플랫폼 / 클라우드Windows, Linux, macOS, Azure, AWS윈도우, 리눅스, macOS, Docker, Azure, AWS Lambda
.NET 런타임 지원.NET Standard 2.0, .NET 8, .NET 9, .NET 10.NET Framework 4.6.2+, .NET Core, .NET 6/7/8/9/10
타겟 시장SMB에서 Enterprise까지; 커뮤니티 라이선스 신청 자격이 있는 팀과 기존 Syncfusion UI 고객에게 강한독립 개발자, SMB, 중간 시장 .NET 팀, ISV
공급업체Syncfusion, Inc.Iron Software

$1M 미만의 수익을 올리는 스타트업이나 커뮤니티 라이선스(개발자 5명 이하, 직원 10명 이하) 자격을 갖춘 인디 개발자를 위해, 상업적 사용 전체에 대해 진정한 $0인 Syncfusion Document SDK는 비견할 수 없는 온램프입니다. 이러한 상한을 초과하는 .NET 팀이나 갱신되는 구독보다 영구 소유권을 선호하는 팀에게는 $2,998에서 Iron Suite의 10개 제품 번들이 견적 전용의 영업 활동 없이 피상적으로 커버됩니다.

가격 및 라이선스

Syncfusion Document SDK는 3개의 팀 라이선스 계층(시작 <25명의 개발자, 성장 25–100명의 개발자, 사업 >100명의 개발자), 1년 최소 기간으로 연간 개발자당 구독 모델로 운영되며, 계약 기간 동안 업데이트 및 지원을 포함합니다. 배포는 로열티가 없습니다. 커뮤니티 라이선스는 주요 구별 요소입니다: 연간 매출이 $1M 미만, 다섯 명 이하의 개발자, 열 사람 이하의 직원(VC 지원의 경우 $3M 자금 한도)을 가진 회사에 대해 무료 상업 사용을 제공합니다. 유료 가격은 Syncfusion의 공개 페이지에서 견적 전용입니다. Document SDK와 UI Suite 모두 "맞춤형 견적 받기"로 라우팅됩니다.

Iron Suite는 단일 영구 개발자당 네 가지 라이선스 수준(Lite, Plus, Professional, Unlimited, Enterprise)으로 $2,998부터 판매되며, 2개의 가격으로 모든 10개 제품을 제공하는 마케팅 포지셔닝을 가지고 있습니다; 75% 절약." 기본 라이센스는 라이센스된 좌석, 위치 또는 프로젝트에 대해 로열티 프리이며, SaaS, OEM 또는 배포형 재배포는 개인적으로 가격이 매겨진 Redistribution Add-On을 사용합니다.

3–5년의 수평선을 넘어서, 커뮤니티 라이선스 자격이 있는 팀은 해당 기간 동안 $0를 지불하며, 자격이 유지되는 한 번들을 소유합니다. 한도를 초과한 팀은 Syncfusion의 견적 가격에 기반한 연간 구독 갱신 주기에 직면하게 됩니다. Iron Suite의 개발자당 영구 라이선스는 계층 가격에서 한 번에 구매됩니다; 구매한 버전은 영구적으로 소유하며, 갱신은 선택적이며, 계속 업데이트 및 지원에만 적용됩니다.

Syncfusion Document SDK란 무엇인가

Syncfusion Document SDK는 Syncfusion, Inc.에서 발행한 Syncfusion의 Essential Studio 플랫폼 내 문서 전용 SKU 입니다. Essential Studio의 UI 컨트롤(Rich Edit, Spreadsheet, PDF Viewer) 내에 배송되는 동일한 엔진이 무인 백엔드 라이브러리로 별도로 판매됩니다. Document SDK는 SMB부터 Enterprise에 이르는 .NET 팀을 목표로 하여 개발자 친화적인 크로스 플랫폼 문서 도구 키트를 찾고 있는 팀에게 제조된 방식입니다. 이는 풀 상업 사용을 $0로 제공하여 적격한 소규모 조직에게 이상적으로 유리한 커뮤니티 라이선스로 특히 매력적입니다. 최신 참조 버전은 33.2 볼륨 (Syncfusion.Pdf.Net.Core 33.2.7, 2026-05-19 출시)이며, 라이브러리들은 .NET Standard 2.0 및 .NET 8/9/10을 대상으로 합니다.

주요 번들 구성 요소 및 기능:

  • PDF 라이브러리: 생성, 편집, 서명, 양식 채우기, 압축, 병합, 분할
  • Word 라이브러리 (DocIO): 메일 머지, 찾기 및 바꾸기, 문서 병합을 포함한 DOCX 조작
  • Excel 라이브러리 (XlsIO): 80개 이상의 차트 유형, 공식, 조건부 서식, 피벗 테이블을 포함한 XLSX 엔진
  • PowerPoint 라이브러리 (Presentation): 슬라이드, 도형, 차트, 표, 애니메이션
  • 보다 넓은 Essential Studio 플랫폼의 인접 라이브러리: OCR, 바코드, 압축/ZIP, HTML 변환기, Visio
  • 커뮤니티 라이선스: <$1M 수익, ≤5명의 개발자, ≤10명의 직원이 있는 회사에 무료 제공

Iron Suite란

Iron Suite는 Iron Software의 10-제품 .NET 번들로, Office 스택은 프로그래매틱으로 DOCX, XLSX, PPTX를 포괄합니다: IronWord는 단락과 텍스트 실행 객체 그래프를, IronXL은 공식 재계산 및 차트와 피벗 테이블 지원을 제공하며, IronPPT는 슬라이드 생성 및 콘텐츠 추출을 제공합니다. IronPDF는 PDF 표면을 제공하며, 인식 스택(IronOCR, IronBarcode, IronQR)은 OCR 및 바코드 작업을 담당하고, IronPrint, IronZIP, IronWebScraper가 유틸리티 기능을 완성합니다. 구매한 버전을 유지하기 위해 연간 갱신이 필요하지 않은 다섯 가지 라이선스 수준에서 $2,998로 판매됩니다. 라이센스 좌석에 로열티가 없음. SaaS 및 OEM 재배포는 별도의 재배포 추가 기능을 사용합니다.

각각의 프로그래밍 Office 및 PDF 워크플로와의 관련성에 따라 그룹화된 10개 구성 요소:

  • Office 스택 (앵커): IronWord (텍스트 실행 객체 그래프가 OOXML에 직접 매핑되며, 사용자 정의 스타일, 글꼴, 머리글, 바닥글, 콘텐츠 추출을 포함한 DOCX); IronXL (공식 재계산, 차트, 피벗 테이블, 조건부 서식, 데이터 유효성 검사를 포함한 XLSX); IronPPT (PPTX 생성, 편집, 콘텐츠 추출).
  • PDF 생성 (IronPDF): HTML-에서-PDF 및 URL-에서-PDF 렌더링, 네이티브 병합 및 분할, PKCS#12 및 HSM 및 TSA 서명(전자 서명 eIDAS 및 ESIGN 기준에 맞춤), PDF/A에서 PDF/A-4까지, PDF/UA-1 및 PDF/UA-2, 암호화, AcroForm 채우기 및 평면화, 글꼴 관리, 래스터화, 압축 및 선형화.
  • 인식: IronOCR (Tesseract 5, 125개 이상의 언어, 약 90%의 영어); IronBarcode (30개 이상의 심볼로지, MAUI 스캐너); IronQR (ML 기반, 배치 ReadPdfs).
  • Utility: IronPrint, IronZIP, IronWebScraper.

기능 비교

PDF 생성

PDF 생성은 두 패키지에서 주력 작업의 하나입니다. Syncfusion은 PdfPage.Graphics 표면에서 원시 단위별로 PDF를 구축합니다; IronPDF는 동일한 콘텐츠를 실제 Chrome 엔진을 사용하여 HTML에서 렌더링합니다.

// Syncfusion PDF Library creates and edits PDFs with no external dependency.
// NuGet: Install-Package Syncfusion.Pdf.Net.Core
using Syncfusion.Pdf;
using Syncfusion.Pdf.Graphics;
using Syncfusion.Drawing;
using System.IO;

class Program
{
    static void Main()
    {
        // Syncfusion.Licensing.SyncfusionLicenseProvider.RegisterLicense("YOUR-KEY");
        using PdfDocument doc = new PdfDocument();
        PdfPage page = doc.Pages.Add();

        PdfFont title = new PdfStandardFont(PdfFontFamily.Helvetica, 20, PdfFontStyle.Bold);
        page.Graphics.DrawString("Statement of Account", title, PdfBrushes.Black, new PointF(40, 40));

        PdfFont body = new PdfStandardFont(PdfFontFamily.Helvetica, 11);
        page.Graphics.DrawString("Generated 2026-05-26", body, PdfBrushes.DarkSlateGray, new PointF(40, 80));

        using FileStream stream = new FileStream("statement.pdf", FileMode.Create);
        doc.Save(stream);
    }
}
// Syncfusion PDF Library creates and edits PDFs with no external dependency.
// NuGet: Install-Package Syncfusion.Pdf.Net.Core
using Syncfusion.Pdf;
using Syncfusion.Pdf.Graphics;
using Syncfusion.Drawing;
using System.IO;

class Program
{
    static void Main()
    {
        // Syncfusion.Licensing.SyncfusionLicenseProvider.RegisterLicense("YOUR-KEY");
        using PdfDocument doc = new PdfDocument();
        PdfPage page = doc.Pages.Add();

        PdfFont title = new PdfStandardFont(PdfFontFamily.Helvetica, 20, PdfFontStyle.Bold);
        page.Graphics.DrawString("Statement of Account", title, PdfBrushes.Black, new PointF(40, 40));

        PdfFont body = new PdfStandardFont(PdfFontFamily.Helvetica, 11);
        page.Graphics.DrawString("Generated 2026-05-26", body, PdfBrushes.DarkSlateGray, new PointF(40, 80));

        using FileStream stream = new FileStream("statement.pdf", FileMode.Create);
        doc.Save(stream);
    }
}
Imports Syncfusion.Pdf
Imports Syncfusion.Pdf.Graphics
Imports Syncfusion.Drawing
Imports System.IO

Module Program
    Sub Main()
        ' Syncfusion.Licensing.SyncfusionLicenseProvider.RegisterLicense("YOUR-KEY")
        Using doc As New PdfDocument()
            Dim page As PdfPage = doc.Pages.Add()

            Dim title As PdfFont = New PdfStandardFont(PdfFontFamily.Helvetica, 20, PdfFontStyle.Bold)
            page.Graphics.DrawString("Statement of Account", title, PdfBrushes.Black, New PointF(40, 40))

            Dim body As PdfFont = New PdfStandardFont(PdfFontFamily.Helvetica, 11)
            page.Graphics.DrawString("Generated 2026-05-26", body, PdfBrushes.DarkSlateGray, New PointF(40, 80))

            Using stream As New FileStream("statement.pdf", FileMode.Create)
                doc.Save(stream)
            End Using
        End Using
    End Sub
End Module
$vbLabelText   $csharpLabel
// NuGet: Install-Package IronPdf
using IronPdf;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        string html = @"<h1>Invoice 2026-0428</h1><p>Customer: Acme Corp</p><p>Total due: $1,240.00</p>";
        using var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("invoice.pdf");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        string html = @"<h1>Invoice 2026-0428</h1><p>Customer: Acme Corp</p><p>Total due: $1,240.00</p>";
        using var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("invoice.pdf");
    }
}
Imports IronPdf

Class Program
    Shared Sub Main()
        Dim renderer = New ChromePdfRenderer()
        Dim html As String = "<h1>Invoice 2026-0428</h1><p>Customer: Acme Corp</p><p>Total due: $1,240.00</p>"
        Using pdf = renderer.RenderHtmlAsPdf(html)
            pdf.SaveAs("invoice.pdf")
        End Using
    End Sub
End Class
$vbLabelText   $csharpLabel

Syncfusion의 API는 깊이 있는 PDF 기능 표면(디지털 서명, AcroForm 채우기, OCR 추가 PDF, PDF/A 및 PDF/UA 규정 준수)을 원시 수준에서 제공합니다. IronPDF는 페이지 캔버스 모델을 추상화하고 개발자가 웹 앱에서 사용된 동일한 HTML/CSS를 다시 사용할 수 있도록 합니다. 이는 웹 데이터를 근거로 한 PDF에 대한 코드 줄 수를 줄입니다. IronPDF는 PdfAVersions 열거형을 통해 전체 PDF/A 준수 패밀리(A-1a, A-1b, A-2a, A-2b, A-3a, A-3b, ISO 19005-4:2020에 따라 추가된 PDF/A-4/4E/4F 패밀리)를 지원하며, RenderHtmlAsPdfUAPdfDocument.SaveAsPdfUA를 통한 전용 PDF/UA 접근성 출력을 포함합니다 (PDF/UA-1 기본값, 파라미터를 통한 PDF/UA-2 제공); 섹션 508 및 WCAG 2.0 AA를 충족하도록 문서화되어 있습니다).

문서 처리 및 메일 병합

템플릿에 대한 메일 병합은 Syncfusion DocIO의 시그니처 작업의 하나입니다. IronWord는 현대적인 객체 그래프 API로 DOCX 생성 및 조작을 목적으로 합니다.

// Syncfusion DocIO performs Word read/write plus mail merge against a template.
// NuGet: Install-Package Syncfusion.DocIO.Net.Core
using Syncfusion.DocIO;
using Syncfusion.DocIO.DLS;
using System.IO;

class Program
{
    static void Main()
    {
        using WordDocument doc = new WordDocument("welcome-template.docx", FormatType.Docx);
        string[] fields = { "CustomerName", "OrderId", "Total" };
        string[] values = { "Acme Corp", "44213", "$1,498.00" };
        doc.MailMerge.Execute(fields, values);

        using FileStream output = new FileStream("welcome.docx", FileMode.Create);
        doc.Save(output, FormatType.Docx);
    }
}
// Syncfusion DocIO performs Word read/write plus mail merge against a template.
// NuGet: Install-Package Syncfusion.DocIO.Net.Core
using Syncfusion.DocIO;
using Syncfusion.DocIO.DLS;
using System.IO;

class Program
{
    static void Main()
    {
        using WordDocument doc = new WordDocument("welcome-template.docx", FormatType.Docx);
        string[] fields = { "CustomerName", "OrderId", "Total" };
        string[] values = { "Acme Corp", "44213", "$1,498.00" };
        doc.MailMerge.Execute(fields, values);

        using FileStream output = new FileStream("welcome.docx", FileMode.Create);
        doc.Save(output, FormatType.Docx);
    }
}
Imports Syncfusion.DocIO
Imports Syncfusion.DocIO.DLS
Imports System.IO

Module Program
    Sub Main()
        Using doc As New WordDocument("welcome-template.docx", FormatType.Docx)
            Dim fields As String() = {"CustomerName", "OrderId", "Total"}
            Dim values As String() = {"Acme Corp", "44213", "$1,498.00"}
            doc.MailMerge.Execute(fields, values)

            Using output As New FileStream("welcome.docx", FileMode.Create)
                doc.Save(output, FormatType.Docx)
            End Using
        End Using
    End Sub
End Module
$vbLabelText   $csharpLabel
// NuGet: Install-Package IronWord
using IronWord;
using IronWord.Models;

class Program
{
    static void Main()
    {
        var doc = new WordDocument();

        var heading = new Paragraph();
        heading.AddChild(new TextRun("Quarterly Report — Q1 2026") { FontSize = 18, Bold = true });
        doc.AddParagraph(heading);

        var body = new Paragraph();
        body.AddChild(new TextRun("Revenue grew 14% quarter-over-quarter."));
        doc.AddParagraph(body);

        doc.SaveAs("report.docx");
    }
}
// NuGet: Install-Package IronWord
using IronWord;
using IronWord.Models;

class Program
{
    static void Main()
    {
        var doc = new WordDocument();

        var heading = new Paragraph();
        heading.AddChild(new TextRun("Quarterly Report — Q1 2026") { FontSize = 18, Bold = true });
        doc.AddParagraph(heading);

        var body = new Paragraph();
        body.AddChild(new TextRun("Revenue grew 14% quarter-over-quarter."));
        doc.AddParagraph(body);

        doc.SaveAs("report.docx");
    }
}
Imports IronWord
Imports IronWord.Models

Module Program
    Sub Main()
        Dim doc As New WordDocument()

        Dim heading As New Paragraph()
        heading.AddChild(New TextRun("Quarterly Report — Q1 2026") With {.FontSize = 18, .Bold = True})
        doc.AddParagraph(heading)

        Dim body As New Paragraph()
        body.AddChild(New TextRun("Revenue grew 14% quarter-over-quarter."))
        doc.AddParagraph(body)

        doc.SaveAs("report.docx")
    End Sub
End Module
$vbLabelText   $csharpLabel

Syncfusion DocIO는 템플릿 DOCX에 대한 메일 병합을 이름이 지정된 필드 및 데이터 집합 기반 변형과 함께 주요 기능으로 제공됩니다. IronWord는 OOXML 모델에 더 가까운 단락/텍스트 실행 객체 그래프를 제공합니다. 이는 처음부터 DOCX를 생성하는 데 이상적입니다; IronWord의 템플릿에서 이메일 병합 워크플로우는 전용 MailMerge API보다는 주로 텍스트 실행에서 찾기 및 바꾸기 기능을 사용합니다.

엑셀 처리

두 스위트 모두 Excel 생성, 식 재계산 및 PDF 내보내기를 커버합니다. Syncfusion XlsIO는 시장에서 가장 깊은 .NET Excel 엔진 중 하나로 간주됩니다.

// Syncfusion XlsIO creates and recalculates XLSX workbooks server-side.
// NuGet: Install-Package Syncfusion.XlsIO.Net.Core
using Syncfusion.XlsIO;
using System.IO;

class Program
{
    static void Main()
    {
        using ExcelEngine engine = new ExcelEngine();
        IApplication app = engine.Excel;
        app.DefaultVersion = ExcelVersion.Xlsx;

        IWorkbook book = app.Workbooks.Create(1);
        IWorksheet sheet = book.Worksheets[0];

        sheet.Range["A1"].Text = "Item";
        sheet.Range["B1"].Text = "Qty";
        sheet.Range["B4"].Formula = "=SUM(B2:B3)";

        book.CalculateAllValue();

        using FileStream stream = new FileStream("inventory.xlsx", FileMode.Create);
        book.SaveAs(stream);
    }
}
// Syncfusion XlsIO creates and recalculates XLSX workbooks server-side.
// NuGet: Install-Package Syncfusion.XlsIO.Net.Core
using Syncfusion.XlsIO;
using System.IO;

class Program
{
    static void Main()
    {
        using ExcelEngine engine = new ExcelEngine();
        IApplication app = engine.Excel;
        app.DefaultVersion = ExcelVersion.Xlsx;

        IWorkbook book = app.Workbooks.Create(1);
        IWorksheet sheet = book.Worksheets[0];

        sheet.Range["A1"].Text = "Item";
        sheet.Range["B1"].Text = "Qty";
        sheet.Range["B4"].Formula = "=SUM(B2:B3)";

        book.CalculateAllValue();

        using FileStream stream = new FileStream("inventory.xlsx", FileMode.Create);
        book.SaveAs(stream);
    }
}
Imports Syncfusion.XlsIO
Imports System.IO

Module Program
    Sub Main()
        Using engine As New ExcelEngine()
            Dim app As IApplication = engine.Excel
            app.DefaultVersion = ExcelVersion.Xlsx

            Dim book As IWorkbook = app.Workbooks.Create(1)
            Dim sheet As IWorksheet = book.Worksheets(0)

            sheet.Range("A1").Text = "Item"
            sheet.Range("B1").Text = "Qty"
            sheet.Range("B4").Formula = "=SUM(B2:B3)"

            book.CalculateAllValue()

            Using stream As New FileStream("inventory.xlsx", FileMode.Create)
                book.SaveAs(stream)
            End Using
        End Using
    End Sub
End Module
$vbLabelText   $csharpLabel
// NuGet: Install-Package IronXL.Excel
using IronXL;

class Program
{
    static void Main()
    {
        WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
        WorkSheet sheet = workbook.CreateWorkSheet("Sales");

        sheet["A1"].Value = "Product";
        sheet["B1"].Value = "Units";
        sheet["A2"].Value = "Widget A";
        sheet["B2"].Value = 1024;
        sheet["A3"].Value = "Widget B";
        sheet["B3"].Value = 768;
        sheet["B4"].Formula = "=SUM(B2:B3)";

        workbook.EvaluateAll();
        workbook.SaveAs("sales.xlsx");
    }
}
// NuGet: Install-Package IronXL.Excel
using IronXL;

class Program
{
    static void Main()
    {
        WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
        WorkSheet sheet = workbook.CreateWorkSheet("Sales");

        sheet["A1"].Value = "Product";
        sheet["B1"].Value = "Units";
        sheet["A2"].Value = "Widget A";
        sheet["B2"].Value = 1024;
        sheet["A3"].Value = "Widget B";
        sheet["B3"].Value = 768;
        sheet["B4"].Formula = "=SUM(B2:B3)";

        workbook.EvaluateAll();
        workbook.SaveAs("sales.xlsx");
    }
}
Imports IronXL

Module Program
    Sub Main()
        Dim workbook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
        Dim sheet As WorkSheet = workbook.CreateWorkSheet("Sales")

        sheet("A1").Value = "Product"
        sheet("B1").Value = "Units"
        sheet("A2").Value = "Widget A"
        sheet("B2").Value = 1024
        sheet("A3").Value = "Widget B"
        sheet("B3").Value = 768
        sheet("B4").Formula = "=SUM(B2:B3)"

        workbook.EvaluateAll()
        workbook.SaveAs("sales.xlsx")
    End Sub
End Module
$vbLabelText   $csharpLabel

Syncfusion XlsIO는 더 깊은 Excel 표면, 80개 이상의 차트 유형, 전체 조건부 서식, 피벗 테이블 및 Excel과 가까운 계산 엔진을 포괄합니다. IronXL은 일상적인 읽기/쓰기/재계산 범위를 관례가 적은 인덱서 스타일 셀 API(sheet["B4"].Formula = …, workbook.EvaluateAll())로 다룹니다. Excel의 고급 표면(피벗 테이블, 복잡한 조건부 서식, 80개 이상의 차트 유형)을 기반으로 한 워크플로는 XlsIO가 깊이를 투자한 경우입니다 — 데이터베이스에서 XLSX로의 일상적인 데이터 흐름에서는 IronXL이 더 적은 줄로 목적지를 도달합니다.

PowerPoint 생성

PowerPoint 생성은 Syncfusion 문서 SDK와 함께 번들로 제공됩니다. Iron Suite에는 IronPPT for PowerPoint가 포함되어 있으며,Iron Suite참조 세트는 이를 깊은 편집 및 애니메이션 표면이 아닌 생성 라이브러리로 배치합니다.

// Syncfusion Presentation creates PPTX decks without PowerPoint installed.
// NuGet: Install-Package Syncfusion.Presentation.Net.Core
using Syncfusion.Presentation;
using System.IO;

class Program
{
    static void Main()
    {
        using IPresentation pres = Presentation.Create();
        ISlide slide = pres.Slides.Add(SlideLayoutType.TitleOnly);
        IShape title = slide.Shapes[0] as IShape;
        title.TextBody.AddParagraph("Quarterly Update");

        IShape body = slide.Shapes.AddTextBox(60, 180, 600, 80);
        body.TextBody.AddParagraph("Generated from .NET — no PowerPoint dependency.");

        using FileStream stream = new FileStream("update.pptx", FileMode.Create);
        pres.Save(stream);
    }
}
// Syncfusion Presentation creates PPTX decks without PowerPoint installed.
// NuGet: Install-Package Syncfusion.Presentation.Net.Core
using Syncfusion.Presentation;
using System.IO;

class Program
{
    static void Main()
    {
        using IPresentation pres = Presentation.Create();
        ISlide slide = pres.Slides.Add(SlideLayoutType.TitleOnly);
        IShape title = slide.Shapes[0] as IShape;
        title.TextBody.AddParagraph("Quarterly Update");

        IShape body = slide.Shapes.AddTextBox(60, 180, 600, 80);
        body.TextBody.AddParagraph("Generated from .NET — no PowerPoint dependency.");

        using FileStream stream = new FileStream("update.pptx", FileMode.Create);
        pres.Save(stream);
    }
}
Imports Syncfusion.Presentation
Imports System.IO

Module Program
    Sub Main()
        Using pres As IPresentation = Presentation.Create()
            Dim slide As ISlide = pres.Slides.Add(SlideLayoutType.TitleOnly)
            Dim title As IShape = TryCast(slide.Shapes(0), IShape)
            title.TextBody.AddParagraph("Quarterly Update")

            Dim body As IShape = slide.Shapes.AddTextBox(60, 180, 600, 80)
            body.TextBody.AddParagraph("Generated from .NET — no PowerPoint dependency.")

            Using stream As New FileStream("update.pptx", FileMode.Create)
                pres.Save(stream)
            End Using
        End Using
    End Sub
End Module
$vbLabelText   $csharpLabel
// NuGet: Install-Package IronPPT
// Docs: https://ironsoftware.com/csharp/ppt/docs/
using IronPPT;
using IronPPT.Models;

class Program
{
    static void Main()
    {
        // PresentationDocument is the entry point for PPTX creation in IronPPT.
        // No Microsoft PowerPoint or Office Interop required.
        PresentationDocument document = new PresentationDocument();

        Slide titleSlide = new Slide();
        titleSlide.AddText("Quarterly Update");
        document.AddSlide(titleSlide);

        Slide bodySlide = new Slide();
        bodySlide.AddText("Generated from .NET, no PowerPoint dependency.");
        document.AddSlide(bodySlide);

        document.Save("update.pptx");
    }
}
// NuGet: Install-Package IronPPT
// Docs: https://ironsoftware.com/csharp/ppt/docs/
using IronPPT;
using IronPPT.Models;

class Program
{
    static void Main()
    {
        // PresentationDocument is the entry point for PPTX creation in IronPPT.
        // No Microsoft PowerPoint or Office Interop required.
        PresentationDocument document = new PresentationDocument();

        Slide titleSlide = new Slide();
        titleSlide.AddText("Quarterly Update");
        document.AddSlide(titleSlide);

        Slide bodySlide = new Slide();
        bodySlide.AddText("Generated from .NET, no PowerPoint dependency.");
        document.AddSlide(bodySlide);

        document.Save("update.pptx");
    }
}
Imports IronPPT
Imports IronPPT.Models

Module Program
    Sub Main()
        ' PresentationDocument is the entry point for PPTX creation in IronPPT.
        ' No Microsoft PowerPoint or Office Interop required.
        Dim document As New PresentationDocument()

        Dim titleSlide As New Slide()
        titleSlide.AddText("Quarterly Update")
        document.AddSlide(titleSlide)

        Dim bodySlide As New Slide()
        bodySlide.AddText("Generated from .NET, no PowerPoint dependency.")
        document.AddSlide(bodySlide)

        document.Save("update.pptx")
    End Sub
End Module
$vbLabelText   $csharpLabel

Syncfusion 프레젠테이션은 슬라이드 레이아웃, 마스터 슬라이드, 애니메이션, 전환 및 PDF 및 이미지로의 변환을 통해 깊이를 발휘하며 넓은 PPTX 기능 표면을 제공합니다. IronPPT는 PowerPoint 생성 및 일반적인 조작 표면(슬라이드, 텍스트, 이미지, 기본 도형)을 Iron Suite의 다른 부분과 같은 관용적인 느낌으로 다룹니다. 복잡한 덱 변환 및 애니메이션 충실도 워크플로우는 Syncfusion이 프레젠테이션을 배치하기 위해 위치하고 있는 사례이며, .NET 데이터를 기반으로 한 표준 보고서 덱 생성은 둘 다 잘 처리됩니다.

Code-First .NET 문서 자동화를 위한Iron Suite선택 이유

.NET 팀 중 Syncfusion의 커뮤니티 라이선스에 적합하지 않고 퍼블릭 페이지에서의 번호가 있는 perpetual per-developer 라이선스를 선호하는 경우, Iron Suite가 구조적으로 더 간단한 번들입니다. 10개 제품, 하나의 SKU, 하나의 라이선스 파일, 투명한 USD 가격. 일상적인 코드 우선 .NET 문서 작업을 위한 구조적 장점:

  • 각 레벨마다 공공에 USD 가격이 제공됩니다.: 견적 요청 없음, 판매 주도의 협상 없음
  • 영구 소유권: 구매한 버전을 소유하게 됩니다.; 갱신은 업데이트와 지원을 위한 것이며, 지속적인 사용을 위한 것이 아닙니다
  • 가격 대비 더 넓은 번들: 10개 제품이 생성 및 인식을 다루며, Syncfusion 문서 SDK의 4가지 대표 라이브러리와 비교됩니다.
  • 라이선스가 부여된 좌석에 대한 로열티 무료 배포 상자 밖에서; 단일 재배포 추가 기능으로 SaaS/OEM
  • HTML 우선 PDF 생성으로 PDF가 사용자가 화면에서 보는 Chrome 렌더와 일치합니다.
  • 동일한 번들 내의 인식 스택: 기타 충격을 주지 않고 OCR, BarCode, QR을 제공하여 더 넓은 Essential Studio 플랫폼에 도달하지 않음

Iron Suite는 Syncfusion 문서 SDK와 어떻게 다른가요

  • 공공의 USD 가격. 구매자가 커뮤니티 라이선스 한계를 초과하면 Syncfusion은 견적 전용이며 판매 주도의 추가 판매로 유명합니다. Iron Suite는 모든 층에 대한 평탄한 숫자를 공개합니다.
  • 영구적 vs 구독. Iron Suite는 개발자당 영구적이며; Syncfusion은 업데이트 및 지원을 받으려면 갱신해야하는 시한부 구독입니다. 3~5년의 윈도우에서 총 소유 비용(TCO) 차이가 중요합니다.
  • 유료 계층에서 더 넓은 번들. Iron Suite는 생성 및 인식을 다루는 (OCR, BarCode, QR, WebScraper, ZIP, Print) 10개 제품을 묶습니다. Syncfusion 문서 SDK는 4가지를 전면에 내세웁니다; OCR, BarCode 및 Compression은 인접한 Essential Studio SKU에 있습니다.
  • HTML 우선의 PDF 생성이 있어 실제 브라우저의 충실도로 Syncfusion의 PdfPage/Graphics 원시 API와 비교됩니다.
  • 개발자 체험판에 라이선스 키 등록 필요 없음, 유료 배포에 대한 Syncfusion의 SyncfusionLicenseProvider.RegisterLicense 요구조건과 대조적입니다.
  • 구매자 프로필. Syncfusion의 유료 고객들은 이미 UI를 위해 Essential Studio를 구매 중인 기업들에 속하는 경향이 있습니다; Iron은 UI 제어 종속성을 필요로 하지 않는 (돈 내고 싶지 않은) 백엔드 전용 팀을 목표로 합니다.

결론

팀이 커뮤니티 라이선스의 캡(1백만 달러 미만의 수익, 5명 이하의 개발자, 10명 이하의 직원, 3백만 달러 미만의 VC 자금)에 충족합니까? 이미 그곳에 있는 팀에게는 Essential Studio UI 통합이 보너스로서, 전체 상업 사용에 대해 $0에서 가장 강력한 기술 적합성을 제공합니다. 그 캡들이 적용되지 않습니까, 아니면 귀사의 조달이 갱신하는 구독보다 perpetual 소유권을 선호합니까? 그럼 $2,998에서 개발자당 Iron Suite는 더 깔끔한 구매입니다: PDF를 포함한 10개 제품(PDF/A 및 PDF/UA 작업 포함), Office 생성, OCR 및 바코드 및 QR 인식과 인접한 유틸리티를 견적 전용 영업 활동 없이 제공합니다. ironsoftware.com/csharp/suite에서 사용 가능합니다.

참고해 주세요Syncfusion Document SDK는 해당 소유자의 등록 상표입니다. 이 사이트는 Syncfusion Document SDK와 제휴하거나 승인받았거나 후원받지 않았습니다. 모든 제품명, 로고 및 브랜드는 해당 소유자의 자산입니다. 비교는 정보 제공 목적으로만 사용되며, 작성 시점에 공개적으로 이용 가능한 정보를 반영합니다.