Saltar al pie de página
GUíAS DE MIGRACIóN

Cómo migrar de Easy PDF SDK a IronPDF en C#

Migrar de SDK Easy PDFa IronPDF: Guía completa de migración a C

BCL SDK Easy PDFha sido una solución tradicional para la generación de PDF en entornos Windows, utilizando controladores de impresora virtuales y automatización de Microsoft Office. Sin embargo, su arquitectura exclusiva para Windows, las dependencias de interoperabilidad COM y el requisito de sesiones de usuario interactivas plantean retos fundamentales de despliegue para las aplicaciones modernas. Esta completa guía proporciona una ruta de migración paso a paso desde SDK Easy PDFa IronPDF, una biblioteca PDF nativa de .NET con compatibilidad multiplataforma, renderización basada en Chromium y capacidades de implementación en contenedores.

¿Por qué migrar de Easy PDF SDK?

Easy PDF SDK se basa en varias tecnologías heredadas que plantean importantes retos de implantación y mantenimiento en los entornos de desarrollo modernos.

Problemas comunes de implementación de Easy PDF SDK

Los desarrolladores se encuentran a menudo con estos problemas cuando trabajan con Easy PDF SDK:

  • bcl.easypdf.interop.easypdfprinter.dll error loading
  • El objeto COM que se ha separado de su RCW subyacente no se puede utilizar
  • Tiempo de espera expirado para que se complete el trabajo de impresión
  • La operación de impresión ha fallado porque el servicio no se está ejecutando
  • Error: Acceso denegado (se requiere sesión interactiva)
  • No se encuentra la impresora: BCL easyPDF Printer

Estos errores se deben a la arquitectura fundamental de Easy PDF SDK, que requiere controladores de impresora virtuales, interoperabilidad COM y sesiones interactivas de Windows que simplemente no existen en los entornos de servidor modernos.

Fácil PDF SDK frente a IronPDF: Diferencias clave

CaracterísticaSDK Easy PDFIronPDF
PlataformaSólo para WindowsWindows, Linux, macOS, Docker
Dependencia de OfficeRequeridoNinguno
InstalaciónMSI complejo + controlador de impresora + COMPaquete NuGet simple
Soporte de servidorRequiere sesión interactivaEjecuta headless
Representación HTMLBásico (Office)Chromium completo (CSS3, JS)
Soporte .NET.NET Core limitado.NET 5/6/7/8/9 completo
Patrón AsyncBasado en callbackAsync/await nativo
Soporte para contenedoresNo se puede ejecutarDocker/Kubernetes completo

Limitaciones de la plataforma

La dependencia exclusiva de SDK Easy PDFde los sistemas Windows, que requieren instalaciones de Microsoft Office para las conversiones, excluye la compatibilidad con Linux, macOS o entornos en contenedores como Docker. Esta dependencia hace que la configuración del servidor sea engorrosa y limita la adopción del servicio a entornos Windows, una limitación importante para los equipos que practican DevOps multiplataforma o que utilizan contenedores para el despliegue.

Preparación de la migración

Prerrequisitos

Asegúrese de que su entorno cumple estos requisitos:

  • .NET Framework 4.6.2+ o .NET Core 3.1 / .NET 5-9
  • Visual Studio 2019+ o VS Code con extensión de C#
  • Acceso al gestor de paquetes NuGet
  • Clave de licencia deIronPDF(prueba gratuita disponible en ironpdf.com)

Uso de Audit Easy PDF SDK

Ejecute estos comandos en su directorio de soluciones para identificar todas las referencias a Easy PDF SDK:

# Find all BCL using statements
grep -r "using BCL" --include="*.cs" .

# Find Printer/PDFDocument usage
grep -r "Printer\|PDFDocument\|PDFConverter\|HTMLConverter" --include="*.cs" .

# Find COM interop references
grep -r "easyPDF\|BCL.easyPDF" --include="*.csproj" .

