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

Cómo migrar de Pdfium a IronPDF en C#

La migración de Pdfium.NET aIronPDFtraslada su flujo de trabajo PDF .NET de una biblioteca centrada en la renderización con dependencias binarias nativas a una solución PDF completa que gestiona la creación, manipulación y renderización sin complejidad específica de la plataforma. Esta guía proporciona una ruta de migración completa, paso a paso, que elimina la gestión de dependencias nativas a la vez que añade capacidades que Pdfium no puede proporcionar.

Por qué migrar de Pdfium a IronPDF

Entender Pdfium.NET

Pdfium.NET es un envoltorio .NET para la biblioteca PDFium de Google, famosa por su eficacia y velocidad en la representación de documentos PDF. Se ha convertido en una importante biblioteca para los desarrolladores que se adentran en los entresijos de la representación de PDF en aplicaciones C#, ya que proporciona una reproducción de alta fidelidad del contenido PDF en entornos .NET.

Sin embargo, a pesar de su destreza en el renderizado, las capacidades de Pdfium.NET para crear y manipular documentos PDF son limitadas. Se ha creado principalmente para aplicaciones que requieren mostrar contenido PDF con precisión, con menos énfasis en la modificación o creación de nuevos PDF.

Limitaciones críticas de Pdfium

  1. Enfoque de solo representación: no se pueden crear archivos PDF a partir de HTML, imágenes o mediante programación. Las capacidades de Pdfium se limitan a la visualización y representación de archivos PDF.

  2. Sin manipulación de PDF: no se puede fusionar, dividir ni modificar el contenido del PDF. La fusión de PDF no se admite de forma nativa, por lo que será necesario utilizar otra biblioteca como iTextSharp o PdfSharp.

  3. Dependencias binarias nativas: requiere binarios PDFium específicos de la plataforma. Los desarrolladores necesitan gestionar binarios PDFium nativos, un aspecto que añade complejidad durante el despliegue y la distribución.

  4. Complejidad de implementación: se deben agrupar y administrar archivos DLL nativos por plataforma con carpetas x86, x64 y de tiempo de ejecución.

  5. Extracción de texto limitada: extracción de texto básica sin formato. La extracción de texto requiere trabajo adicional con Pdfium.NET.

  6. No HTML a PDF: No se puede convertir contenido web a PDF. La conversión de HTML a PDF no se admite de forma nativa en Pdfium.NET.

  7. Sin encabezados/pies de página: no se pueden agregar números de página ni repetir contenido.

  8. Sin marcas de agua: no se pueden estampar documentos con superposiciones.

  9. No hay soporte para formularios: no se pueden completar ni leer formularios PDF.

  10. Sin funciones de seguridad: no se pueden cifrar ni proteger con contraseña los archivos PDF.

Comparación entre Pdfium e IronPDF

Aspecto Pdfium.NET IronPDF
Enfoque principal Renderización/visualización Solución PDF completa
Fidelidad de renderización Renderizado de alta fidelidad Alto, especialmente para HTML/CSS/JS
Creación de PDF ✓(HTML, URL, imágenes)
Manipulación de PDF ✓(fusionar, dividir, editar)
HTML a PDF ✓(motor Chromium)
Marcas de agua
Cabeceras/Pies de página
Relleno de formularios
Seguridad
Dependencias nativas Requerido Ninguno (totalmente gestionado)
Traducción multiplataforma Configuración compleja Automático
Facilidad de implementación Complicado por las dependencias nativas Más fácil; menos complicaciones de dependencia

Para los equipos que planifican la adopción de .NET 10 y C# 14 hasta 2025 y 2026,IronPDFproporciona una base totalmente gestionada que elimina la gestión binaria nativa a la vez que añade funciones completas de creación y manipulación de PDF.


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 deIronPDF: Obtenga su clave de licencia en IronPDF

Cambios en el paquete NuGet

# Remove Pdfium packages
dotnet remove package Pdfium.NET
dotnet remove package Pdfium.Net.SDK
dotnet remove package PdfiumViewer

# Install IronPDF
dotnet add package IronPdf
# Remove Pdfium packages
dotnet remove package Pdfium.NET
dotnet remove package Pdfium.Net.SDK
dotnet remove package PdfiumViewer

# Install IronPDF
dotnet add package IronPdf
SHELL

Configuración de licencias

// Add at application startup (Program.cs or Startup.cs)
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
// Add at application startup (Program.cs or Startup.cs)
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
' Add at application startup (Program.vb or Startup.vb)
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY"
$vbLabelText   $csharpLabel

