Los costes ocultos de las bibliotecas PDF gratuitas en C#
Elegir entreSyncfusion Document SDKeIron Suitegeneralmente se reduce a una pregunta de umbral: ¿califica el comprador para la Licencia Comunitaria de Syncfusion? Si la empresa tiene ingresos menores a $1 millón con cinco o menos desarrolladores y diez o menos empleados, Document SDK se envía a $0 para uso comercial completo, una rampa de acceso que Iron no tiene equivalente. Por encima de esos límites, la historia de adquisición cambia: el SDK de Documentos de Syncfusion de pago es solo bajo cotización en una suscripción anual por desarrollador, mientras queIron Suitese vende como un paquete plano perpetuo por desarrollador de diez productos deIron Softwaredesde $2,998, libre de regalías para los asientos con licencia, con SaaS y redistribución OEM cubiertos por un único Complemento de Redistribución.
Esta comparación comienza con lo que realmente importa en una decisión liderada por adquisiciones: si se aplica la elegibilidad de la Licencia Comunitaria, cómo está valorado cada paquete más allá de esos límites, y qué hay realmente en la caja. El detalle de la capacidad y el código sigue a continuación para los ingenieros que lo implementarán.
Comparación rápida
| Dimensión | Syncfusion Document SDK | Iron Suite |
|---|---|---|
| Posicionamiento de precios | Solo cotización; Document SDK y UI Suite ambos se dirigen a "Obtener una Cotización Personalizada" en la página de precios pública; Licencia Comunitaria gratuita | Lite $2,998 / Plus $4,498 / Professional $8,998 / Unlimited $17,998 (Enterprise custom); todos los 10 productos por el precio de 2 |
| Modelo de licencia | Suscripción anual por desarrollador (niveles de equipo Starter / Growth / Business); implementación libre de regalías; Licencia Comunitaria gratuita para ingresos <$1M / ≤5 desarrolladores / ≤10 empleados | Perpetuo por desarrollador; libre de regalías para los asientos licenciados; SaaS/OEM a través de Redistribución de Complemento |
| Componentes en el paquete | 4 bibliotecas principales (PDF, DocIO, XlsIO, Presentation); OCR/Código de barras/Compresión se encuentran en la plataforma adyacente Essential Studio | 10 products (IronPDF, IronWord, IronXL, IronPPT, IronOCR, IronBarcode, IronQR, IronPrint, IronZIP, IronWebScraper) |
| Cobertura de formato / capacidad | PDF, Word, Excel, PowerPoint son los destacados; OCR/Barcode/HTML/Visio a través de Essential Studio | PDF, Office, OCR, Código de barras/QR, ZIP, impresión, raspado web |
| Plataforma cruzada / nube | Windows, Linux, macOS, Azure, AWS | Windows, Linux, macOS, Docker, Azure, AWS Lambda |
| Soporte de tiempo de ejecución .NET | .NET Standard 2.0, .NET 8, .NET 9, .NET 10 | .NET Framework 4.6.2+, .NET Core, .NET 6/7/8/9/10 |
| Mercado objetivo | De SMB a corporativos; fuerte con equipos elegibles para Licencia Comunitaria y clientes existentes de UI de Syncfusion | Desarrolladores independientes, PYMES, equipos .NET de mediano mercado, ISVs |
| Vendedor | Syncfusion, Inc. | Iron Software |
Para el desarrollador independiente o la startup con ingresos inferiores a $1M que sea elegible para la Licencia Comunitaria (5 o menos desarrolladores, 10 o menos empleados), el SDK de Documentos de Syncfusion es verdaderamente $0 para uso comercial completo, una incomparable vía de entrada. Para el equipo .NET que supere esos límites, o para cualquier equipo que prefiera la propiedad perpetua sobre una suscripción que se renueva, el paquete de diez productos deIron Suiteen $2,998 cubre la superficie sin una venta solo bajo cotización.
Precios y licencias
Syncfusion Document SDK funciona en un modelo de suscripción anual por desarrollador con tres niveles de licencia de equipo (Starter <25 desarrolladores, Growth 25–100 desarrolladores, Business >100 desarrolladores), término mínimo de 1 año, e incluye actualizaciones y soporte durante el término. El despliegue es libre de regalías. La Licencia Comunitaria es el diferenciador titular: uso comercial gratuito para empresas con ingresos anuales menores a $1 millón, cinco o menos desarrolladores, y diez o menos empleados (con un tope de financiación de $3M si cuenta con respaldo de VC). Los precios pagados son solo cotización en la página pública de Syncfusion. Tanto el Document SDK como el UI Suite se dirigen a "Obtener una Cotización Personalizada".
Iron Suite se vende como una licencia perpetua por desarrollador en cinco niveles de categoría (Lite, Plus, Professional, Unlimited y Enterprise) comenzando desde $2,998, con la posición de marketing de "todos los 10 productos por el precio de 2; ahorra 75%". La licencia base es libre de regalías para los asientos, ubicaciones o proyectos licenciados, y SaaS, OEM, o redistribución distribuida más allá de la licencia base utiliza una sola Redistribution Add-On con precio separado.
En un horizonte de 3-5 años, los equipos elegibles para la Licencia Comunitaria pagan $0 durante todo el período y poseen el paquete siempre que la elegibilidad se mantenga. Los equipos por encima de los límites enfrentan un ciclo de renovación de suscripción anual en el precio cotizado de Syncfusion. La licencia perpetua por desarrollador deIron Suitese compra una vez al precio de nivel; la versión comprada se posee para siempre, con la renovación opcional y aplicándose solo a actualizaciones y soporte.
¿Qué es el Syncfusion Document SDK?
Syncfusion Document SDK es la SKU exclusiva de documentos dentro de la plataforma Essential Studio de Syncfusion, publicada porSyncfusion, Inc.Los mismos motores que se envían dentro de los controles de la UI de Essential Studio (Rich Edit, Spreadsheet, PDF Viewer) se venden por separado como bibliotecas de backend independiente. El Document SDK está posicionado para equipos .NET desde SMB hasta empresa que desean un kit de herramientas documental multiplataforma amigable para el desarrollador, y es singularmente atractivo debido a la Licencia Comunitaria, que otorga uso comercial completo a $0 para organizaciones pequeñas elegibles. La última versión de referencia es el volumen 33.2 (Syncfusion.Pdf.Net.Core 33.2.7, lanzado el 2026-05-19) y las bibliotecas están dirigidas a .NET Standard 2.0 más .NET 8/9/10.
Componentes clave incluidos en el paquete y capacidades:
- Biblioteca de PDF: crear, editar, firmar, llenar formularios, comprimir, fusionar, dividir
- Biblioteca de Word (DocIO): Manipulación de DOCX con combinación de correspondencia, búsqueda y reemplazo, fusión de documentos
- Biblioteca de Excel (XlsIO): Motor XLSX con más de 80 tipos de gráficos, fórmulas, formato condicional, tablas dinámicas
- Biblioteca de PowerPoint (Presentation): diapositivas, figuras, gráficos, tablas, animaciones
- Bibliotecas adyacentes en la plataforma más amplia de Essential Studio: OCR, Código de barras, Compresión/ZIP, Convertidor HTML, Visio
- Licencia Comunitaria: gratuita para empresas con ingresos menores a $1M, ≤5 desarrolladores, ≤10 empleados
¿Qué es Iron Suite?
Iron Suite es el paquete de diez productos .NET deIron Softwaredonde la pila de Office cubre DOCX, XLSX y PPTX programáticamente: IronWord con un gráfico de objetos de párrafo y ejecución de texto, IronXL con recalculación de fórmulas y soporte de gráficos y tablas dinámicas, IronPPT para creación de diapositivas y extracción de contenido. IronPDF maneja la superficie de PDF, la pila de reconocimiento (IronOCR, IronBarcode, IronQR) maneja trabajo de OCR y código de barras, y IronPrint, IronZIP, e IronWebScraper completan las utilidades. Vendido bajo una licencia perpetua por desarrollador en cinco niveles de categoría desde $2,998, sin necesidad de renovación anual para mantener la versión adquirida. Libre de regalías para los asientos con licencia. La redistribución SaaS y OEM utiliza un complemento de redistribución separado.
Los diez componentes, agrupados por relevancia para un flujo de trabajo programático de Office y PDF:
- Pila de Office (ancla): IronWord (DOCX con gráfico de objetos de ejecución de texto que se mapea directamente al OOXML, estilos personalizados, fuentes, encabezados, pies de página, extracción de contenido); IronXL (XLSX con recalculación de fórmulas, gráficos, tablas dinámicas, formato condicional, validación de datos); IronPPT (creación, edición y extracción de contenido de PPTX).
- Generación de PDF (IronPDF): Renderización de HTML a PDF y URL a PDF, fusión y división nativa, firma PKCS#12 más HSM más TSA alineada a eIDAS y ESIGN, PDF/A a PDF/A-4, PDF/UA-1 y PDF/UA-2, encriptación, llenado y aplanado de AcroForm, gestión de fuentes, rasterización, compresión y linealización.
- Reconocimiento: IronOCR (Tesseract 5, más de 125 idiomas, escritura a mano al ~90% en inglés); IronBarcode (más de 30 simbologías, escáner MAUI); IronQR (con tecnología ML, por lotes
ReadPdfs). - Utility: IronPrint, IronZIP, IronWebScraper.
Comparación de Capacidades
Generación de PDF
La generación de PDF es una carga de trabajo esencial para ambos paquetes. Syncfusion construye PDFs primitiva-a-primitiva en una superficie PdfPage.Graphics; IronPDF renderiza el mismo contenido desde HTML utilizando un motor Chrome real.
// 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// 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 ClassLa API de Syncfusion expone una superficie de características de PDF profunda (firmas digitales, llenar AcroForm, PDFs aumentados con OCR, cumplimiento de PDF/A y PDF/UA) a nivel primitivo. IronPDF abstrae el modelo de lienzo de página y permite a los desarrolladores reutilizar el mismo HTML/CSS utilizado en su aplicación web, lo cual reduce la cantidad de líneas de código para PDFs que se originan de datos web. IronPDF admite toda la familia de conformidad PDF/A (A-1a, A-1b, A-2a, A-2b, A-3a, A-3b, más la familia PDF/A-4/4E/4F según ISO 19005-4:2020 añadida en la línea de lanzamiento de 2026) a través del enum PdfAVersions, y tiene salida accesible PDF/UA dedicada a través de RenderHtmlAsPdfUA y PdfDocument.SaveAsPdfUA (PDF/UA-1 por defecto, PDF/UA-2 mediante parámetro; documentado para cumplir con la Sección 508 y WCAG 2.0 AA).
Procesamiento de Palabras y Combinar Correos
La combinación de correspondencia contra una plantilla es una de las cargas de trabajo de firma de Syncfusion DocIO. IronWord apunta a la generación y manipulación de DOCX con una API moderna de gráfico de objetos.
// 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// 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 ModuleSyncfusion DocIO envía la combinación de correspondencia contra una plantilla DOCX como una capacidad de primera clase con variantes de campo nombrado y impulsadas por conjuntos de datos. IronWord expone un gráfico de objetos de párrafo/ejecución de texto que está más cerca del modelo OOXML e ideal para generar DOCX desde cero; los flujos de trabajo de combinación de correspondencia desde plantilla en IronWord típicamente usan buscar y reemplazar en ejecuciones de texto en lugar de un API dedicado MailMerge.
Procesamiento de Excel
Ambas suites cubren la creación de Excel, el recálculo de fórmulas y la exportación a PDF. Syncfusion XlsIO es ampliamente considerado uno de los motores de Excel más profundos del mercado .NET.
// 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// 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 ModuleSyncfusion XlsIO cubre la superficie más profunda de Excel, más de 80 tipos de gráficos, formato condicional completo, tablas dinámicas y un motor de cálculo que coincide estrechamente con Excel. IronXL cubre el alcance cotidiano de lectura/escritura/recalcular con una API de celdas de estilo indexador (sheet["B4"].Formula = …, workbook.EvaluateAll()) que necesita menos ceremonia. Los flujos de trabajo que se apoyan en la superficie avanzada de Excel (tablas dinámicas, formato condicional complejo, más de 80 tipos de gráficos) es el caso en el que XlsIO ha estado invirtiendo en profundidad; para flujos de datos cotidianos que van de la base de datos a XLSX, IronXL llega en menos líneas.
Generación de PowerPoint
La creación de PowerPoint está incluida con el Syncfusion Document SDK.Iron Suiteincluye IronPPT para PowerPoint, aunque el conjunto de referencia deIron Suitelo posiciona como una biblioteca de creación en lugar de una superficie de edición profunda o animación.
// 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// 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 ModuleSyncfusion Presentation ha estado labrando profundidad a través de diseños de diapositivas, diapositivas maestro, animaciones, transiciones y conversión a PDF e imagen, una amplia superficie de características PPTX. IronPPT cubre la creación de PowerPoint y la superficie de manipulación común (diapositivas, texto, imágenes, figuras básicas) con el mismo idioma idiomático que el resto de Iron Suite. Las conversiones de mazos complejos y los flujos de trabajo de fidelidad de animación son los casos en los que Syncfusion ha estado posicionando Presentation; la generación de reportes estándar desde datos .NET está bien servida por cualquiera de los dos.
Por qué elegirIron Suitepara Automatización de Documentos en .NET orientada al código
Para los equipos .NET que no califican para la Licencia Comunitaria de Syncfusion y prefieren una licencia perpetua por desarrollador con un número en la página pública,Iron Suitees el paquete estructuralmente más simple. Diez productos, un SKU, un archivo de licencia, precios en USD transparentes. Aspectos estructurales que importan para el trabajo cotidiano de documentos .NET centrado en código:
- Precios públicos en USD en cada nivel: sin solicitud de cotización, sin negociación liderada por ventas
- Propiedad perpetua: posees la versión que compras; la renovación es para actualizaciones y soporte, no para uso continuo
- Paquete más amplio por el precio: 10 productos que cubren creación y reconocimiento frente a las 4 bibliotecas principales del Syncfusion Document SDK
- Despliegue libre de regalías para los asientos licenciados desde el principio; SaaS/OEM a través de una única Redistribución de Complemento
- Generación de PDF primero en HTML para que el PDF coincida con el mismo renderizado en Chrome que el usuario ve en pantalla
- Pila de reconocimiento en el mismo paquete: OCR, Código de barras, QR, sin alcanzar la plataforma más amplia Essential Studio
¿En qué se diferenciaIron Suitedel Syncfusion Document SDK?
- Precios públicos en USD. Una vez que un comprador excede las limitaciones de la Licencia Comunitaria, Syncfusion es solo cotización con una reputación de ventas empeñadas en upselling.Iron Suitepublica un número simple en cada nivel.
- Perpetuo vs suscripción.Iron Suitees perpetuo por desarrollador; Syncfusion es una suscripción cronometrada que debe renovarse para recibir actualizaciones y soporte. Durante un período de 3–5 años, la brecha TCO importa.
- Paquete más amplio en el nivel pagado.Iron Suiteagrupa 10 productos que cubren creación Y reconocimiento (OCR, Código de barras, QR, WebScraper, ZIP, Print). El SDK de documentos de Syncfusion destaca 4; OCR, Código de barras y Compresión se encuentran en SKUs adyacentes del Essential Studio.
- Generación de PDF orientada a HTML con fidelidad de navegador real frente a la API primitiva PdfPage/Graphics de Syncfusion.
- No se requiere registro de clave de licencia para pruebas de desarrollo, frente al requisito de Syncfusion
SyncfusionLicenseProvider.RegisterLicensepara implementaciones de pago. - Perfil del comprador. Los clientes de pago de Syncfusion tienden a estar en empresas ya comprando Essential Studio para UI; Iron se enfoca en equipos únicamente de backend que no necesitan (y no quieren pagar por) una dependencia de controles de UI.
Conclusión
¿Tu equipo cumple con las limitaciones de la Licencia Comunitaria (ingresos menores a $1M, cinco o menos desarrolladores, diez o menos empleados, financiación VC sub-$3M)? Entonces el SDK de documentos de Syncfusion es el ajuste técnico más fuerte a $0 para uso comercial completo, con la integración de UI de Essential Studio como un extra para los equipos que ya están allí. ¿No se aplican esas limitaciones, o tu adquisición prefiere propiedad perpetua sobre una suscripción renovable? EntoncesIron Suiteen $2,998 por desarrollador es la compra más limpia: diez productos que cubren PDF (con todo el trabajo PDF/A y PDF/UA), generación de Office, reconocimiento OCR, de código de barras y QR, y utilidades adyacentes, sin una venta solo bajo cotización. Available at ironsoftware.com/csharp/suite.