# Find configuration settings
grep -r "PageOrientation\|TimeOut\|PrintOffice" --include="*.cs" .
# Find all BCL using statements
grep -r "using BCL" --include="*.cs" .

# Find Printer/PDFDocument usage
grep -r "Printer\|PDFDocument\|PDFConverter\|HTMLConverter" --include="*.cs" .

# Find COM interop references
grep -r "easyPDF\|BCL.easyPDF" --include="*.csproj" .

# Find configuration settings
grep -r "PageOrientation\|TimeOut\|PrintOffice" --include="*.cs" .
SHELL

Cambios importantes que hay que anticipar

Patrón Easy PDF SDKCambio requerido
<código>nuevo Printer()</códigoUsar ChromePdfRenderer
<código>PrintOfficeDocToPDF()</códigoConversión de Office tratada de forma diferente
<código>RenderHTMLToPDF()</código<código>RenderHtmlAsPdf()</código
Referencias de interoperabilidad COMEliminar por completo
Configuración del controlador de impresoraNo es necesario
Callbacks de BeginPrintToFile()Async/await nativo
Requisitos de la sesión interactivaEjecuta headless
indexación de páginas basada en 1indexación basada en 0
Tiempo de espera en segundosTiempo de espera en milisegundos

Proceso de migración paso a paso

Paso 1: Eliminar Easy PDF SDK

Easy PDF SDK se instala normalmente mediante un instalador MSI, referencias DLL manuales o registro GAC. Elimine todas las referencias:

  1. Desinstalar BCL EasyPDF SDK desde Programas y características
  2. Elimine las referencias DLL de su proyecto
  3. Eliminar referencias de interoperabilidad COM
  4. Limpiar las entradas GAC si están presentes

Paso 2: Instalar IronPDF

# Install IronPDF
dotnet add package IronPdf
# Install IronPDF
dotnet add package IronPdf
SHELL

O a través de Package Manager Console:

Install-Package IronPdf

Paso 3: Actualizar referencias de espacios de nombres

Sustituya los espacios de nombres de SDK Easy PDFpor IronPDF:

// Remove these
using BCL.easyPDF;
using BCL.easyPDF.Interop;
using BCL.easyPDF.PDFConverter;
using BCL.easyPDF.Printer;

// Add these
using IronPdf;
using IronPdf.Rendering;
// Remove these
using BCL.easyPDF;
using BCL.easyPDF.Interop;
using BCL.easyPDF.PDFConverter;
using BCL.easyPDF.Printer;

// Add these
using IronPdf;
using IronPdf.Rendering;
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Referencia completa de migración de API

Mapeo de clases principales

Clase Easy PDF SDKEquivalente de IronPDFNotas
Impresora<código>ChromePdfRenderer</códigoClase principal de conversión
Documento PDFDocumento PDFManipulación de documentos
<código>HTMLConverter</código<código>ChromePdfRenderer</códigoConversión HTML
Configuración de la impresora<código>ChromePdfRenderOptions</códigoOpciones de renderización
Orientación de páginaOrientación del documento pdfOrientación de la página
<código>TamañoDePágina</código<código>TamañoDelPapel</códigoTamaño del papel
<código>SecurityHandler</código<código>PdfDocument.SecuritySettings</códigoOpciones de seguridad

Métodos de creación de PDF

Método Easy PDF SDKMétodo IronPDFNotas
<código>printer.RenderHTMLToPDF(html, ruta)</código<código>renderer.RenderHtmlAsPdf(html).SaveAs(path)</códigoCadena HTML
<código>printer.RenderUrlToPDF(url, path)</código<código>renderer.RenderUrlAsPdf(url).SaveAs(path)</códigoConversión de URL
<código>htmlConverter.ConvertHTML(html, doc)</códigorenderer.RenderHtmlAsPdf(html)HTML a PDF
<código>htmlConverter.ConvertURL(url, doc)</código<código>renderer.RenderUrlAsPdf(url)</códigoURL a PDF

