Passer au contenu du pied de page
GUIDES DE MIGRATION

Comment migrer de MuPDF à IronPDF en C#

Migrer de MuPDFàIronPDF: Guide complet de migration en C

La migration de MuPDFversIronPDFtransforme votre flux de travail PDF .NET d'une bibliothèque de rendu uniquement, avec des problèmes de licence AGPL et des dépendances natives, en une solution PDF complète avec des capacités de création, de manipulation et de sécurité complètes. Ce guide fournit un chemin de migration complet, étape par étape, qui élimine la gestion des binaires natifs tout en ajoutant la conversion HTML-PDF que MuPDFne peut tout simplement pas fournir.

Pourquoi migrer de MuPDFà IronPDF

Les défis de MuPDF

MuPDF est un excellent moteur de rendu PDF, mais sa licence AGPL et son orientation uniquement sur le rendu créent des limitations importantes pour les développeurs .NET qui créent des applications commerciales :

  1. <Le piège de la licence AGPL : La licence virale de MuPDFnécessite soit l'open-sourcing de l'ensemble de votre application sous AGPL, soit l'achat de licences commerciales coûteuses avec des prix de vente opaques.

  2. Rendering-Only Focus : MuPDFest une visionneuse/rendeur - il n'est pas conçu pour la création de PDF à partir de HTML, les flux de production de documents, le remplissage de formulaires ou l'ajout de filigranes et d'en-têtes/pieds de page.

  3. Pas de support HTML : MuPDFne prend pas en charge la conversion directe de HTML en PDF. Vous devrez d'abord utiliser une autre bibliothèque pour convertir HTML dans un format pris en charge. Il s'agit d'une limitation fondamentale - MuPDFest avant tout un moteur de rendu/de visualisation de PDF.

  4. Dépendances natives : Les binaires spécifiques à une plateforme nécessitent une gestion manuelle pour Windows, Linux et macOS. Les déploiements Docker deviennent complexes avec les exigences des bibliothèques natives, et l'emballage des déploiements introduit des défis.

  5. <Manipulation limitée : aucune prise en charge intégrée de la fusion/séparation de PDF, de la rotation ou de la réorganisation des pages, des filigranes ou des annotations, ou des signatures numériques.

  6. C Complexité interop : les liaisons natives introduisent des problèmes de gestion de la mémoire, des bogues spécifiques à la plateforme et une surcharge de marshalling.

Comparaison MuPDFvs IronPDF

Fonction MuPDF IronPDF
Licence AGPL (virale) ou commerciale onéreuse Commercial avec une tarification transparente
Objectif principal Rendu/visualisation Solution PDF complète
HTML vers PDF Non pris en charge Moteur Chromium complet
Création de PDF Non pris en charge HTML, URL, images
Manipulation de PDF Limité Compléter (fusionner, diviser, éditer)
Dépendances Binaires natifs Gestion complète
Prise en charge de la plate-forme Manuel par plateforme Automatique
Prise en charge de l'asynchronisme Limité Async/await complet
Intégration .NET C interop Natif .NET

Pour les équipes qui prévoient l'adoption de .NET 10 et C# 14 jusqu'en 2025 et 2026,IronPDFconstitue une base à l'épreuve du temps en tant que bibliothèque .NET entièrement gérée sans complexité d'interopérabilité native.


Évaluation de la complexité de la migration

Estimation de l'effort par fonctionnalité

Fonction Complexité de la migration Notes
Chargement du document Très faible Remplacement direct de la méthode
Extraction de texte Très faible API plus simple
Fusion de PDF Faible Méthode statique contre boucles manuelles
Rendu d'image Faible RasterizeToImageFiles vs pixmaps
HTML vers PDF N/A (Nouvelle capacité) Pas possible dans MuPDF
Sécurité/marques de fabrique N/A (Nouvelle capacité) Pas possible dans MuPDF

Changement de paradigme