Identificar el uso de Pdfium

# Find Pdfium usage
grep -r "Pdfium\|PdfDocument\.Load\|\.Render\(" --include="*.cs" .

# Find native binary references
grep -r "pdfium\.dll\|pdfium\.so\|pdfium\.dylib" --include="*.csproj" --include="*.config" .

# Find platform-specific code
grep -r "#if.*64\|WIN32\|WIN64\|LINUX\|OSX" --include="*.cs" .
# Find Pdfium usage
grep -r "Pdfium\|PdfDocument\.Load\|\.Render\(" --include="*.cs" .

# Find native binary references
grep -r "pdfium\.dll\|pdfium\.so\|pdfium\.dylib" --include="*.csproj" --include="*.config" .

# Find platform-specific code
grep -r "#if.*64\|WIN32\|WIN64\|LINUX\|OSX" --include="*.cs" .
SHELL

Referencia completa de la API

Cambios en el espacio de nombres

// Pdfium.NET
using Pdfium;
using Pdfium.Net;
using PdfiumViewer;

// IronPDF
using IronPdf;
using IronPdf.Rendering;
using IronPdf.Editing;
// Pdfium.NET
using Pdfium;
using Pdfium.Net;
using PdfiumViewer;

// IronPDF
using IronPdf;
using IronPdf.Rendering;
using IronPdf.Editing;
Imports Pdfium
Imports Pdfium.Net
Imports PdfiumViewer

Imports IronPdf
Imports IronPdf.Rendering
Imports IronPdf.Editing
$vbLabelText   $csharpLabel

Asignaciones de clases principales

Pdfium.NET IronPDF
PdfDocument PdfDocument
PdfPage PdfPage
PdfPageCollection PdfPageCollection
(no disponible) ChromePdfRenderer
(no disponible) HtmlHeaderFooter

Mapas de carga de documentos

Pdfium.NET IronPDF
PdfDocument.Load(path) PdfDocument.FromFile(path)
PdfDocument.Load(stream) PdfDocument.FromStream(stream)
PdfDocument.Load(bytes) PdfDocument.FromBinaryData(bytes)
new PdfDocument(path) PdfDocument.FromFile(path)

Mapeo de propiedades de documentos

Pdfium.NET IronPDF
document.PageCount document.PageCount
document.Pages document.Pages
document.Pages[index] document.Pages[index]
document.GetPageSize(index) document.Pages[index].Width/Height

Mapas de extracción de texto

Pdfium.NET IronPDF
document.GetPdfText(pageIndex) document.Pages[index].Text
(bucle manual)_ document.ExtractAllText()
page.GetTextBounds() page.Text

Guardar asignaciones de documentos

Pdfium.NET IronPDF
document.Save(path) document.SaveAs(path)
document.Save(stream) document.Stream
(no disponible) document.BinaryData

Mapas de renderizado de páginas

Pdfium.NET IronPDF
page.Render(width, height) pdf.RasterizeToImageFiles(path, dpi)
page.Render(width, height, flags) Parámetro DPI
document.Render(index, width, height) pdf.RasterizeToImageFiles()
page.RenderToScale(scale) DPI: 72 * scale

Nuevas funciones no disponibles en Pdfium

Características de IronPDF Descripción
ChromePdfRenderer.RenderHtmlAsPdf() Crear a partir de HTML
ChromePdfRenderer.RenderUrlAsPdf() Crear a partir de URL
ChromePdfRenderer.RenderHtmlFileAsPdf() Crear a partir de un archivo HTML
PdfDocument.Merge() Combinar PDF
pdf.CopyPages() Extraer páginas
pdf.RemovePages() Eliminar páginas
pdf.InsertPdf() Insertar PDF en posición
pdf.ApplyWatermark() Añadir marcas de agua
pdf.AddHtmlHeaders() Añadir encabezados
pdf.AddHtmlFooters() Añadir pies de página
pdf.SecuritySettings Protección mediante contraseña
pdf.SignWithDigitalSignature() Firmas digitales
pdf.Form Relleno de formularios

Ejemplos de migración de código

Ejemplo 1: Extracción de texto de un PDF

Antes (Pdfium):

// NuGet: Install-Package PdfiumViewer
using PdfiumViewer;
using System;
using System.IO;
using System.Text;

class Program
{
    static void Main()
    {
        string pdfPath = "document.pdf";

        using (var document = PdfDocument.Load(pdfPath))
        {
            StringBuilder text = new StringBuilder();

            for (int i = 0; i < document.PageCount; i++)
            {
                // Note: PdfiumViewer has limited text extraction capabilities
                // Text extraction requires additional work with Pdfium.NET
                string pageText = document.GetPdfText(i);
                text.AppendLine(pageText);
            }

            Console.WriteLine(text.ToString());
        }
    }
}
// NuGet: Install-Package PdfiumViewer
using PdfiumViewer;
using System;
using System.IO;
using System.Text;

class Program
{
    static void Main()
    {
        string pdfPath = "document.pdf";

        using (var document = PdfDocument.Load(pdfPath))
        {
            StringBuilder text = new StringBuilder();

            for (int i = 0; i < document.PageCount; i++)
            {
                // Note: PdfiumViewer has limited text extraction capabilities
                // Text extraction requires additional work with Pdfium.NET
                string pageText = document.GetPdfText(i);
                text.AppendLine(pageText);
            }

            Console.WriteLine(text.ToString());
        }
    }
}
Imports PdfiumViewer
Imports System
Imports System.IO
Imports System.Text

Module Program
    Sub Main()
        Dim pdfPath As String = "document.pdf"

        Using document = PdfDocument.Load(pdfPath)
            Dim text As New StringBuilder()

            For i As Integer = 0 To document.PageCount - 1
                ' Note: PdfiumViewer has limited text extraction capabilities
                ' Text extraction requires additional work with Pdfium.NET
                Dim pageText As String = document.GetPdfText(i)
                text.AppendLine(pageText)
            Next

            Console.WriteLine(text.ToString())
        End Using
    End Sub
End Module
$vbLabelText   $csharpLabel

Después (IronPDF):

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

class Program
{
    static void Main()
    {
        string pdfPath = "document.pdf";

        var pdf = PdfDocument.FromFile(pdfPath);
        string text = pdf.ExtractAllText();

        Console.WriteLine(text);
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Program
{
    static void Main()
    {
        string pdfPath = "document.pdf";

        var pdf = PdfDocument.FromFile(pdfPath);
        string text = pdf.ExtractAllText();

        Console.WriteLine(text);
    }
}
Imports IronPdf
Imports System

Class Program
    Shared Sub Main()
        Dim pdfPath As String = "document.pdf"

        Dim pdf = PdfDocument.FromFile(pdfPath)
        Dim text As String = pdf.ExtractAllText()

        Console.WriteLine(text)
    End Sub
End Class
$vbLabelText   $csharpLabel

La diferencia aquí es significativa. Pdfium requiere un bucle manual a través de cada página con GetPdfText(pageIndex), construyendo un StringBuilder y administrando la declaración using para su eliminación adecuada. El código señala que "PdfiumViewer tiene capacidades limitadas de extracción de texto" y "la extracción de texto requiere trabajo adicional."

IronPDF simplifica esto a tres líneas: cargar con PdfDocument.FromFile(), extraer con ExtractAllText() y generar salida. El método ExtractAllText() maneja todas las páginas automáticamente con capacidades de extracción de texto más avanzadas. Si necesita extracción por página, puede utilizar pdf.Pages[index].Text. Consulte la documentación de extracción de texto para obtener opciones adicionales.

Ejemplo 2: Fusión de PDF

Antes (Pdfium):

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

// Note: PdfiumViewer does not have native PDF merging functionality
// You would need to use additional libraries or implement custom logic
class Program
{
    static void Main()
    {
        List<string> pdfFiles = new List<string> 
        { 
            "document1.pdf", 
            "document2.pdf", 
            "document3.pdf" 
        };

        // PdfiumViewer is primarily for rendering/viewing
        // PDF merging is not natively supported
        // You would need to use another library like iTextSharp or PdfSharp

        Console.WriteLine("PDF merging not natively supported in PdfiumViewer");
    }
}
// NuGet: Install-Package PdfiumViewer
using PdfiumViewer;
using System;
using System.IO;
using System.Collections.Generic;

// Note: PdfiumViewer does not have native PDF merging functionality
// You would need to use additional libraries or implement custom logic
class Program
{
    static void Main()
    {
        List<string> pdfFiles = new List<string> 
        { 
            "document1.pdf", 
            "document2.pdf", 
            "document3.pdf" 
        };

        // PdfiumViewer is primarily for rendering/viewing
        // PDF merging is not natively supported
        // You would need to use another library like iTextSharp or PdfSharp

        Console.WriteLine("PDF merging not natively supported in PdfiumViewer");
    }
}
Imports PdfiumViewer
Imports System
Imports System.IO
Imports System.Collections.Generic

' Note: PdfiumViewer does not have native PDF merging functionality
' You would need to use additional libraries or implement custom logic
Class Program
    Shared Sub Main()
        Dim pdfFiles As New List(Of String) From {
            "document1.pdf",
            "document2.pdf",
            "document3.pdf"
        }

        ' PdfiumViewer is primarily for rendering/viewing
        ' PDF merging is not natively supported
        ' You would need to use another library like iTextSharp or PdfSharp

        Console.WriteLine("PDF merging not natively supported in PdfiumViewer")
    End Sub
End Class
$vbLabelText   $csharpLabel

Después (IronPDF):

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

class Program
{
    static void Main()
    {
        List<string> pdfFiles = new List<string> 
        { 
            "document1.pdf", 
            "document2.pdf", 
            "document3.pdf" 
        };

        var pdf = PdfDocument.Merge(pdfFiles);
        pdf.SaveAs("merged.pdf");

        Console.WriteLine("PDFs merged successfully");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
using System.Collections.Generic;

class Program
{
    static void Main()
    {
        List<string> pdfFiles = new List<string> 
        { 
            "document1.pdf", 
            "document2.pdf", 
            "document3.pdf" 
        };

        var pdf = PdfDocument.Merge(pdfFiles);
        pdf.SaveAs("merged.pdf");

        Console.WriteLine("PDFs merged successfully");
    }
}
Imports IronPdf
Imports System
Imports System.Collections.Generic

Module Program
    Sub Main()
        Dim pdfFiles As New List(Of String) From {
            "document1.pdf",
            "document2.pdf",
            "document3.pdf"
        }

        Dim pdf = PdfDocument.Merge(pdfFiles)
        pdf.SaveAs("merged.pdf")

        Console.WriteLine("PDFs merged successfully")
    End Sub
End Module
$vbLabelText   $csharpLabel

Este ejemplo pone de manifiesto una carencia fundamental. Pdfium no puede combinar PDF: el código indica explícitamente que "PdfiumViewer no admite de forma nativa la combinación de PDF" y que "tendría que utilizar otra biblioteca como iTextSharp o PdfSharp"

IronPDF proporciona una fusión nativa con el método estático PdfDocument.Merge() que acepta una lista de rutas de archivos directamente. El resultado es un nuevo PdfDocument que guardas con SaveAs(). Más información sobre mezclar y dividir archivos PDF.

Ejemplo 3: Conversión de HTML a PDF

Antes (Pdfium):

// NuGet: Install-Package PdfiumViewer
using PdfiumViewer;
using System.IO;
using System.Drawing.Printing;

// Note: PdfiumViewer is primarily for viewing/rendering PDFs, not creating them from HTML
// For HTML to PDF with Pdfium.NET, you would need additional libraries
// This example shows a limitation of Pdfium.NET
class Program
{
    static void Main()
    {
        // Pdfium.NET does not have native HTML to PDF conversion
        // You would need to use a separate library to convert HTML to PDF
        // then use Pdfium for manipulation
        string htmlContent = "<h1>Hello World</h1>";

        // This functionality is not directly available in Pdfium.NET
        Console.WriteLine("HTML to PDF conversion not natively supported in Pdfium.NET");
    }
}
// NuGet: Install-Package PdfiumViewer
using PdfiumViewer;
using System.IO;
using System.Drawing.Printing;

// Note: PdfiumViewer is primarily for viewing/rendering PDFs, not creating them from HTML
// For HTML to PDF with Pdfium.NET, you would need additional libraries
// This example shows a limitation of Pdfium.NET
class Program
{
    static void Main()
    {
        // Pdfium.NET does not have native HTML to PDF conversion
        // You would need to use a separate library to convert HTML to PDF
        // then use Pdfium for manipulation
        string htmlContent = "<h1>Hello World</h1>";

        // This functionality is not directly available in Pdfium.NET
        Console.WriteLine("HTML to PDF conversion not natively supported in Pdfium.NET");
    }
}
Imports PdfiumViewer
Imports System.IO
Imports System.Drawing.Printing

' Note: PdfiumViewer is primarily for viewing/rendering PDFs, not creating them from HTML
' For HTML to PDF with Pdfium.NET, you would need additional libraries
' This example shows a limitation of Pdfium.NET
Class Program
    Shared Sub Main()
        ' Pdfium.NET does not have native HTML to PDF conversion
        ' You would need to use a separate library to convert HTML to PDF
        ' then use Pdfium for manipulation
        Dim htmlContent As String = "<h1>Hello World</h1>"

        ' This functionality is not directly available in Pdfium.NET
        Console.WriteLine("HTML to PDF conversion not natively supported in Pdfium.NET")
    End Sub
End Class
$vbLabelText   $csharpLabel

Después (IronPDF):

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

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        string htmlContent = "<h1>Hello World</h1>";

        var pdf = renderer.RenderHtmlAsPdf(htmlContent);
        pdf.SaveAs("output.pdf");

        Console.WriteLine("PDF created successfully");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        string htmlContent = "<h1>Hello World</h1>";

        var pdf = renderer.RenderHtmlAsPdf(htmlContent);
        pdf.SaveAs("output.pdf");

        Console.WriteLine("PDF created successfully");
    }
}
Imports IronPdf
Imports System

Class Program
    Shared Sub Main()
        Dim renderer = New ChromePdfRenderer()
        Dim htmlContent As String = "<h1>Hello World</h1>"

        Dim pdf = renderer.RenderHtmlAsPdf(htmlContent)
        pdf.SaveAs("output.pdf")

        Console.WriteLine("PDF created successfully")
    End Sub
End Class
$vbLabelText   $csharpLabel

Este ejemplo muestra la diferencia de capacidad más significativa. Pdfium indica explícitamente "La conversión de HTML a PDF no se admite de forma nativa en Pdfium.NET" y "Tendrías que utilizar una biblioteca independiente para convertir HTML a PDF."

IronPDF proporciona conversión nativa de HTML a PDF a través de ChromePdfRenderer, que utiliza un motor Chromium internamente para una representación precisa de HTML, CSS y JavaScript. El método RenderHtmlAsPdf() convierte cadenas HTML directamente en documentos PDF.IronPDFtambién puede renderizar URL con RenderUrlAsPdf() y archivos HTML con RenderHtmlFileAsPdf(). Consulte la documentación HTML a PDF para ver ejemplos completos.


Eliminación de dependencias nativas

Una de las ventajas más significativas de migrar de Pdfium aIronPDFes la eliminación de la gestión nativa de binarios.

Antes (Pdfium) - Despliegue complejo

MyApp/
├── papelera/
│├── MyApp.dll
│├── Pdfium.NET.dll
│ ├── x86/
││└── pdfium.dll
│ └── x64/
│ └── pdfium.dll
├── tiempos de ejecución/
│├── win-x86/native/
││└── pdfium.dll
│ └── win-x64/native/
│ └── pdfium.dll

Después (IronPDF) - Implementación limpia

MyApp/
├── papelera/
│├── MyApp.dll
│ └── IronPDF.dll # Todo incluido

Eliminar referencias binarias nativas

# Delete native PDFium binaries
rm -rf x86/ x64/ runtimes/

# Remove from .csproj
# Delete any <Content Include="pdfium.dll" /> entries
# Delete any <None Include="x86/pdfium.dll" /> entries
# Delete native PDFium binaries
rm -rf x86/ x64/ runtimes/

# Remove from .csproj
# Delete any <Content Include="pdfium.dll" /> entries
# Delete any <None Include="x86/pdfium.dll" /> entries
SHELL

Notas de migración críticas

Conversión de escala a PPP

Pdfium utiliza factores de escala;IronPDFutiliza DPI:

// Formula:IronPDFDPI = 72 × Pdfium scale
// Pdfium scale 2.0 →IronPDFDPI 144
pdf.RasterizeToImageFiles("*.png", DPI: 144);
// Formula:IronPDFDPI = 72 × Pdfium scale
// Pdfium scale 2.0 →IronPDFDPI 144
pdf.RasterizeToImageFiles("*.png", DPI: 144);
' Formula: IronPDFDPI = 72 × Pdfium scale
' Pdfium scale 2.0 → IronPDFDPI 144
pdf.RasterizeToImageFiles("*.png", DPI:=144)
$vbLabelText   $csharpLabel

Cambio de método de carga de documentos

// Pdfium
PdfDocument.Load(path)

// IronPDF
PdfDocument.FromFile(path)
// Pdfium
PdfDocument.Load(path)

// IronPDF
PdfDocument.FromFile(path)
$vbLabelText   $csharpLabel

Cambio de método de guardado

// Pdfium
document.Save(path)

// IronPDF
pdf.SaveAs(path)
// Pdfium
document.Save(path)

// IronPDF
pdf.SaveAs(path)
$vbLabelText   $csharpLabel

Simplificación del patrón de eliminación

// Pdfium: Requeridoexplicit disposal
using (var document = PdfDocument.Load(path))
using (var page = document.Pages[0])
using (var bitmap = page.Render(1024, 768))
{
    bitmap.Save("output.png");
}

// IronPDF: Simplified
var pdf = PdfDocument.FromFile(path);
pdf.RasterizeToImageFiles("output.png");
// Pdfium: Requeridoexplicit disposal
using (var document = PdfDocument.Load(path))
using (var page = document.Pages[0])
using (var bitmap = page.Render(1024, 768))
{
    bitmap.Save("output.png");
}

// IronPDF: Simplified
var pdf = PdfDocument.FromFile(path);
pdf.RasterizeToImageFiles("output.png");
Imports PdfiumViewer

' Pdfium: Requerido explicit disposal
Using document = PdfDocument.Load(path)
    Using page = document.Pages(0)
        Using bitmap = page.Render(1024, 768)
            bitmap.Save("output.png")
        End Using
    End Using
End Using

' IronPDF: Simplified
Dim pdf = PdfDocument.FromFile(path)
pdf.RasterizeToImageFiles("output.png")
$vbLabelText   $csharpLabel

Eliminación de código específico de la plataforma

// Pdfium: Requeridoplatform detection
#if WIN64
    // Load x64 pdfium.dll
#else
    // Load x86 pdfium.dll
#endif

// IronPDF: Remove all platform-specific code
// Just use the API directly
// Pdfium: Requeridoplatform detection
#if WIN64
    // Load x64 pdfium.dll
#else
    // Load x86 pdfium.dll
#endif

// IronPDF: Remove all platform-specific code
// Just use the API directly
$vbLabelText   $csharpLabel

Resumen comparativo de características

Característica Pdfium.NET IronPDF
Cargar PDF
Renderizado a imagen
Extraer texto ✓(básico) ✓(avanzado)
Información de la página
Crear a partir de HTML
Crear a partir de URL
Fusionar PDF
Dividir PDF
Añadir marcas de agua
Encabezados/pies de página
Relleno de formularios
Firmas digitales
Protección por contraseña
Dependencias nativas Requerido Ninguno
Multiplataforma Complejo Automático
Gestión de memoria Eliminación manual Simplificado

Lista de comprobación de la migración

Pre-Migración

  • Identificar todo el uso de Pdfium en el código base
  • Documentar las dimensiones/escalas de representación actuales utilizadas
  • Enumere las ubicaciones de los binarios nativos en el proyecto
  • Verificar el código de carga específico de la plataforma
  • Identificar las necesidades de creación de PDF (¿actualmente utiliza herramientas independientes?)
  • Revisar los patrones de eliminación para la conversión
  • Obtener la clave de licencia de IronPDF

Cambios en el paquete

  • Eliminar los paquetes NuGet Pdfium.NET, Pdfium.Net.SDK, PdfiumViewer
  • Eliminar los binarios nativos pdfium.dll de las carpetas x86/, x64/, runtimes/
  • Eliminar la compilación condicional específica de la plataforma
  • Actualizar .csproj para eliminar referencias binarias nativas
  • Instalar IronPdf el paquete NuGet : dotnet add package IronPdf

Cambios de código

  • Agregar configuración de clave de licencia al inicio
  • Reemplace PdfDocument.Load() con PdfDocument.FromFile()
  • Reemplace document.Save() con pdf.SaveAs()
  • Reemplace los bucles document.GetPdfText(i) con pdf.ExtractAllText()
  • Convertir factores de escala a valores DPI (DPI = 72 × escala)
  • Simplificar los patrones de eliminación (eliminar las declaraciones using anidadas)
  • Eliminar código específico de la plataforma

Posmigración

  • Pruebe la calidad de salida de la representación
  • Comparar los resultados de la extracción de texto
  • Pruebe la implementación multiplataforma
  • Añadir nuevas capacidades (HTML a PDF, fusión, marcas de agua, seguridad)
  • Actualización de la documentación

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

Equipo de soporte de Iron

Estamos disponibles online las 24 horas, 5 días a la semana.
Chat
Email
Llámame