Métodos de manipulación de PDF

Método Easy PDF SDKMétodo IronPDFNotas
<código>doc.Append(doc2)</códigoPdfDocument.Merge(pdf1, pdf2)Fusionar PDF
<código>doc.ExtractPages(start, end)</código<código>pdf.CopyPages(start, end)</códigoExtraer páginas
doc.DeletePage(index)<código>pdf.RemovePage(index)</códigoEliminar página
doc.GetPageCount()<código>pdf.PageCount</códigoNúmero de páginas
doc.Guardar(ruta)<código>pdf.SaveAs(ruta)</códigoGuardar PDF
doc.Close()pdf.Dispose() o usandoLimpieza
doc.ExtractText()<código>pdf.ExtractAllText()</códigoExtracción de texto

Opciones de configuración

Opción Easy PDF SDKOpción IronPDFNotas
config.TimeOut<código>RenderingOptions.Timeout</códigoTiempo de espera (ms)
config.PageOrientation = Landscape<código>RenderingOptions.PaperOrientation = Landscape</códigoOrientación
config.PageSize = A4<código>RenderingOptions.PaperSize = PdfPaperSize.A4</códigoTamaño del papel
config.MarginTop/Bottom/Left/RightRenderingOptions.MarginTop, etc.Márgenes

Ejemplos de migración de código

Cadena HTML a PDF

Fácil implementación del SDK de PDF:

// NuGet: Install-Package BCL.EasyPDF
using BCL.EasyPDF;
using System;

class Program
{
    static void Main()
    {
        var pdf = new PDFDocument();
        var htmlConverter = new HTMLConverter();
        htmlConverter.ConvertHTML("<h1>Hello World</h1>", pdf);
        pdf.Save("output.pdf");
        pdf.Close();
    }
}
// NuGet: Install-Package BCL.EasyPDF
using BCL.EasyPDF;
using System;

class Program
{
    static void Main()
    {
        var pdf = new PDFDocument();
        var htmlConverter = new HTMLConverter();
        htmlConverter.ConvertHTML("<h1>Hello World</h1>", pdf);
        pdf.Save("output.pdf");
        pdf.Close();
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Implementación de IronPDF:

// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
        pdf.SaveAs("output.pdf");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
        pdf.SaveAs("output.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

IronPDF elimina la clase separada <código>HTMLConverter</códigoy las llamadas manuales Close(), lo que da como resultado un código más limpio y fácil de mantener.

Conversión de URL a PDF

Fácil implementación del SDK de PDF:

// NuGet: Install-Package BCL.EasyPDF
using BCL.EasyPDF;
using System;

class Program
{
    static void Main()
    {
        var pdf = new PDFDocument();
        var htmlConverter = new HTMLConverter();
        htmlConverter.ConvertURL("https://example.com", pdf);
        pdf.Save("webpage.pdf");
        pdf.Close();
    }
}
// NuGet: Install-Package BCL.EasyPDF
using BCL.EasyPDF;
using System;

class Program
{
    static void Main()
    {
        var pdf = new PDFDocument();
        var htmlConverter = new HTMLConverter();
        htmlConverter.ConvertURL("https://example.com", pdf);
        pdf.Save("webpage.pdf");
        pdf.Close();
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Implementación de IronPDF:

// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderUrlAsPdf("https://example.com");
        pdf.SaveAs("webpage.pdf");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderUrlAsPdf("https://example.com");
        pdf.SaveAs("webpage.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Fusión de varios PDF

Fácil implementación del SDK de PDF:

// NuGet: Install-Package BCL.EasyPDF
using BCL.EasyPDF;
using System;

class Program
{
    static void Main()
    {
        var pdf1 = new PDFDocument("document1.pdf");
        var pdf2 = new PDFDocument("document2.pdf");
        pdf1.Append(pdf2);
        pdf1.Save("merged.pdf");
        pdf1.Close();
        pdf2.Close();
    }
}
// NuGet: Install-Package BCL.EasyPDF
using BCL.EasyPDF;
using System;

class Program
{
    static void Main()
    {
        var pdf1 = new PDFDocument("document1.pdf");
        var pdf2 = new PDFDocument("document2.pdf");
        pdf1.Append(pdf2);
        pdf1.Save("merged.pdf");
        pdf1.Close();
        pdf2.Close();
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Implementación de IronPDF:

// NuGet: Install-Package IronPdf
using IronPdf;
using System;
using System.Collections.Generic;

class Program
{
    static void Main()
    {
        var pdfs = new List<PdfDocument>
        {
            PdfDocument.FromFile("document1.pdf"),
            PdfDocument.FromFile("document2.pdf")
        };
        var merged = PdfDocument.Merge(pdfs);
        merged.SaveAs("merged.pdf");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
using System.Collections.Generic;

class Program
{
    static void Main()
    {
        var pdfs = new List<PdfDocument>
        {
            PdfDocument.FromFile("document1.pdf"),
            PdfDocument.FromFile("document2.pdf")
        };
        var merged = PdfDocument.Merge(pdfs);
        merged.SaveAs("merged.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

El método estático Merge deIronPDFacepta varios documentos directamente, eliminando el patrón de bucle manual Append.

Protección con contraseña

Implementación de IronPDF:

using IronPdf;

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Confidential</h1>");

// Set security
pdf.SecuritySettings.UserPassword = "user123";
pdf.SecuritySettings.OwnerPassword = "owner456";
pdf.SecuritySettings.AllowUserPrinting = PdfPrintSecurity.NoPrint;
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SecuritySettings.AllowUserEdits = PdfEditSecurity.NoEdit;

pdf.SaveAs("protected.pdf");
using IronPdf;

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Confidential</h1>");

// Set security
pdf.SecuritySettings.UserPassword = "user123";
pdf.SecuritySettings.OwnerPassword = "owner456";
pdf.SecuritySettings.AllowUserPrinting = PdfPrintSecurity.NoPrint;
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SecuritySettings.AllowUserEdits = PdfEditSecurity.NoEdit;

pdf.SaveAs("protected.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Cabeceras y pies de página

Easy PDF SDK no es compatible de forma nativa con encabezados/pies de página: los encabezados y pies de página deben incluirse en el HTML de origen.IronPDFofrece funciones específicas:

using IronPdf;

var renderer = new ChromePdfRenderer();

renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter
{
    HtmlFragment = @"
        <div style='text-align:center; font-size:12px; font-family:Arial;'>
            Company Name - Confidential
        </div>",
    DrawDividerLine = true,
    MaxHeight = 30
};

renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter
{
    HtmlFragment = @"
        <div style='text-align:center; font-size:10px;'>
            Page {page} of {total-pages}
        </div>",
    DrawDividerLine = true,
    MaxHeight = 25
};

var pdf = renderer.RenderHtmlAsPdf("<h1>Content</h1>");
pdf.SaveAs("with_headers.pdf");
using IronPdf;

var renderer = new ChromePdfRenderer();

renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter
{
    HtmlFragment = @"
        <div style='text-align:center; font-size:12px; font-family:Arial;'>
            Company Name - Confidential
        </div>",
    DrawDividerLine = true,
    MaxHeight = 30
};

renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter
{
    HtmlFragment = @"
        <div style='text-align:center; font-size:10px;'>
            Page {page} of {total-pages}
        </div>",
    DrawDividerLine = true,
    MaxHeight = 25
};

var pdf = renderer.RenderHtmlAsPdf("<h1>Content</h1>");
pdf.SaveAs("with_headers.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Para más opciones, consulte la documentación sobre encabezados y pies de página.

Generación asíncrona de PDF

Easy PDF SDK utiliza patrones asíncronos basados en callbacks.IronPDFes compatible con async/await nativos:

Fácil implementación del SDK de PDF:

using BCL.easyPDF;

Printer printer = new Printer();

// BCL uses callback-based async
printer.BeginPrintToFile(
    "https://example.com",
    "output.pdf",
    OnPrintComplete,
    OnPrintError
);

Console.ReadLine();
printer.Dispose();
using BCL.easyPDF;

Printer printer = new Printer();

// BCL uses callback-based async
printer.BeginPrintToFile(
    "https://example.com",
    "output.pdf",
    OnPrintComplete,
    OnPrintError
);

Console.ReadLine();
printer.Dispose();
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Implementación de IronPDF:

using IronPdf;
using System.Threading.Tasks;

class Program
{
    static async Task Main()
    {
        var renderer = new ChromePdfRenderer();

        // Native async/await
        var pdf = await renderer.RenderUrlAsPdfAsync("https://example.com");
        await pdf.SaveAsAsync("output.pdf");

        Console.WriteLine("PDF created: output.pdf");
    }
}
using IronPdf;
using System.Threading.Tasks;

class Program
{
    static async Task Main()
    {
        var renderer = new ChromePdfRenderer();

        // Native async/await
        var pdf = await renderer.RenderUrlAsPdfAsync("https://example.com");
        await pdf.SaveAsAsync("output.pdf");

        Console.WriteLine("PDF created: output.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Notas de migración críticas

Cambio en el índice de páginas

Easy PDF SDK utiliza indexación basada en 1.IronPDFutiliza indexación basada en 0:

// Easy PDF SDK: 1-based
doc.ExtractPages(1, 5);

// IronPDF: 0-based
pdf.CopyPages(0, 4);
// Easy PDF SDK: 1-based
doc.ExtractPages(1, 5);

// IronPDF: 0-based
pdf.CopyPages(0, 4);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Tiempo de espera en milisegundos

Easy PDF SDK utiliza segundos para los valores de tiempo de espera.IronPDFutiliza milisegundos:

// Easy PDF SDK: seconds
config.TimeOut = 120;

// IronPDF: milliseconds
renderer.RenderingOptions.Timeout = 120000;
// Easy PDF SDK: seconds
config.TimeOut = 120;

// IronPDF: milliseconds
renderer.RenderingOptions.Timeout = 120000;
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Integración con .NET Core

Easy PDF SDK tiene dificultades en contextos web debido a los requisitos de sesión interactiva.

Patrón IronPDF:

[ApiController]
[Route("[controller]")]
public class PdfController : ControllerBase
{
    [HttpGet("generate")]
    public IActionResult GeneratePdf()
    {
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderHtmlAsPdf("<h1>Report</h1>");

        return File(pdf.BinaryData, "application/pdf", "report.pdf");
    }

    [HttpGet("generate-async")]
    public async Task<IActionResult> GeneratePdfAsync()
    {
        var renderer = new ChromePdfRenderer();
        var pdf = await renderer.RenderHtmlAsPdfAsync("<h1>Report</h1>");

        return File(pdf.Stream, "application/pdf", "report.pdf");
    }
}
[ApiController]
[Route("[controller]")]
public class PdfController : ControllerBase
{
    [HttpGet("generate")]
    public IActionResult GeneratePdf()
    {
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderHtmlAsPdf("<h1>Report</h1>");

        return File(pdf.BinaryData, "application/pdf", "report.pdf");
    }

    [HttpGet("generate-async")]
    public async Task<IActionResult> GeneratePdfAsync()
    {
        var renderer = new ChromePdfRenderer();
        var pdf = await renderer.RenderHtmlAsPdfAsync("<h1>Report</h1>");

        return File(pdf.Stream, "application/pdf", "report.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Despliegue de Docker

Easy PDF SDK no puede ejecutarse en contenedores Docker: requiere contenedores Windows, Microsoft Office, controladores de impresora virtuales y sesiones de escritorio interactivas. Esto es fundamentalmente incompatible con la contenedorización.

Configuración Docker de IronPDF:

FROM mcr.microsoft.com/dotnet/aspnet:8.0

# Install Chromium dependencies
RUN apt-get update && apt-get install -y \
    libc6 libgdiplus libx11-6 libxcomposite1 \
    libxdamage1 libxrandr2 libxss1 libxtst6 \
    libnss3 libatk-bridge2.0-0 libgtk-3-0 \
    libgbm1 libasound2 fonts-liberation \
    && rm -rf /var/lib/apt/lists/*

WORKDIR /app
COPY . .
ENTRYPOINT ["dotnet", "MyApp.dll"]

Solución de problemas comunes de migración

Edición: Impresora no encontrada

Síntoma: No se encuentra la impresora: BCL easyPDF Printer

Solución:IronPDFno necesita controladores de impresora:

// Just use the renderer directly
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(html);
// Just use the renderer directly
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(html);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Asunto: Errores de interoperabilidad COM

Síntoma: Error al cargar DLL o errores RCW

Solución: Elimine todas las referencias COM y utilice la API gestionada de IronPDF.

Asunto: Timeout on Server

Síntoma: La generación de PDF se cuelga en el servidor web

Solución:IronPDFse ejecuta sin sesiones interactivas:

var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.Timeout = 60000; // Reliable timeout
var pdf = renderer.RenderHtmlAsPdf(html);
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.Timeout = 60000; // Reliable timeout
var pdf = renderer.RenderHtmlAsPdf(html);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Asunto: El fondo no se imprime

Síntoma: Faltan fondos CSS

Solución: Habilitar la impresión en segundo plano:

renderer.RenderingOptions.PrintHtmlBackgrounds = true;
renderer.RenderingOptions.PrintHtmlBackgrounds = true;
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Lista de comprobación posterior a la migración

Después de completar la migración del código, verifique lo siguiente:

  • [ ] Compruebe la calidad de salida de PDF con el motor Chromium de IronPDF
  • [ ] Probar todos los casos límite con HTML/CSS complejos
  • [ ] Validar el despliegue del servidor funciona sin sesiones interactivas
  • [ ] Prueba de despliegue de Docker/contenedores
  • [ ] Eliminar el instalador de BCL EasyPDF del despliegue
  • [ ] Eliminar la instalación de Office de los servidores (ya no es necesario)
  • [ ] Actualizar las canalizaciones CI/CD con el nuevo paquete NuGet

Proteja su infraestructura PDF

Con .NET 10 en el horizonte y C# 14 introduciendo nuevas características del lenguaje, la elección de una biblioteca PDF multiplataforma garantiza la compatibilidad con los modelos de implantación en evolución. La compatibilidad deIronPDFcon Linux, Docker y las arquitecturas nativas de la nube significa que su inversión en migración dará sus frutos a medida que los proyectos se extiendan hasta 2025 y 2026, sin las limitaciones exclusivas de Windows de Easy PDF SDK.

Recursos adicionales


La migración de SDK Easy PDFaIronPDFelimina las dependencias de las impresoras virtuales, los problemas de interoperabilidad COM y las limitaciones exclusivas de Windows. La transición a la renderización basada en Chromium ofrece una compatibilidad superior con CSS3 y JavaScript, a la vez que permite la implementación en Docker, Kubernetes y entornos en la nube que antes eran imposibles con la arquitectura heredada de Easy PDF SDK.

Curtis Chau
Escritor Técnico

Curtis Chau tiene una licenciatura en Ciencias de la Computación (Carleton University) y se especializa en el desarrollo front-end con experiencia en Node.js, TypeScript, JavaScript y React. Apasionado por crear interfaces de usuario intuitivas y estéticamente agradables, disfruta trabajando con frameworks modernos y creando manuales bien ...

Leer más