Le changement fondamental dans cette migration MuPDFest de passer d'un visualisateur de rendu uniquement à une solution PDF complète :

MuPDF :   MuPDFContext → MuPDFDocument → Page iteration → Render/Extract only
IronPDF : PdfDocument.FromFile() → Manipulation complète → Créer/Modifier/Fusionner/Sécuriser

Avant de commencer

Prérequis

  1. Environnement .NET : .NET Framework 4.6.2+ ou .NET Core 3.1+ / .NET 5/6/7/8/9+
  2. Accès NuGet : Capacité à installer des paquets NuGet
  3. Licence IronPDF : Obtenez votre clé de licence sur ironpdf.com

Modifications du paquet NuGet

# Remove MuPDFpackages
dotnet remove package MuPDF.NET
dotnet remove package MuPDFCore
dotnet remove package MuPDFCore.MuPDFWrapper

# Install IronPDF
dotnet add package IronPdf
# Remove MuPDFpackages
dotnet remove package MuPDF.NET
dotnet remove package MuPDFCore
dotnet remove package MuPDFCore.MuPDFWrapper

# Install IronPDF
dotnet add package IronPdf
SHELL

<Supprimez également les binaires MuPDFnatifs de votre déploiement :

  • Supprimer mupdf.dll, libmupdf.so, libmupdf.dylib
  • Supprimer les dossiers spécifiques à la plateforme (runtimes/*/native/)
  • Mise à jour des fichiers Docker pour supprimer l'installation de MuPDF

Configuration de la licence

// 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";
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Identifier l'utilisation de MuPDF

# Find all MuPDFreferences
grep -r "MuPDF\|MuPDFCore\|MuPDFDocument" --include="*.cs" .
# Find all MuPDFreferences
grep -r "MuPDF\|MuPDFCore\|MuPDFDocument" --include="*.cs" .
SHELL

Référence API complète

Chargement du document

MuPDF IronPDF Notes
new MuPDFDocument(path) PdfDocument.FromFile(path) Charger à partir d'un fichier
new MuPDFDocument(stream) PdfDocument.FromStream(stream) Charger à partir du flux
document.Dispose() pdf.Dispose() Nettoyage

Accès à la page

MuPDF IronPDF Notes
document.Pages.Count pdf.PageCount Nombre de pages
document.Pages[index] pdf.Pages[index] Page d'accès
page.GetText() page.Text Texte de la page

Extraction de texte

MuPDF IronPDF Notes
Loop through document.Pages[i].GetText() pdf.ExtractAllText() Tout le texte à la fois

Création de PDF (non disponible dans MuPDF)

MuPDF IronPDF Notes
(non pris en charge)(non pris en charge)(non pris en charge)(non pris en charge) ChromePdfRenderer.RenderHtmlAsPdf(html) HTML vers PDF
(non pris en charge)(non pris en charge)(non pris en charge)(non pris en charge) ChromePdfRenderer.RenderUrlAsPdf(url) URL vers PDF

Manipulation de fichiers PDF (limitée à MuPDF)

MuPDF IronPDF Notes
Boucles de copie de page de manuel PdfDocument.Merge(pdf1, pdf2) Fusionner des PDF
(non pris en charge)(non pris en charge)(non pris en charge)(non pris en charge) pdf.ApplyWatermark(html) Ajouter un filigrane
(non pris en charge)(non pris en charge)(non pris en charge)(non pris en charge) pdf.SecuritySettings Protection par mot de passe

Exemples de migration de code

Exemple 1 : Conversion de HTML en PDF (MuPDF ne peut pas faire cela)

Avant (MuPDF):

// NuGet: Install-Package MuPDF.NET
using MuPDFCore;
using System.IO;

class Program
{
    static void Main()
    {
        // MuPDFdoesn't support HTML vers PDFconversion directly
        // You would need to use another library to convert HTML to a supported format first
        // This is a limitation - MuPDFis primarily a PDF renderer/viewer

        // Alternative: Use a browser engine or intermediate conversion
        string html = "<html><body><h1>Hello World</h1></body></html>";

        // Not natively supported in MuPDF
        throw new NotSupportedException("MuPDF does not support direct HTML vers PDFconversion");
    }
}
// NuGet: Install-Package MuPDF.NET
using MuPDFCore;
using System.IO;

class Program
{
    static void Main()
    {
        // MuPDFdoesn't support HTML vers PDFconversion directly
        // You would need to use another library to convert HTML to a supported format first
        // This is a limitation - MuPDFis primarily a PDF renderer/viewer

        // Alternative: Use a browser engine or intermediate conversion
        string html = "<html><body><h1>Hello World</h1></body></html>";

        // Not natively supported in MuPDF
        throw new NotSupportedException("MuPDF does not support direct HTML vers PDFconversion");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Après (IronPDF):

// NuGet: Install-Package IronPdf
using IronPdf;

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

        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("output.pdf");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        string 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

Cet exemple met en évidence la limite la plus importante de MuPDF: il ne peut pas du tout convertir du HTML en PDF. Le code MuPDFlance explicitement NotSupportedException parce que la conversion de HTML en PDF n'est tout simplement pas une fonctionnalité offerte par MuPDF. Si vous aviez besoin de cette fonctionnalité avec MuPDF, vous deviez utiliser une bibliothèque distincte comme wkhtmltopdf ou un moteur de navigateur, puis charger le PDF résultant avec MuPDFpour l'afficher.

Le ChromePdfRenderer d'IronPDF utilise un moteur Chromium complet pour effectuer le rendu HTML avec une prise en charge complète de CSS3, JavaScript et des normes web modernes. La méthode RenderHtmlAsPdf() accepte directement les chaînes HTML. Voir la documentation HTML vers PDF pour des options de rendu supplémentaires, notamment le rendu d'URL et la conversion de fichiers HTML.

Exemple 2 : Extraction de texte

Avant (MuPDF):

// NuGet: Install-Package MuPDF.NET
using MuPDFCore;
using System;
using System.Text;

class Program
{
    static void Main()
    {
        using (MuPDFDocument document = new MuPDFDocument("input.pdf"))
        {
            StringBuilder allText = new StringBuilder();

            for (int i = 0; i < document.Pages.Count; i++)
            {
                string pageText = document.Pages[i].GetText();
                allText.AppendLine(pageText);
            }

            Console.WriteLine(allText.ToString());
        }
    }
}
// NuGet: Install-Package MuPDF.NET
using MuPDFCore;
using System;
using System.Text;

class Program
{
    static void Main()
    {
        using (MuPDFDocument document = new MuPDFDocument("input.pdf"))
        {
            StringBuilder allText = new StringBuilder();

            for (int i = 0; i < document.Pages.Count; i++)
            {
                string pageText = document.Pages[i].GetText();
                allText.AppendLine(pageText);
            }

            Console.WriteLine(allText.ToString());
        }
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Après (IronPDF):

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

class Program
{
    static void Main()
    {
        var pdf = PdfDocument.FromFile("input.pdf");
        string text = pdf.ExtractAllText();

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

class Program
{
    static void Main()
    {
        var pdf = PdfDocument.FromFile("input.pdf");
        string text = pdf.ExtractAllText();

        Console.WriteLine(text);
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

L'approche MuPDFnécessite la création d'un bloc using avec un MuPDFDocument, l'itération manuelle à travers document.Pages.Countavec une boucle for, l'appel de document.Pages[i].GetText() pour chaque page, et la construction du texte avec un StringBuilder. Il s'agit de 12 lignes de code pour une simple extraction de texte.

IronPDF réduit cela à 3 lignes : charger le document avec PdfDocument.FromFile(), appeler ExtractAllText(), et imprimer le résultat. Pas d'itération manuelle, pas de StringBuilder, pas de gestion explicite des ressources avec des blocs using pour cette simple opération. En savoir plus sur l'extraction de texte à partir de PDF.

Exemple 3 : fusionner plusieurs PDF

Avant (MuPDF):

// NuGet: Install-Package MuPDF.NET
using MuPDFCore;
using System.IO;

class Program
{
    static void Main()
    {
        using (MuPDFDocument doc1 = new MuPDFDocument("file1.pdf"))
        using (MuPDFDocument doc2 = new MuPDFDocument("file2.pdf"))
        {
            // Create a new document
            using (MuPDFDocument mergedDoc = MuPDFDocument.Create())
            {
                // Copy pages from first document
                for (int i = 0; i < doc1.Pages.Count; i++)
                {
                    mergedDoc.CopyPage(doc1, i);
                }

                // Copy pages from second document
                for (int i = 0; i < doc2.Pages.Count; i++)
                {
                    mergedDoc.CopyPage(doc2, i);
                }

                mergedDoc.Save("merged.pdf");
            }
        }
    }
}
// NuGet: Install-Package MuPDF.NET
using MuPDFCore;
using System.IO;

class Program
{
    static void Main()
    {
        using (MuPDFDocument doc1 = new MuPDFDocument("file1.pdf"))
        using (MuPDFDocument doc2 = new MuPDFDocument("file2.pdf"))
        {
            // Create a new document
            using (MuPDFDocument mergedDoc = MuPDFDocument.Create())
            {
                // Copy pages from first document
                for (int i = 0; i < doc1.Pages.Count; i++)
                {
                    mergedDoc.CopyPage(doc1, i);
                }

                // Copy pages from second document
                for (int i = 0; i < doc2.Pages.Count; i++)
                {
                    mergedDoc.CopyPage(doc2, i);
                }

                mergedDoc.Save("merged.pdf");
            }
        }
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Après (IronPDF):

// NuGet: Install-Package IronPdf
using IronPdf;

class Program
{
    static void Main()
    {
        var pdf1 = PdfDocument.FromFile("file1.pdf");
        var pdf2 = PdfDocument.FromFile("file2.pdf");

        var merged = PdfDocument.Merge(pdf1, pdf2);
        merged.SaveAs("merged.pdf");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;

class Program
{
    static void Main()
    {
        var pdf1 = PdfDocument.FromFile("file1.pdf");
        var pdf2 = PdfDocument.FromFile("file2.pdf");

        var merged = PdfDocument.Merge(pdf1, pdf2);
        merged.SaveAs("merged.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

L'opération de fusion de MuPDFest particulièrement verbeuse. Vous devez ouvrir les deux documents sources dans des blocs utilisant imbriqués, créer un nouveau document vide avec MuPDFDocument.Create(), parcourir chaque page du premier document en appelant CopyPage(), parcourir chaque page du second document en appelant CopyPage(), et enfin sauvegarder. Il s'agit de plus de 20 lignes de code avec une imbrication complexe.

La méthode statique PdfDocument.Merge() d'IronPDF accepte plusieurs documents PDF et renvoie un seul document fusionné. L'ensemble de l'opération consiste en 4 lignes de code lisible. Pour fusionner plusieurs documents, vous pouvez passer une liste : PdfDocument.Merge(pdfList). Voir la documentation sur la fusion et le fractionnement des PDF pour des options supplémentaires.


Notesde migration essentielles

Supprimer les binaires natifs

MuPDF nécessite des bibliothèques natives spécifiques à la plateforme. Après avoir migré vers IronPDF, supprimez tous les binaires natifs de MuPDF:

# Delete native libraries
rm -f mupdf*.dll libmupdf*.so libmupdf*.dylib

# Remove runtime folders
rm -rf runtimes/*/native/

# Update Docker files to remove MuPDFinstallation
# Delete native libraries
rm -f mupdf*.dll libmupdf*.so libmupdf*.dylib

# Remove runtime folders
rm -rf runtimes/*/native/

# Update Docker files to remove MuPDFinstallation
SHELL

IronPDF est un code .NET entièrement géré - pas de binaires natifs à gérer d'une plateforme à l'autre.

Le modèle Dispose simplifié

MuPDF nécessite un contexte explicite et une gestion des documents :

// MuPDF: Nested using blocks required
using (MuPDFDocument document = new MuPDFDocument("input.pdf"))
{
    // Work with document
}

// IronPDF: Simpler pattern
var pdf = PdfDocument.FromFile("input.pdf");
// Work with pdf
// MuPDF: Nested using blocks required
using (MuPDFDocument document = new MuPDFDocument("input.pdf"))
{
    // Work with document
}

// IronPDF: Simpler pattern
var pdf = PdfDocument.FromFile("input.pdf");
// Work with pdf
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Modification du modèle d'itération de la page

MuPDF utilise l'itération basée sur l'index avec un nombre de pages explicite :

// MuPDF
for (int i = 0; i < document.Pages.Count; i++)
{
    var pageText = document.Pages[i].GetText();
}

//IronPDF(foreach supported)
foreach (var page in pdf.Pages)
{
    var pageText = page.Text;
}
// MuPDF
for (int i = 0; i < document.Pages.Count; i++)
{
    var pageText = document.Pages[i].GetText();
}

//IronPDF(foreach supported)
foreach (var page in pdf.Pages)
{
    var pageText = page.Text;
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Nouvelles fonctionnalités disponibles

Après avoir migré vers IronPDF, vous bénéficiez de fonctionnalités que MuPDFne peut pas vous offrir :

// Création de PDFfrom HTML (not possible in MuPDF)
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello</h1>");

// Watermarks (not possible in MuPDF)
pdf.ApplyWatermark("<div style='color:red;opacity:0.3;'>DRAFT</div>");

// Password Protection (not possible in MuPDF)
pdf.SecuritySettings.OwnerPassword = "admin";
pdf.SecuritySettings.UserPassword = "user";

// Headers and Footers (not possible in MuPDF)
pdf.AddTextHeader("Document Title");
pdf.AddTextFooter("Page {page} of {total-pages}");
// Création de PDFfrom HTML (not possible in MuPDF)
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello</h1>");

// Watermarks (not possible in MuPDF)
pdf.ApplyWatermark("<div style='color:red;opacity:0.3;'>DRAFT</div>");

// Password Protection (not possible in MuPDF)
pdf.SecuritySettings.OwnerPassword = "admin";
pdf.SecuritySettings.UserPassword = "user";

// Headers and Footers (not possible in MuPDF)
pdf.AddTextHeader("Document Title");
pdf.AddTextFooter("Page {page} of {total-pages}");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Dépannage

Édition 1 : MuPDFDocument introuvable

Problème : la classe MuPDFDocument n'existe pas dans IronPDF.

Solution : Utilisez PdfDocument.FromFile() :

// MuPDF
using (MuPDFDocument document = new MuPDFDocument("input.pdf"))

// IronPDF
var pdf = PdfDocument.FromFile("input.pdf");
// MuPDF
using (MuPDFDocument document = new MuPDFDocument("input.pdf"))

// IronPDF
var pdf = PdfDocument.FromFile("input.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Sujet 2 : Pages.Count introuvables

Problème : le motif document.Pages.Countne fonctionne pas.

Solution : Utilisez pdf.PageCount:

// MuPDF
for (int i = 0; i < document.Pages.Count; i++)

// IronPDF
for (int i = 0; i < pdf.PageCount; i++)
// Or use: foreach (var page in pdf.Pages)
// MuPDF
for (int i = 0; i < document.Pages.Count; i++)

// IronPDF
for (int i = 0; i < pdf.PageCount; i++)
// Or use: foreach (var page in pdf.Pages)
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Sujet 3 : GetText() introuvable

Problème : la méthode page.GetText()n'existe pas.

Solution : Utilisez la propriété page.Textou pdf.ExtractAllText():

// MuPDF
string pageText = document.Pages[i].GetText();

// IronPDF
string pageText = pdf.Pages[i].Text;
// Or for all text:
string allText = pdf.ExtractAllText();
// MuPDF
string pageText = document.Pages[i].GetText();

// IronPDF
string pageText = pdf.Pages[i].Text;
// Or for all text:
string allText = pdf.ExtractAllText();
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Édition 4 : CopyPage introuvable

Problème : Modèle de copie manuelle de page pour la fusion.

Solution : Utilisez la fonction statique PdfDocument.Merge() :

// MuPDF
mergedDoc.CopyPage(doc1, i);

// IronPDF
var merged = PdfDocument.Merge(pdf1, pdf2);
// MuPDF
mergedDoc.CopyPage(doc1, i);

// IronPDF
var merged = PdfDocument.Merge(pdf1, pdf2);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Liste de contrôle de la migration

Pré-migration

  • [Inventorier tous les usages de MuPDFdans la base de code
  • [Documenter toutes les opérations de rendu (DPI, facteurs d'échelle)
  • [Identifier les besoins en matière de création de PDF (utilisation actuelle d'outils externes)
  • [Liste des exigences en matière d'extraction de texte
  • [La traduction doit rester professionnelle, en préservant l'exactitude technique tout en expliquant les caractéristiques et les avantages de ces outils de développement
  • [Obtenir la clé de licence IronPDF

Modifications du paquet

  • supprimer le paquet MuPDF.NET [ ] Supprimer le paquet MuPDF.NET [ ]
  • supprimer le paquet MuPDFCore [ ] Supprimer le paquet MuPDFCore [ ]
  • supprimer le paquet MuPDFCore.MuPDFWrapper [ ] Supprimer le paquet MuPDFCore.MuPDFWrapper [ ]
  • [Installer le package NuGet IronPdf : dotnet add package IronPdf
  • [Mise à jour des importations d'espaces de noms

Modifications du code

  • [Ajouter la configuration de la clé de licence au démarrage
  • [Remplacer MuPDFDocument par PdfDocument.FromFile()
  • [Remplacer document.Pages.Countpar pdf.PageCount
  • [Remplacer page.GetText()par page.Textou pdf.ExtractAllText()
  • [Remplacer les boucles manuelles CopyPage par PdfDocument.Merge()
  • [Supprimer les blocs utilisant imbriqués pour la gestion du contexte
  • [Ajouter le code de création de PDF si nécessaire (HTML vers PDF)

Post-Migration

  • [Supprimer les binaires MuPDFnatifs du projet
  • [Mise à jour des fichiers Docker pour supprimer l'installation de MuPDF
  • [Supprimer les dossiers d'exécution spécifiques à la plate-forme
  • [Exécuter des tests de régression en comparant les résultats obtenus
  • [Test sur toutes les plateformes cibles (Windows, Linux, macOS)
  • [Envisager d'ajouter de nouvelles fonctionnalités (filigranes, sécurité, en-têtes/pieds de page)

Conclusion

La migration de MuPDFversIronPDFélimine les problèmes de licence AGPL, la gestion des binaires natifs et la limitation au rendu uniquement, tout en ajoutant des capacités complètes de création et de manipulation de PDF. Le passage d'une bibliothèque de visualisation à une solution PDF complète signifie que vous pouvez consolider plusieurs outils dans une seule bibliothèque.

Les principaux changements apportés à cette migration sont les suivants :

  1. <Licence : AGPL (virale) → Commerciale (transparente)
  2. Focus : Rendu uniquement → Solution PDF complète
  3. HTML vers PDF : Non pris en charge → Moteur Chromium complet
  4. Dépendances : Binaires natifs → Entièrement gérés
  5. Fusion : Boucles de pages manuelles → PdfDocument.Merge()
  6. Extraction de texte : Boucle + StringBuilder → ExtractAllText()

Explorez la documentation complète IronPDF, tutoriel, et référence API pour accélérer votre migration vers IronPDF.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite