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

Cómo migrar de PeachPDF a IronPDF en C#

Migrar de PeachPDFa IronPDF: Guía completa de migración a C

La migración de PeachPDFaIronPDFproporciona acceso a la generación de PDF de nivel empresarial con funciones completas, desarrollo activo y asistencia profesional. Esta guía proporciona una ruta de migración completa, paso a paso, que transforma su flujo de trabajo básico de HTML a PDF en una solución PDF con todas las funciones, con el moderno renderizado de Chromium, opciones de seguridad avanzadas y amplias capacidades de manipulación.

Por qué migrar de PeachPDFa IronPDF

Entender PeachPDF

PeachPDF es una herramienta relativamente nueva en el ecosistema .NET diseñada para desarrolladores que necesitan convertir HTML a PDF. Como biblioteca, PeachPDFpromete una implementación .NET pura, diferenciándose por no depender de procesos externos, lo que garantiza que pueda integrarse sin problemas en todas las plataformas que admitan .NET. Esta característica posiciona a PeachPDFcomo una opción atractiva para proyectos que buscan una solución de biblioteca ligera y gestionada.

A pesar de su potencial, PeachPDFaún está en fase de desarrollo, lo que pone de manifiesto tanto sus interesantes posibilidades como sus notables limitaciones. PeachPDFsigue siendo atractivo por su núcleo .NET puro, que promete una implantación sencilla en diversos entornos. Sin embargo, esto también se traduce en una adopción limitada, con una base de usuarios más pequeña y un apoyo impulsado por la comunidad.

Las limitaciones de PeachPDF

PeachPDF es una biblioteca PDF relativamente nueva y menos conocida que carece de la madurez, las funciones y la asistencia de las soluciones establecidas. Razones clave para migrar:

  1. Conjunto de funciones limitado: PeachPDFcarece de funciones avanzadas como firmas digitales, conformidad con PDF/Ay extracción sofisticada de texto.

  2. Pequeña comunidad: Documentación, ejemplos y apoyo de la comunidad limitados. Con una base de usuarios más pequeña, el apoyo de la comunidad puede ser escaso, lo que dificulta la obtención de asistencia o la búsqueda de documentación exhaustiva.

  3. Futuro incierto: Las nuevas bibliotecas sin un historial establecido conllevan un riesgo de adopción.

  4. Soporte HTML básico: Capacidades limitadas de renderizado de CSS y JavaScript.

  5. Sin soporte empresarial: No hay soporte profesional ni opciones de SLA.

Comparación entre PeachPDFe IronPDF

CaracterísticaPeachPDFIronPDF
Implementación.NET puroGestionado con amplia compatibilidad
LicenciaCódigo abierto (BSD-3-Clause)Comercial
Base de usuariosPequeñoGrande (más de 40 millones de descargas)
SoporteDirigido a la comunidadProfessional con soporte dedicado
Representación HTMLBásicoChromium completo
Soporte CSSLimitadoCSS3 completo
JavaScriptBásicoES2024 completo
Firmas digitalesNo
Cumplimiento de PDF/ANo
DocumentaciónLimitadoAmplia
Estado de desarrolloEn desarrolloVersión madura y estable

IronPDF destaca por su amplia funcionalidad, ya que no solo admite conversiones de HTML a PDF, sino también OCR, marcas de agua y otras funciones avanzadas. Su estructura de soporte profesional es una ventaja definitiva, ya que ofrece resoluciones rápidas a los problemas a los que se enfrentan los desarrolladores.

Para los equipos que planifican la adopción de .NET 10 y C# 14 hasta 2025 y 2026,IronPDFofrece funciones completas y un mantenimiento activo que garantizan la estabilidad y la compatibilidad a largo plazo con los marcos .NET modernos.


Antes de empezar

Prerrequisitos

  1. <Entorno .NET: .NET Framework 4.6.2+ o .NET Core 3.1+ / .NET 5/6/7/8/9+
  2. Acceso a NuGet: Capacidad para instalar paquetes NuGet
  3. Licencia IronPDF: Obtenga su clave de licencia en ironpdf.com

Cambios en el paquete NuGet

# Remove PeachPDF
dotnet remove package PeachPDF

# Install IronPDF
dotnet add package IronPdf
# Remove PeachPDF
dotnet remove package PeachPDF

# Install IronPDF
dotnet add package IronPdf
SHELL

Configuración de licencias

// Add at application startup
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
// Add at application startup
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Identificar el uso de PeachPDF

# Audit PeachPDFusage in codebase
grep -r "using PeachPDF" --include="*.cs" .
grep -r "HtmlToPdfConverter\|Convert\|ConvertUrl" --include="*.cs" .
# Audit PeachPDFusage in codebase
grep -r "using PeachPDF" --include="*.cs" .
grep -r "HtmlToPdfConverter\|Convert\|ConvertUrl" --include="*.cs" .
SHELL

Referencia completa de la API

Cambios en el espacio de nombres

// Before: PeachPDF
using PeachPDF;
using System.IO;

// After: IronPDF
using IronPdf;
using IronPdf.Rendering;
// Before: PeachPDF
using PeachPDF;
using System.IO;

// After: IronPDF
using IronPdf;
using IronPdf.Rendering;
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Core API Mappings

PeachPDFIronPDFNotas
nuevo HtmlToPdfConverter()<código>new ChromePdfRenderer()</códigoCrear renderizador
converter.Convert(html)renderer.RenderHtmlAsPdf(html)HTML a PDF
<código>converter.ConvertUrl(url)</código<código>renderer.RenderUrlAsPdf(url)</códigoURL a PDF
converter.Headerrenderer.RenderingOptions.HtmlHeaderContenido de la cabecera
convertidor.pie<código>renderer.RenderingOptions.HtmlFooter</códigoContenido del pie de página
<código>File.WriteAllBytes(path, pdf)</código<código>pdf.SaveAs(ruta)</códigoGuardar archivo
pdf (byte[])<código>pdf.BinaryData</códigoObtener bytes
<código>PdfReader.LoadFromFile(path)</código<código>PdfDocument.FromFile(path)</códigoCargar PDF
document.MergeWith(other)<código>PdfDocument.Merge(pdfs)</códigoFusionar PDF

Ejemplos de migración de código

Ejemplo 1: Conversión de cadenas HTML a PDF

Antes (PeachPDF):

using PeachPDF;
using System.IO;

class Program
{
    static void Main()
    {
        var converter = new HtmlToPdfConverter();
        var html = "<html><body><h1>Hello World</h1></body></html>";
        var pdf = converter.Convert(html);
        File.WriteAllBytes("output.pdf", pdf);
    }
}
using PeachPDF;
using System.IO;

class Program
{
    static void Main()
    {
        var converter = new HtmlToPdfConverter();
        var html = "<html><body><h1>Hello World</h1></body></html>";
        var pdf = converter.Convert(html);
        File.WriteAllBytes("output.pdf", pdf);
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Después (IronPDF):

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

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

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

Este ejemplo demuestra la diferencia fundamental entre las dos bibliotecas. PeachPDFutiliza HtmlToPdfConverter con un método Convert() que devuelve un byte[], que requiere <código>File.WriteAllBytes()</códigopara guardar.IronPDFutiliza ChromePdfRenderer con RenderHtmlAsPdf() que devuelve un objeto PdfDocument con un método <código>SaveAs()</códigoincorporado.

Las principales ventajas del enfoque deIronPDFson que el objeto PdfDocument se puede manipular (añadir marcas de agua, combinar, ajustes de seguridad) antes de guardarlo, mientras que la matriz de bytes de PeachPDFes un resultado final. El enfoque deIronPDFofrece una sintaxis más limpia y una mejor integración con las aplicaciones .NET modernas. Consulte la documentación HTML a PDF para ver ejemplos completos.

Ejemplo 2: Conversión de URL a PDF

Antes (PeachPDF):

using PeachPDF;
using System.IO;

class Program
{
    static void Main()
    {
        var converter = new HtmlToPdfConverter();
        var url = "https://www.example.com";
        var pdf = converter.ConvertUrl(url);
        File.WriteAllBytes("webpage.pdf", pdf);
    }
}
using PeachPDF;
using System.IO;

class Program
{
    static void Main()
    {
        var converter = new HtmlToPdfConverter();
        var url = "https://www.example.com";
        var pdf = converter.ConvertUrl(url);
        File.WriteAllBytes("webpage.pdf", pdf);
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Después (IronPDF):

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

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

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

PeachPDF utiliza ConvertUrl() mientras queIronPDFutiliza RenderUrlAsPdf(). La nomenclatura de los métodos enIronPDFes más descriptiva: indica explícitamente que una URL se está convirtiendo en un PDF. Ambas bibliotecas gestionan la conversión de URL a PDF de forma similar, pero el motor Chromium completo deIronPDFproporciona una renderización superior de páginas web modernas con CSS y JavaScriptcomplejos. Más información en nuestros tutoriales.

Ejemplo 3: Añadir encabezados y pies de página

Antes (PeachPDF):

using PeachPDF;
using System.IO;

class Program
{
    static void Main()
    {
        var converter = new HtmlToPdfConverter();
        converter.Header = "<div style='text-align:center'>My Header</div>";
        converter.Footer = "<div style='text-align:center'>Page {page}</div>";
        var html = "<html><body><h1>Document Content</h1></body></html>";
        var pdf = converter.Convert(html);
        File.WriteAllBytes("document.pdf", pdf);
    }
}
using PeachPDF;
using System.IO;

class Program
{
    static void Main()
    {
        var converter = new HtmlToPdfConverter();
        converter.Header = "<div style='text-align:center'>My Header</div>";
        converter.Footer = "<div style='text-align:center'>Page {page}</div>";
        var html = "<html><body><h1>Document Content</h1></body></html>";
        var pdf = converter.Convert(html);
        File.WriteAllBytes("document.pdf", pdf);
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Después (IronPDF):

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

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter() { HtmlFragment = "<div style='text-align:center'>My Header</div>" };
        renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter() { HtmlFragment = "<div style='text-align:center'>Page {page}</div>" };
        var html = "<html><body><h1>Document Content</h1></body></html>";
        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("document.pdf");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using IronPdf.Rendering;
using System;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter() { HtmlFragment = "<div style='text-align:center'>My Header</div>" };
        renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter() { HtmlFragment = "<div style='text-align:center'>Page {page}</div>" };
        var html = "<html><body><h1>Document Content</h1></body></html>";
        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("document.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Este ejemplo muestra una diferencia arquitectónica clave. PeachPDFutiliza propiedades de cadena simples (converter.Header y converter.Footer) para encabezados y pies de página.IronPDFutiliza objetos HtmlHeaderFooter asignados a RenderingOptions.HtmlHeader y RenderingOptions.HtmlFooter.

El enfoque deIronPDFofrece más flexibilidad: los objetos HtmlHeaderFooter pueden incluir propiedades adicionales como MaxHeight para controlar el tamaño del encabezado/pie de página. Tenga en cuenta que ambas bibliotecas utilizan {page} como marcador de posición del número de página.IronPDFtambién admite {total-pages} para el recuento total de páginas.

Tenga en cuenta el espacio de nombres adicional necesario para IronPDF: use IronPDF.Rendering; es necesario para la clase HtmlHeaderFooter.


Notas de migración críticas

Cambio de clase de conversor

PeachPDF utiliza HtmlToPdfConverter;IronPDFutiliza ChromePdfRenderer:

// PeachPDF
var converter = new HtmlToPdfConverter();

// IronPDF
var renderer = new ChromePdfRenderer();
// PeachPDF
var converter = new HtmlToPdfConverter();

// IronPDF
var renderer = new ChromePdfRenderer();
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Cambio de tipo de retorno

PeachPDF devuelve byte[];IronPDFdevuelve PdfDocument:

// PeachPDF: Returns byte array
byte[] pdf = converter.Convert(html);
File.WriteAllBytes("output.pdf", pdf);

// IronPDF: Returns PdfDocument object
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("output.pdf");
// Or get bytes: byte[] bytes = pdf.BinaryData;
// PeachPDF: Returns byte array
byte[] pdf = converter.Convert(html);
File.WriteAllBytes("output.pdf", pdf);

// IronPDF: Returns PdfDocument object
PdfDocument pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("output.pdf");
// Or get bytes: byte[] bytes = pdf.BinaryData;
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Cambio de propiedad de encabezado/pie

// PeachPDF: Simple string properties
converter.Header = "<div>Header</div>";
converter.Footer = "<div>Footer</div>";

// IronPDF: HtmlHeaderFooter objects
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter() 
{ 
    HtmlFragment = "<div>Header</div>" 
};
renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter() 
{ 
    HtmlFragment = "<div>Footer</div>" 
};
// PeachPDF: Simple string properties
converter.Header = "<div>Header</div>";
converter.Footer = "<div>Footer</div>";

// IronPDF: HtmlHeaderFooter objects
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter() 
{ 
    HtmlFragment = "<div>Header</div>" 
};
renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter() 
{ 
    HtmlFragment = "<div>Footer</div>" 
};
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Cambios en los nombres de los métodos

PeachPDFIronPDF
Convertir(html)<código>RenderHtmlAsPdf(html)</código
ConvertirUrl(url)<código>RenderUrlAsPdf(url)</código
<código>File.WriteAllBytes()</código<código>SaveAs()</código

Nuevas capacidades tras la migración

Tras migrar a IronPDF, obtendrá funciones que PeachPDFno puede ofrecerle:

Fusión de PDF

var pdf1 = PdfDocument.FromFile("doc1.pdf");
var pdf2 = PdfDocument.FromFile("doc2.pdf");
var merged = PdfDocument.Merge(pdf1, pdf2);
merged.SaveAs("merged.pdf");
var pdf1 = PdfDocument.FromFile("doc1.pdf");
var pdf2 = PdfDocument.FromFile("doc2.pdf");
var merged = PdfDocument.Merge(pdf1, pdf2);
merged.SaveAs("merged.pdf");
CONVERTER NOT RUNNING
$vbLabelText   $csharpLabel

Marcas de agua con HTML

var pdf = PdfDocument.FromFile("document.pdf");
pdf.ApplyWatermark("<div style='color: red; font-size: 48pt;'>DRAFT</div>");
pdf.SaveAs("watermarked.pdf");
var pdf = PdfDocument.FromFile("document.pdf");
pdf.ApplyWatermark("<div style='color: red; font-size: 48pt;'>DRAFT</div>");
pdf.SaveAs("watermarked.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Protección con contraseña

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

pdf.SecuritySettings.OwnerPassword = "owner123";
pdf.SecuritySettings.UserPassword = "user123";
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SecuritySettings.AllowUserPrinting = PdfPrintSecurity.NoPrint;

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

pdf.SecuritySettings.OwnerPassword = "owner123";
pdf.SecuritySettings.UserPassword = "user123";
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SecuritySettings.AllowUserPrinting = PdfPrintSecurity.NoPrint;

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

Firmas digitales

using IronPdf.Signing;

var pdf = PdfDocument.FromFile("document.pdf");
var signature = new PdfSignature("certificate.pfx", "password")
{
    SigningReason = "Document Approval",
    SigningLocation = "New York"
};
pdf.Sign(signature);
pdf.SaveAs("signed.pdf");
using IronPdf.Signing;

var pdf = PdfDocument.FromFile("document.pdf");
var signature = new PdfSignature("certificate.pfx", "password")
{
    SigningReason = "Document Approval",
    SigningLocation = "New York"
};
pdf.Sign(signature);
pdf.SaveAs("signed.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Operaciones asíncronas

var renderer = new ChromePdfRenderer();
var pdf = await renderer.RenderHtmlAsPdfAsync("<h1>Async PDF</h1>");
pdf.SaveAs("async_output.pdf");
var renderer = new ChromePdfRenderer();
var pdf = await renderer.RenderHtmlAsPdfAsync("<h1>Async PDF</h1>");
pdf.SaveAs("async_output.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Resumen comparativo de características

CaracterísticaPeachPDFIronPDF
HTML a PDFBásicoChromium completo
URL a PDFLimitado
Rejilla CSS/FlexboxNo
JavaScriptLimitadoES2024 completo
Fusionar PDF
Dividir PDFLimitado
Marcas de aguaLimitadoHTML completo
Encabezados/pies de páginaBásicoHTML completo
Firmas digitalesNo
PDF/ANo
Relleno de formulariosLimitado
Extracción de TextoBásico
Extracción de imágenesNo
Soporte de AsyncLimitado
MultiplataformaDesconocido

Problemas comunes de migración

Tema 1: Diferentes patrones de API

Problema: PeachPDFutiliza un patrón de conversión con salida de matriz de bytes;IronPDFutiliza un patrón de renderizado con salida PdfDocument.

Solución:

// PeachPDFpattern
var converter = new HtmlToPdfConverter();
var pdf = converter.Convert(html);
File.WriteAllBytes(path, pdf);

//IronPDFpattern
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs(path);
// PeachPDFpattern
var converter = new HtmlToPdfConverter();
var pdf = converter.Convert(html);
File.WriteAllBytes(path, pdf);

//IronPDFpattern
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs(path);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Edición 2: Guardar la diferencia de métodos

Problema: PeachPDFrequiere File.WriteAllBytes();IronPDFincorpora SaveAs().

Solución: Sustituir File.WriteAllBytes("path", pdf) por pdf.SaveAs("path").

Número 3: Objetos de encabezado/pie

Problema: PeachPDFutiliza propiedades de cadena;IronPDFutiliza propiedades de objeto.

Solución: Envolver cadenas HTML en objetos HtmlHeaderFooter con la propiedad HtmlFragment.


Lista de comprobación de la migración

Pre-Migración

  • [ ] Auditoría del uso de PeachPDFen el código base
  • [ ] Documentar configuraciones personalizadas
  • [ ] Tenga en cuenta todas las implementaciones de encabezado/pie de página
  • [ ] Obtenga la clave de licencia deIronPDFen ironpdf.com
  • [ ] Pruebe primero con la licencia de prueba de IronPDF

Cambios en el paquete

  • [ ] Eliminar el paquete NuGet PeachPDF
  • [Instale el paquete NuGet IronPdf: dotnet add package IronPdf

Cambios de código

  • [ ] Actualizar las importaciones de espacios de nombres (usando PeachPDF;usando IronPDF;)
  • [ ] Añadir usando IronPDF.Rendering; para la funcionalidad de encabezado/pie de página
  • [Reemplace HtmlToPdfConverter por ChromePdfRenderer
  • [ ] Sustituya converter.Convert(html)por renderer.RenderHtmlAsPdf(html)
  • [Reemplace <código>converter.ConvertUrl(url)</códigopor renderer.RenderUrlAsPdf(url)
  • [Reemplace <código>File.WriteAllBytes(path, pdf)</códigopor pdf.SaveAs(path)
  • [ ] Sustituir converter.Header/Footer por objetos RenderingOptions.HtmlHeader/HtmlFooter
  • [ ] Añadir inicialización de licencia al inicio de la aplicación

Posmigración

  • [ ] Probar la calidad de renderizado HTML
  • [ ] Comprobar que el resultado PDF se ajusta a las expectativas
  • [ ] Prueba de renderizado de encabezado/pie de página con números de página
  • [ ] Añadir nuevas funciones (seguridad, marcas de agua, fusión) según sea necesario

Conclusión

A la hora de elegir entre PeachPDFe IronPDF, la decisión depende en última instancia de las necesidades específicas del proyecto. PeachPDF, con su implementación .NET pura, es ideal para proyectos que necesitan una solución ligera y de código abierto sin necesidad de grandes conjuntos de funciones o soporte. Sin embargo,IronPDFtiene una clara ventaja en cuanto a capacidades más amplias, respaldo significativo de la comunidad y asistencia profesional, lo que lo convierte en una opción óptima para las empresas que buscan una solución comercial fiable con asistencia continua.

Los cambios clave en esta migración son:

  1. Clase del conversor: HtmlToPdfConverterChromePdfRenderer
  2. Método HTML: Convertir(html)RenderizarHtmlAsPdf(html)
  3. Método URL: ConvertirUrl(url)RenderizarUrlComoPdf(url)
  4. Tipo de retorno: byte[]PdfDocument
  5. Método de guardado: <código>File.WriteAllBytes()</código→ pdf.SaveAs()
  6. Headers/Footers: propiedades de cadena → objetos HtmlHeaderFooter
  7. Namespace: usando PeachPDF;usando IronPdf; + usando IronPdf.Rendering;
  8. Nuevas características: Firmas digitales, conformidad con PDF/A, compatibilidad total con CSS3/JavaScript y mucho más

IronPDF ofrece generación de PDF de nivel empresarial con funciones completas, desarrollo activo y asistencia profesional que PeachPDFno puede proporcionar. Con una amplia base de usuarios y una extensa documentación,IronPDFgarantiza la estabilidad a largo plazo y la compatibilidad con los marcos .NET modernos.

Explore la documentación completa de IronPDF, tutoriales y referencia de API para acelerar su migración a PeachPDF.

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