Passer au contenu du pied de page
COMPARAISONS DE PRODUITS

Une Comparaison Entre IronPDF & Foxit PDF SDK

Les documents PDF sont devenus largement utilisés comme format de fichier pour partager et présenter des informations. Les développeurs ont souvent besoin de générer des documents PDF à partir de leurs applications ou de manipuler ceux existants pour répondre à leurs besoins. C'est là que les SDK de traitement PDF s'avèrent utiles. Ces SDK fournissent aux développeurs les outils et fonctionnalités nécessaires pour créer, éditer et manipuler des documents PDF au sein de leurs applications.

Foxit PDF SDK et IronPDF sont deux des SDK de traitement PDF les plus populaires disponibles sur le marché. Les deux SDK offrent une large gamme de fonctionnalités pour répondre aux besoins des développeurs, mais ils diffèrent sur certains aspects qui les rendent adaptés à différents scénarios.

Dans cet article, nous allons explorer les caractéristiques et avantages de Foxit PDF SDK et d'IronPDF, et faire une comparaison côte à côte. Nous examinerons les forces et faiblesses de chaque SDK et fournirons une analyse complète de leurs capacités. Cela vous aidera à choisir le SDK de traitement PDF qui répond le mieux à vos besoins spécifiques.

Vue d'ensemble de IronPDF

IronPDF is a powerful PDF processing SDK developed by Iron Software qui permet aux développeurs de créer, éditer et manipuler des documents PDF au sein de leurs applications .NET. Il fournit un ensemble complet d'outils et de fonctionnalités qui répondent aux besoins des développeurs travaillant régulièrement avec des documents PDF.

Fonctionnalités d'IronPDF

Conversion HTML en PDF

IronPDF permet aux développeurs de convertir du code HTML en documents PDF facilement. Le processus de conversion est simple et rapide, et les développeurs peuvent contrôler la sortie en définissant diverses options, telles que la taille de la page, les marges et l'orientation. IronPDF prend également en charge des options de formatage avancées, telles que les en-têtes et pieds de page, qui permettent aux développeurs de peaufiner la mise en page de la sortie PDF. Les développeurs peuvent également spécifier quels éléments du code HTML devraient être inclus dans la sortie PDF, permettant un meilleur contrôle sur le contenu du document PDF résultant.

Générer des fichiers PDF

L'une des principales caractéristiques de IronPDF est la possibilité de générer des PDF à partir d'une variété de sources, y compris HTML, URL, JavaScript, CSS et de nombreux formats d'image. Cela signifie que les développeurs peuvent créer des documents PDF directement à partir de pages Web ou d'images, sans avoir besoin de conversion ou de manipulation manuelle. En utilisant le moteur de rendu avancé d'IronPDF, les développeurs peuvent convertir précisément et de manière fiable des pages Web complexes en documents PDF de haute qualité. Cette fonctionnalité est particulièrement utile pour les applications qui ont besoin de générer des rapports PDF, des factures ou d'autres documents à la volée, car elle simplifie le processus et réduit la quantité d'intervention manuelle requise.

Extraction de PDF

La fonctionnalité d'extraction de PDF d'IronPDF permet aux développeurs d'extraire différents types de contenu à partir de documents PDF, y compris du texte, des images et d'autres données. Cela peut être utile pour réutiliser du contenu dans d'autres applications ou pour analyser des données PDF. IronPDF offre également des capacités avancées d'extraction de texte, permettant aux développeurs d'extraire du texte avec le formatage intact, ce qui peut être difficile à obtenir avec d'autres outils d'extraction de PDF. De plus, IronPDF prend en charge l'extraction d'images, permettant aux développeurs d'extraire des images dans divers formats, tels que PNG ou JPEG, à partir de documents PDF. Avec ces puissantes fonctionnalités d'extraction de PDF, IronPDF fournit aux développeurs un outil flexible et efficace pour travailler avec des données PDF.

Annoter et remplir des formulaires

IronPDF prend en charge les annotations et le remplissage des formulaires, qui sont essentiels pour les applications nécessitant une interaction utilisateur avec des documents PDF. Les développeurs peuvent ajouter du texte, des images et d'autres éléments aux documents PDF, et inclure des champs de formulaire que les utilisateurs peuvent remplir. IronPDF fournit également des API pour travailler avec les données des formulaires PDF, permettant aux développeurs d'extraire et de manipuler les données de formulaire au sein de leurs applications.

Contrôle de la sortie PDF

IronPDF offre une gamme d'options pour contrôler la sortie des documents PDF. Les développeurs peuvent définir diverses propriétés telles que la taille de la page, les marges et l'orientation. Ils peuvent également spécifier le niveau de compression, les paramètres de sécurité et d'autres options avancées pour la sortie PDF. De plus, IronPDF propose une variété d'options pour travailler avec les pages PDF, notamment la fusion, la séparation et le réordonnancement des pages au sein d'un document PDF.

Prise en charge du multithreading et de l'asynchrone

IronPDF offre une prise en charge complète du multithreading et de l'asynchrone, ce qui optimise les performances des tâches de traitement PDF. Avec la prise en charge du multithreading, les développeurs peuvent effectuer des tâches de traitement PDF sur plusieurs threads simultanément, ce qui se traduit par des performances améliorées et des temps d'exécution plus rapides. Le support asynchrone permet aux développeurs d'effectuer des tâches de longue durée comme la conversion de PDF ou l'extraction d'images en arrière-plan, sans bloquer le thread principal de l'application. Cela garantit que l'application reste réactive et offre une meilleure expérience utilisateur. En tirant parti de ces fonctionnalités, les développeurs peuvent créer des applications haute performance qui sont efficaces et fiables.

Sécurité complète

Les fonctionnalités de sécurité d'IronPDF offrent aux développeurs une panoplie d'outils pour protéger les documents PDF, assurant la sécurité et l'intégrité des données sensibles. La protection par mot de passe peut être définie au niveau du document ou de la page, restreignant l'accès à certaines fonctions telles que l'impression, la copie ou la modification. Les options de cryptage incluent le cryptage 40 bits et 128 bits, fournissant une couche de protection robuste contre les accès non autorisés. Les signatures numériques et les fonctionnalités de gestion des certificats permettent aux développeurs d'authentifier le signataire d'un document et de garantir qu'il n'a pas été modifié. Ces fonctionnalités font d'IronPDF un excellent choix pour les applications nécessitant des fonctionnalités de sécurité pour protéger les données sensibles.

Prise en charge des langues .NET

IronPDF a été conçu spécifiquement pour les développeurs .NET, et il offre une intégration transparente avec les langues .NET telles que C# et VB.NET. Le SDK propose une gamme d'API qui facilitent la création, l'édition et la manipulation de documents PDF au sein des applications .NET. Les développeurs peuvent également profiter de la documentation étendue et des exemples de code qu'IronPDF fournit, facilitant ainsi le démarrage avec le SDK. IronPDF est également disponible pour Java.

Vue d'ensemble de Foxit PDF SDK

Foxit PDF SDK est un kit de développement logiciel robuste qui permet aux développeurs d'intégrer des fonctionnalités de traitement PDF dans leurs applications. Il propose des fonctionnalités telles que la création, la lecture, l'édition et l'annotation de documents PDF, ainsi que la possibilité pour les développeurs de convertir des fichiers PDF.

Création et conversion de PDF

Foxit PDF SDK permet aux développeurs de créer de nouveaux documents PDF à partir de zéro ou de convertir des documents existants au format PDF. Il prend en charge un large éventail de formats de fichiers, y compris Microsoft Word, Excel, PowerPoint, entre autres. Le SDK prend également en charge la conversion depuis des formats d'image tels que JPEG, PNG et TIFF vers PDF.

Édition de PDF

Foxit PDF SDK fournit aux développeurs un ensemble d'outils puissants d'édition pour modifier des documents PDF. Cela inclut des outils d'édition de texte, recadrage d'image, réarrangement des pages, et ajout de filigranes ou arrière-plans. Le SDK permet également d'ajouter ou de supprimer des pages, de fusionner ou de diviser des fichiers PDF, et de modifier les métadonnées du document.

Annotation de PDF

Foxit PDF SDK permet aux développeurs d'ajouter des annotations aux documents PDF. Ces annotations incluent des surlignages, commentaires, tampons et autres aides visuelles. Il offre également la possibilité de créer des outils d'annotation personnalisés, tels que des signatures ou des tampons en caoutchouc.

Sécurité des PDF

Foxit PDF SDK fournit aux développeurs des fonctionnalités de sécurité avancées pour protéger les documents PDF contre les accès non autorisés. Cela inclut la protection par mot de passe, les signatures numériques, le cryptage et la gestion des certificats.

Optimisation de PDF

Foxit PDF SDK inclut des outils pour optimiser les documents PDF pour un chargement plus rapide et de meilleures performances. Cela inclut des fonctionnalités telles que la compression, la réduction de la résolution des images, l'incorporation des polices, et plus encore. Ces fonctionnalités d'optimisation peuvent aider à réduire la taille des fichiers et à améliorer les temps de chargement, rendant les documents PDF plus accessibles et conviviaux.

Remplissage de formulaires PDF

Foxit PDF SDK permet aux développeurs de créer et de remplir des formulaires PDF. Cela inclut la possibilité de créer des formulaires dynamiques pouvant être remplis de manière programmatique. Le SDK prend également en charge la validation des champs de formulaire et l'extraction des données, facilitant la collecte et l'analyse des données du formulaire.

Extraction de PDF

Foxit PDF SDK fournit aux développeurs des outils pour extraire du texte, des images et d'autres contenus à partir de documents PDF. Cela peut être utile pour réutiliser du contenu dans d'autres applications ou pour analyser des données PDF.

Maintenant, discutons d'un exemple de code de base pour les deux bibliothèques.

Support de Bootstrap et des frameworks CSS modernes

Pour les applications Web modernes générant des rapports PDF et des documents, le support des frameworks Bootstrap et CSS est crucial. La capacité de convertir directement des interfaces stylées avec Bootstrap en PDF sans modification économise un temps de développement significatif et assure la cohérence du design entre les sorties Web et PDF.

IronPDF : Prise en charge complète de Bootstrap et du framework CSS

  • Bootstrap 5 : Prise en charge complète des mises en page flexbox, des grilles CSS, des classes utilitaires, et de tous les systèmes de composants
  • Bootstrap 4 : Composants de carte complets, éléments de navigation, utilitaires de flexion, et design réactif
  • Tailwind CSS : Toutes les classes utilitaires sont rendues avec précision
  • Foundation : Système de grille complet et bibliothèque de composants
  • CSS3 moderne : Flexbox, CSS Grid, propriétés personnalisées, animations, transitions et transformations

Real-world validation: IronPDF successfully renders the Bootstrap homepage and all official examples with pixel-perfect accuracy.

Exemple de code : Système de notification avec alertes

using IronPdf;

// Set your IronPDF license key
IronPdf.License.LicenseKey = "License-Key goes here";

var renderer = new ChromePdfRenderer();
string bootstrapNotifications = @"
<!DOCTYPE html>
<html>
<head>
    <link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'>
    <style>
        .notification-card {
            border-left: 4px solid;
            transition: transform 0.2s;
        }
        .notification-card:hover { transform: translateX(5px); }
        .notification-icon {
            width: 48px;
            height: 48px;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            font-size: 1.5rem;
        }
    </style>
</head>
<body>
    <div class='container my-5'>
        <h1 class='mb-4'>System Notifications Dashboard</h1>

        <div class='row g-4 mb-4'>
            <div class='col-md-3'>
                <div class='card text-center bg-success text-white'>
                    <div class='card-body'>
                        <h2 class='display-4 mb-0'>42</h2>
                        <p class='mb-0'>Success</p>
                    </div>
                </div>
            </div>
            <div class='col-md-3'>
                <div class='card text-center bg-warning text-dark'>
                    <div class='card-body'>
                        <h2 class='display-4 mb-0'>8</h2>
                        <p class='mb-0'>Warnings</p>
                    </div>
                </div>
            </div>
            <div class='col-md-3'>
                <div class='card text-center bg-danger text-white'>
                    <div class='card-body'>
                        <h2 class='display-4 mb-0'>3</h2>
                        <p class='mb-0'>Errors</p>
                    </div>
                </div>
            </div>
            <div class='col-md-3'>
                <div class='card text-center bg-info text-white'>
                    <div class='card-body'>
                        <h2 class='display-4 mb-0'>156</h2>
                        <p class='mb-0'>Info</p>
                    </div>
                </div>
            </div>
        </div>

        <div class='alert alert-success d-flex align-items-center mb-3' role='alert'>
            <div class='notification-icon bg-white text-success me-3'>✓</div>
            <div class='flex-grow-1'>
                <h5 class='alert-heading mb-1'>Deployment Successful</h5>
                <p class='mb-0'>Your application has been deployed to production successfully.</p>
                <small class='text-muted'>2 minutes ago</small>
            </div>
            <button type='button' class='btn-close'></button>
        </div>

        <div class='alert alert-info d-flex align-items-center mb-3' role='alert'>
            <div class='notification-icon bg-white text-info me-3'>ℹ</div>
            <div class='flex-grow-1'>
                <h5 class='alert-heading mb-1'>System Update Available</h5>
                <p class='mb-0'>A new system update (v2.5.1) is available for installation.</p>
                <small class='text-muted'>15 minutes ago</small>
            </div>
            <button type='button' class='btn-close'></button>
        </div>

        <div class='alert alert-warning d-flex align-items-center mb-3' role='alert'>
            <div class='notification-icon bg-white text-warning me-3'>⚠</div>
            <div class='flex-grow-1'>
                <h5 class='alert-heading mb-1'>High CPU Usage Detected</h5>
                <p class='mb-0'>CPU usage has exceeded 85% for the past 10 minutes. Consider scaling resources.</p>
                <small class='text-muted'>1 hour ago</small>
            </div>
            <button type='button' class='btn-close'></button>
        </div>

        <div class='alert alert-danger d-flex align-items-center mb-3' role='alert'>
            <div class='notification-icon bg-white text-danger me-3'>✗</div>
            <div class='flex-grow-1'>
                <h5 class='alert-heading mb-1'>Database Connection Failed</h5>
                <p class='mb-0'>Unable to establish connection to the primary database server. Failover initiated.</p>
                <small class='text-muted'>3 hours ago</small>
            </div>
            <button type='button' class='btn-close'></button>
        </div>

        <div class='card'>
            <div class='card-header bg-primary text-white'>
                <h5 class='mb-0'>Recent Activity Log</h5>
            </div>
            <div class='card-body p-0'>
                <ul class='list-group list-group-flush'>
                    <li class='list-group-item notification-card border-success'>
                        <div class='d-flex align-items-start'>
                            <span class='badge bg-success me-3 mt-1'>SUCCESS</span>
                            <div class='flex-grow-1'>
                                <strong>Backup Completed</strong>
                                <p class='mb-1 text-muted'>Daily backup completed successfully. 2.4 GB backed up.</p>
                                <small class='text-muted'>Today at 3:00 AM</small>
                            </div>
                        </div>
                    </li>
                    <li class='list-group-item notification-card border-info'>
                        <div class='d-flex align-items-start'>
                            <span class='badge bg-info me-3 mt-1'>INFO</span>
                            <div class='flex-grow-1'>
                                <strong>User Login</strong>
                                <p class='mb-1 text-muted'>Admin user logged in from 192.168.1.100</p>
                                <small class='text-muted'>Today at 8:30 AM</small>
                            </div>
                        </div>
                    </li>
                    <li class='list-group-item notification-card border-warning'>
                        <div class='d-flex align-items-start'>
                            <span class='badge bg-warning text-dark me-3 mt-1'>WARNING</span>
                            <div class='flex-grow-1'>
                                <strong>SSL Certificate Expiring</strong>
                                <p class='mb-1 text-muted'>SSL certificate for api.example.com expires in 30 days</p>
                                <small class='text-muted'>Today at 9:15 AM</small>
                            </div>
                        </div>
                    </li>
                    <li class='list-group-item notification-card border-success'>
                        <div class='d-flex align-items-start'>
                            <span class='badge bg-success me-3 mt-1'>SUCCESS</span>
                            <div class='flex-grow-1'>
                                <strong>Security Scan Completed</strong>
                                <p class='mb-1 text-muted'>No vulnerabilities detected in latest scan</p>
                                <small class='text-muted'>Today at 10:00 AM</small>
                            </div>
                        </div>
                    </li>
                </ul>
            </div>
        </div>

        <div class='mt-4 d-flex justify-content-between align-items-center'>
            <button class='btn btn-outline-primary'>Mark All as Read</button>
            <button class='btn btn-outline-secondary'>Clear All</button>
            <button class='btn btn-primary'>View All Notifications</button>
        </div>
    </div>
</body>
</html>";

var pdf = renderer.RenderHtmlAsPdf(bootstrapNotifications);
pdf.SaveAs("notifications-dashboard.pdf");
using IronPdf;

// Set your IronPDF license key
IronPdf.License.LicenseKey = "License-Key goes here";

var renderer = new ChromePdfRenderer();
string bootstrapNotifications = @"
<!DOCTYPE html>
<html>
<head>
    <link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'>
    <style>
        .notification-card {
            border-left: 4px solid;
            transition: transform 0.2s;
        }
        .notification-card:hover { transform: translateX(5px); }
        .notification-icon {
            width: 48px;
            height: 48px;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            font-size: 1.5rem;
        }
    </style>
</head>
<body>
    <div class='container my-5'>
        <h1 class='mb-4'>System Notifications Dashboard</h1>

        <div class='row g-4 mb-4'>
            <div class='col-md-3'>
                <div class='card text-center bg-success text-white'>
                    <div class='card-body'>
                        <h2 class='display-4 mb-0'>42</h2>
                        <p class='mb-0'>Success</p>
                    </div>
                </div>
            </div>
            <div class='col-md-3'>
                <div class='card text-center bg-warning text-dark'>
                    <div class='card-body'>
                        <h2 class='display-4 mb-0'>8</h2>
                        <p class='mb-0'>Warnings</p>
                    </div>
                </div>
            </div>
            <div class='col-md-3'>
                <div class='card text-center bg-danger text-white'>
                    <div class='card-body'>
                        <h2 class='display-4 mb-0'>3</h2>
                        <p class='mb-0'>Errors</p>
                    </div>
                </div>
            </div>
            <div class='col-md-3'>
                <div class='card text-center bg-info text-white'>
                    <div class='card-body'>
                        <h2 class='display-4 mb-0'>156</h2>
                        <p class='mb-0'>Info</p>
                    </div>
                </div>
            </div>
        </div>

        <div class='alert alert-success d-flex align-items-center mb-3' role='alert'>
            <div class='notification-icon bg-white text-success me-3'>✓</div>
            <div class='flex-grow-1'>
                <h5 class='alert-heading mb-1'>Deployment Successful</h5>
                <p class='mb-0'>Your application has been deployed to production successfully.</p>
                <small class='text-muted'>2 minutes ago</small>
            </div>
            <button type='button' class='btn-close'></button>
        </div>

        <div class='alert alert-info d-flex align-items-center mb-3' role='alert'>
            <div class='notification-icon bg-white text-info me-3'>ℹ</div>
            <div class='flex-grow-1'>
                <h5 class='alert-heading mb-1'>System Update Available</h5>
                <p class='mb-0'>A new system update (v2.5.1) is available for installation.</p>
                <small class='text-muted'>15 minutes ago</small>
            </div>
            <button type='button' class='btn-close'></button>
        </div>

        <div class='alert alert-warning d-flex align-items-center mb-3' role='alert'>
            <div class='notification-icon bg-white text-warning me-3'>⚠</div>
            <div class='flex-grow-1'>
                <h5 class='alert-heading mb-1'>High CPU Usage Detected</h5>
                <p class='mb-0'>CPU usage has exceeded 85% for the past 10 minutes. Consider scaling resources.</p>
                <small class='text-muted'>1 hour ago</small>
            </div>
            <button type='button' class='btn-close'></button>
        </div>

        <div class='alert alert-danger d-flex align-items-center mb-3' role='alert'>
            <div class='notification-icon bg-white text-danger me-3'>✗</div>
            <div class='flex-grow-1'>
                <h5 class='alert-heading mb-1'>Database Connection Failed</h5>
                <p class='mb-0'>Unable to establish connection to the primary database server. Failover initiated.</p>
                <small class='text-muted'>3 hours ago</small>
            </div>
            <button type='button' class='btn-close'></button>
        </div>

        <div class='card'>
            <div class='card-header bg-primary text-white'>
                <h5 class='mb-0'>Recent Activity Log</h5>
            </div>
            <div class='card-body p-0'>
                <ul class='list-group list-group-flush'>
                    <li class='list-group-item notification-card border-success'>
                        <div class='d-flex align-items-start'>
                            <span class='badge bg-success me-3 mt-1'>SUCCESS</span>
                            <div class='flex-grow-1'>
                                <strong>Backup Completed</strong>
                                <p class='mb-1 text-muted'>Daily backup completed successfully. 2.4 GB backed up.</p>
                                <small class='text-muted'>Today at 3:00 AM</small>
                            </div>
                        </div>
                    </li>
                    <li class='list-group-item notification-card border-info'>
                        <div class='d-flex align-items-start'>
                            <span class='badge bg-info me-3 mt-1'>INFO</span>
                            <div class='flex-grow-1'>
                                <strong>User Login</strong>
                                <p class='mb-1 text-muted'>Admin user logged in from 192.168.1.100</p>
                                <small class='text-muted'>Today at 8:30 AM</small>
                            </div>
                        </div>
                    </li>
                    <li class='list-group-item notification-card border-warning'>
                        <div class='d-flex align-items-start'>
                            <span class='badge bg-warning text-dark me-3 mt-1'>WARNING</span>
                            <div class='flex-grow-1'>
                                <strong>SSL Certificate Expiring</strong>
                                <p class='mb-1 text-muted'>SSL certificate for api.example.com expires in 30 days</p>
                                <small class='text-muted'>Today at 9:15 AM</small>
                            </div>
                        </div>
                    </li>
                    <li class='list-group-item notification-card border-success'>
                        <div class='d-flex align-items-start'>
                            <span class='badge bg-success me-3 mt-1'>SUCCESS</span>
                            <div class='flex-grow-1'>
                                <strong>Security Scan Completed</strong>
                                <p class='mb-1 text-muted'>No vulnerabilities detected in latest scan</p>
                                <small class='text-muted'>Today at 10:00 AM</small>
                            </div>
                        </div>
                    </li>
                </ul>
            </div>
        </div>

        <div class='mt-4 d-flex justify-content-between align-items-center'>
            <button class='btn btn-outline-primary'>Mark All as Read</button>
            <button class='btn btn-outline-secondary'>Clear All</button>
            <button class='btn btn-primary'>View All Notifications</button>
        </div>
    </div>
</body>
</html>";

var pdf = renderer.RenderHtmlAsPdf(bootstrapNotifications);
pdf.SaveAs("notifications-dashboard.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Sortie : Tableau de bord de notifications PDF professionnel avec composants d'alerte de Bootstrap 5, mises en page flexbox, utilitaires de badge, systèmes de carte, et groupes de listes, tous rendus avec une précision de couleur parfaite, un espacement et une hiérarchie visuelle.

Foxit PDF SDK : Prise en charge limitée des CSS modernes

Foxit PDF SDK utilise un moteur de rendu personnalisé avec des limitations documentées pour les frameworks CSS modernes :

  • Prise en charge partielle de CSS3 : Les fonctionnalités modernes de flexbox et de grille CSS peuvent ne pas s'afficher correctement
  • Limitations de Bootstrap 4/5 : Les mises en page complexes nécessitent des tests extensifs et des solutions alternatives
  • Contraintes JavaScript : Exécution limitée par rapport aux environnements de navigateur
  • Compatibilité framework : Pas conçu avec Bootstrap ou des frameworks modernes à l'esprit

La documentation avertit que les fonctionnalités avancées de CSS peuvent produire des résultats inattendus, et les développeurs rapportent des problèmes avec les utilitaires réactifs, les mises en page basées sur flex, et les composants Bootstrap modernes.

Impact sur le développement : Les équipes utilisant Foxit PDF SDK doivent souvent créer des mises en page simplifiées ou maintenir des fichiers CSS « sûrs pour PDF » séparés, ajoutant une surcharge de développement et réduisant la cohérence de design entre les applications Web et les documents PDF.

Pour une compatibilité détaillée avec le framework Bootstrap et les capacités de rendu CSS3, consultez le Guide CSS Bootstrap & Flexbox.

Exemple de code

Créons un nouveau projet Visual Studio avec un modèle d'application console pour démontrer l'exemple de code.

Créer un nouveau projet :

  • Ouvrez Visual Studio 2022 (Vous pouvez ouvrir n'importe quelle version).
  • Cliquez sur « Créer un nouveau projet » depuis la page de démarrage ou sélectionnez « Fichier » > « Nouveau » > « Projet » dans le menu du haut.
  • Dans la boîte de dialogue « Créer un nouveau projet », sélectionnez « Application console (.NET Core) » sous l'onglet « Console ».
  • Choisissez un nom et un emplacement pour votre projet, puis cliquez sur « Créer ».
  • Visual Studio créera un nouveau projet d'application console avec un fichier « Program.cs » par défaut.

Une comparaison entre IronPDF et Foxit PDF SDK : Figure 1 - Nouveau projet dans VS 2022

Exemple de code of IronPDF

Nous devons installer le package NuGet IronPDF dans notre projet :

Cliquez sur le menu « Outils » et sélectionnez « Gestionnaire de package NuGet » puis « Console du gestionnaire de package ».

Dans la fenêtre de la console du gestionnaire de package, tapez la commande suivante :

Install-Package IronPdf

Appuyez sur « Entrée » pour exécuter la commande. Attendez que le package soit installé et que ses dépendances soient résolues.

Une comparaison entre IronPDF et Foxit PDF SDK : Figure 2 - Installation de IronPDF

Une fois l'installation terminée, nous pouvons commencer à utiliser IronPDF dans notre projet en ajoutant les instructions d'utilisation appropriées et en appelant les API d'IronPDF.

// This C# code will demonstrate how to use IronPDF to create a new PDF from HTML content.
static void Main(string[] args)
{
    // Create an instance of ChromePdfRenderer to render HTML as a PDF document.
    var renderer = new ChromePdfRenderer();

    // Convert HTML content to a PDF document using RenderHtmlAsPdf.
    var pdfDoc = renderer.RenderHtmlAsPdf("This is my PDF file created by IronPDF.");

    // Save the PDF document to the filename "IronPDF.pdf".
    pdfDoc.SaveAs("IronPDF.pdf");
}
// This C# code will demonstrate how to use IronPDF to create a new PDF from HTML content.
static void Main(string[] args)
{
    // Create an instance of ChromePdfRenderer to render HTML as a PDF document.
    var renderer = new ChromePdfRenderer();

    // Convert HTML content to a PDF document using RenderHtmlAsPdf.
    var pdfDoc = renderer.RenderHtmlAsPdf("This is my PDF file created by IronPDF.");

    // Save the PDF document to the filename "IronPDF.pdf".
    pdfDoc.SaveAs("IronPDF.pdf");
}
' This C# code will demonstrate how to use IronPDF to create a new PDF from HTML content.
Shared Sub Main(ByVal args() As String)
	' Create an instance of ChromePdfRenderer to render HTML as a PDF document.
	Dim renderer = New ChromePdfRenderer()

	' Convert HTML content to a PDF document using RenderHtmlAsPdf.
	Dim pdfDoc = renderer.RenderHtmlAsPdf("This is my PDF file created by IronPDF.")

	' Save the PDF document to the filename "IronPDF.pdf".
	pdfDoc.SaveAs("IronPDF.pdf")
End Sub
$vbLabelText   $csharpLabel

L'exemple de code ci-dessus génère un document PDF à partir d'une chaîne HTML. Il crée une nouvelle instance de la classe ChromePdfRenderer, qui est responsable du rendu de l'HTML en un PDF. Il appelle ensuite la méthode RenderHtmlAsPdf pour créer un document PDF à partir de la chaîne HTML. Enfin, il enregistre le document PDF sur le disque avec le nom « IronPDF.pdf » en utilisant la méthode SaveAs.

On peut constater que nous avons généré et enregistré le document PDF en seulement trois lignes de code. C'est la simplicité et la facilité d'utilisation qui est unique à IronPDF.

Une comparaison entre IronPDF et Foxit PDF SDK : Figure 3 - PDF créé à l'aide de IronPDF

Pour plus d'exemples de code détaillés et de tutoriels étape par étape, veuillez visiter la documentation officielle de l'API d'IronPDF.

Exemple de code of Foxit PDF SDK

Dans la fenêtre de la console du gestionnaire de package, tapez la commande suivante :

Install-Package Foxit.SDK.Dotnet

Appuyez sur « Entrée » pour exécuter la commande. Attendez que le package soit installé et que ses dépendances soient résolues.

Une comparaison entre IronPDF et Foxit PDF SDK : Figure 4 - Installation du SDK Foxit PDF

Une fois l'installation terminée, nous pouvons commencer à utiliser Foxit PDF dans notre projet en ajoutant les déclarations 'using' appropriées et en appelant les API de Foxit PDF.

// This C# code demonstrates creating a simple PDF document using Foxit PDF SDK.
using (var doc = new PDFDoc())
{
    // Insert a new page in the PDF document.
    var page = doc.InsertPage(0, PDFPage.Size.e_SizeLetter);

    // Define a rectangular area where text will be added on the page.
    RectF rect = new RectF(100, 50, 220, 100);

    // Create a style for the text to be added.
    RichTextStyle richtext_style = new RichTextStyle();

    // Add text to the page within the defined rectangle.
    page.AddText("This is my PDF generated by Foxit PDF.", rect, richtext_style);

    // Save the document as a PDF file on the disk.
    doc.SaveAs("FoxitPDF.pdf", 0);
}
// This C# code demonstrates creating a simple PDF document using Foxit PDF SDK.
using (var doc = new PDFDoc())
{
    // Insert a new page in the PDF document.
    var page = doc.InsertPage(0, PDFPage.Size.e_SizeLetter);

    // Define a rectangular area where text will be added on the page.
    RectF rect = new RectF(100, 50, 220, 100);

    // Create a style for the text to be added.
    RichTextStyle richtext_style = new RichTextStyle();

    // Add text to the page within the defined rectangle.
    page.AddText("This is my PDF generated by Foxit PDF.", rect, richtext_style);

    // Save the document as a PDF file on the disk.
    doc.SaveAs("FoxitPDF.pdf", 0);
}
' This C# code demonstrates creating a simple PDF document using Foxit PDF SDK.
Using doc = New PDFDoc()
	' Insert a new page in the PDF document.
	Dim page = doc.InsertPage(0, PDFPage.Size.e_SizeLetter)

	' Define a rectangular area where text will be added on the page.
	Dim rect As New RectF(100, 50, 220, 100)

	' Create a style for the text to be added.
	Dim richtext_style As New RichTextStyle()

	' Add text to the page within the defined rectangle.
	page.AddText("This is my PDF generated by Foxit PDF.", rect, richtext_style)

	' Save the document as a PDF file on the disk.
	doc.SaveAs("FoxitPDF.pdf", 0)
End Using
$vbLabelText   $csharpLabel

Il s'agit d'une bibliothèque avec une API complexe, et plus d'effort est nécessaire pour les tâches de base, comme observé à partir de l'extrait de code ci-dessus, qui crée un simple fichier PDF. Visitez leur documentation officielle pour plus de documents d'API.

HTML en PDF utilisant IronPDF

Le code d'exemple suivant démontre un exemple de création d'un PDF à partir de HTML.

// This C# code will demonstrate how to convert HTML to a PDF using IronPDF.
static void Main(string[] args)
{
    // HTML content to be converted to PDF.
    string htmlText = "This is a PDF created from an HTML string using IronPDF.";

    // Create an instance of ChromePdfRenderer for rendering HTML to PDF.
    var renderer = new ChromePdfRenderer();

    // Render the HTML content as a PDF document.
    PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlText);

    // Save the PDF document to the filename "htmlToPDF.pdf".
    pdf.SaveAs("htmlToPDF.pdf");
}
// This C# code will demonstrate how to convert HTML to a PDF using IronPDF.
static void Main(string[] args)
{
    // HTML content to be converted to PDF.
    string htmlText = "This is a PDF created from an HTML string using IronPDF.";

    // Create an instance of ChromePdfRenderer for rendering HTML to PDF.
    var renderer = new ChromePdfRenderer();

    // Render the HTML content as a PDF document.
    PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlText);

    // Save the PDF document to the filename "htmlToPDF.pdf".
    pdf.SaveAs("htmlToPDF.pdf");
}
' This C# code will demonstrate how to convert HTML to a PDF using IronPDF.
Shared Sub Main(ByVal args() As String)
	' HTML content to be converted to PDF.
	Dim htmlText As String = "This is a PDF created from an HTML string using IronPDF."

	' Create an instance of ChromePdfRenderer for rendering HTML to PDF.
	Dim renderer = New ChromePdfRenderer()

	' Render the HTML content as a PDF document.
	Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(htmlText)

	' Save the PDF document to the filename "htmlToPDF.pdf".
	pdf.SaveAs("htmlToPDF.pdf")
End Sub
$vbLabelText   $csharpLabel

Additionally, we can also create PDFs from a URL, and from an HTML file using IronPDF.

Une comparaison entre IronPDF et Foxit PDF SDK : Figure 5 - IronPDF

HTML en PDF utilisant Foxit PDF SDK

La bibliothèque Foxit PDF ne prend pas en charge la conversion de documents HTML entiers en PDF.

Maintenant que nous avons fourni une vue d'ensemble des deux SDK, comparons-les plus en détail.

Comparaison entre IronPDF et Foxit PDF

Conversion HTML en PDF

IronPDF offre un excellent support pour la conversion de contenu HTML aux formats PDF. C'est un avantage significatif par rapport au SDK Foxit, qui n'offre pas de support intégré pour la conversion HTML en PDF. Cette fonctionnalité est particulièrement utile pour les développeurs qui souhaitent générer des documents PDF dynamiques à partir de pages Web ou d'applications.

La fonction de conversion HTML en PDF d'IronPDF est également hautement personnalisable. Les développeurs peuvent spécifier des options telles que la taille de la page, l'orientation, les marges et le redimensionnement, ainsi que modifier le contenu du document PDF avant qu'il ne soit enregistré. De plus, IronPDF prend en charge le style CSS, ce qui facilite la création de documents PDF visuellement attrayants.

Support des langues .NET

IronPDF est une bibliothèque .NET, ce qui signifie qu'elle peut être utilisée avec n'importe quel langage .NET tel que C#, VB.NET et F#. Cela facilite pour les développeurs déjà familiers avec ces langages de commencer à utiliser IronPDF. En revanche, Foxit PDF SDK dispose de liaisons linguistiques pour plusieurs langages de programmation, mais il peut ne pas prendre en charge tous les langages que les développeurs connaissent.

IronPDF prend également en charge .NET Standard et .NET Core, rendant possible l'utilisation d'IronPDF sur diverses plateformes telles que Windows, Linux et macOS. Cette flexibilité en matière de support de plateforme est un avantage significatif par rapport au SDK Foxit PDF, car il peut nécessiter d'utiliser uniquement un SDK qui prend en charge ce système d'exploitation particulier. Cela signifie que chaque OS nécessite un SDK séparé.

Facilité d'utilisation

IronPDF est reconnu pour sa facilité d'utilisation car il fournit une API cœur simple qui abstrait les complexités de la création et de la manipulation de PDF. Sa syntaxe intuitive permet aux développeurs de créer et d'éditer des PDF en quelques lignes de code seulement, sans nécessiter de connaissances techniques supplémentaires. D'un autre côté, le SDK Foxit PDF peut être difficile à utiliser car il exige que les développeurs définissent presque tout explicitement. Cela signifie que les développeurs doivent avoir une compréhension approfondie du SDK et des spécifications PDF pour l'utiliser efficacement. Cela peut entraîner des temps de développement plus longs et une courbe d'apprentissage plus abrupte pour les nouveaux développeurs. Dans l'ensemble, la facilité d'utilisation de IronPDF procure une expérience de développement fluide qui peut conduire à des temps de développement plus rapides et à une plus grande productivité.

Fonctionnalités de sécurité

IronPDF et Foxit PDF SDK fournissent tous deux des fonctionnalités de sécurité pour protéger les documents PDF contre les accès non autorisés, telles que la protection par mot de passe, le cryptage et les signatures numériques. Cependant, IronPDF offre une plus grande flexibilité en termes d'options de cryptage, permettant aux développeurs de choisir parmi divers algorithmes de cryptage et longueurs de clé pour adapter les mesures de sécurité à leurs besoins spécifiques. Ce niveau de flexibilité peut être crucial pour les applications nécessitant des niveaux de sécurité plus élevés, comme celles traitant des données sensibles ou des informations confidentielles. En revanche, le SDK Foxit PDF peut avoir des options de cryptage plus limitées, qui peuvent ne pas être suffisantes pour les applications ayant des exigences de sécurité plus strictes.

Performance

IronPDF a été conçu pour traiter les fichiers PDF rapidement et efficacement. Les algorithmes optimisés utilisés dans IronPDF assurent qu'il offre des performances rapides lors du traitement de fichiers PDF. De plus, IronPDF peut gérer facilement les fichiers PDF volumineux, ce qui en fait un excellent choix pour les applications nécessitant le traitement de grandes quantités de données. D'autre part, le SDK Foxit PDF peut ne pas être aussi performant qu'IronPDF, surtout lorsqu'il s'agit de traiter de grands fichiers PDF, ce qui pourrait entraîner des performances plus lentes lors du traitement de fichiers PDF.

Licences et prix

IronPDF offre des options de licences et de tarifs flexibles pour répondre aux besoins des développeurs individuels et des organisations. Il est gratuit pour le développement et propose un essai gratuit pour une licence commerciale. Il a un modèle de licence perpétuelle, ce qui signifie qu'une fois que vous avez acheté une licence, vous pouvez l'utiliser indéfiniment sans frais supplémentaires. De plus, IronPDF propose une gamme d'options de licences, y compris des licences pour développeur unique, des licences pour équipe et des licences pour site, ce qui facilite le choix de l'option qui convient le mieux aux besoins des développeurs.

Une comparaison entre IronPDF et Foxit PDF SDK : Figure 6 - Licences IronPDF

En revanche, le SDK Foxit PDF propose un modèle de licence par abonnement, ce qui signifie que vous devez payer une redevance récurrente pour utiliser le SDK. Les licences Foxit PDF SDK démarrent à 3 000 USD par plateforme et par an. Cela peut être coûteux pour les développeurs travaillant sur des projets à long terme ou nécessitant de nombreuses licences. Le SDK Foxit PDF dispose aussi d'options de licences limitées, ce qui peut ne pas convenir à toutes les organisations.

Une comparaison entre IronPDF et Foxit PDF SDK : Figure 7 - Licences Foxit PDF SDK

Conclusion

IronPDF est une puissante bibliothèque de traitement PDF qui excelle par sa facilité d'utilisation et sa robustesse fonctionnelle. Conçu sur la base du moteur de rendu basé sur Chromium, il offre aux développeurs une API simple et intuitive pour créer, manipuler et rendre des documents PDF. Avec son support étendu pour HTML, CSS, JavaScript et les formats d'image, IronPDF permet la conversion sans faille de contenu Web et d'images en PDF de haute qualité. Il offre des fonctionnalités telles que le support du multithreading et de l'asynchrone pour des performances et une évolutivité accrues. De plus, IronPDF fournit des options de sécurité avancées, y compris le cryptage, les signatures numériques et la protection par mot de passe pour sauvegarder les documents PDF. Ses classes et fonctions complètes pour la manipulation de PDF, la gestion de formulaires et l'extraction de texte en font une solution polyvalente pour diverses tâches liées aux PDF. Dans l'ensemble, IronPDF permet aux développeurs de disposer d'un cadre fiable et efficace pour le traitement de PDF dans leurs applications.

Foxit PDF SDK est une bibliothèque complète et riche en fonctionnalités qui permet aux développeurs de bénéficier de capacités avancées de traitement de PDF. Il offre une large gamme d'outils et de fonctionnalités pour créer, éditer et manipuler des documents PDF. Avec son API étendue, les développeurs ont un contrôle granulaire sur les éléments PDF tels que le texte, les images, les annotations et les champs de formulaire. Foxit PDF SDK assure un support robuste pour diverses normes PDF, garantissant la compatibilité et le respect des spécifications de l'industrie. Son ensemble riche de fonctionnalités inclut le cryptage des PDF, les signatures numériques et la protection par mot de passe pour sécuriser les données sensibles. Le SDK offre également des capacités de rendu hautes performances, permettant un affichage fluide et efficace du contenu PDF. Avec Foxit PDF SDK, les développeurs peuvent construire des applications PDF sophistiquées avec des flux de travail personnalisés, une automatisation de documents et une intégration transparente dans leurs systèmes existants.

IronPDF offre une structure de licences plus avantageuse par rapport au SDK Foxit PDF, en faisant une option plus abordable pour les développeurs. IronPDF suit un modèle de licence par développeur, où une licence unique permet à toute une équipe de développement d'utiliser la bibliothèque. Cela signifie que les développeurs peuvent collaborer et travailler sur des projets utilisant IronPDF sans encourir de coûts de licence supplémentaires pour chaque membre de l'équipe. De plus, IronPDF propose une option de licence perpétuelle, qui permet aux développeurs d'utiliser indéfiniment la version qu'ils ont achetée sans avoir à payer pour de futures mises à jour. En revanche, le SDK Foxit PDF fonctionne sur un modèle de licence basé sur des redevances, où les développeurs doivent payer une redevance basée sur le nombre d'unités vendues incorporant le SDK. Cela peut entraîner des coûts plus élevés, en particulier pour les applications avec une grande base d'utilisateurs ou un volume de ventes élevé. Par conséquent, la structure de licence d'IronPDF offre une solution plus économique, permettant aux développeurs d'économiser sur les dépenses de licence tout en bénéficiant de puissantes capacités de traitement PDF.

IronPDF présente plusieurs avantages sur Foxit PDF en termes de capacités techniques. Premièrement, IronPDF offre une API plus intuitive et conviviale pour les développeurs, facilitant son intégration et son utilisation dans diverses applications. Son API simple et directe permet un traitement PDF rationalisé, réduisant le temps et l'effort de développement requis. De plus, IronPDF offre un support robuste pour les technologies Web modernes, y compris HTML, CSS, JavaScript et les formats d'image, permettant une conversion sans faille du contenu Web en documents PDF. Il propose aussi des fonctionnalités avancées telles que le support du multithreading et de l'asynchrone, qui améliorent les performances et la scalabilité dans le traitement de fichiers PDF volumineux ou le traitement de documents à haut volume. La flexibilité d'IronPDF dans les options de cryptage, permettant aux développeurs de choisir parmi différents algorithmes et longueurs de clé, ajoute une couche supplémentaire de personnalisation de sécurité. De plus, le modèle de licence d'IronPDF est plus économique, avec une structure de licence par développeur et une option de licence perpétuelle, ce qui en fait un choix plus abordable pour les développeurs. Dans l'ensemble, IronPDF excelle par sa facilité d'utilisation, ses fonctionnalités puissantes et son rapport qualité-prix, en faisant un excellent choix.

IronPDF fait partie de l'Iron Suite, un ensemble d'outils logiciels puissants conçus pour améliorer les capacités de développement. The Iron Suite consists of five products, including IronOCR for optical character recognition, IronPDF for PDF processing, IronBarcode for barcode generation, IronXL for Excel manipulation, and IronWebscraper for web data extraction. En achetant l'ensemble complet Iron Suite, les développeurs peuvent tirer parti de la puissance combinée de ces cinq produits, obtenant une gamme complète d'outils pour divers besoins de développement, le tout au coût de deux produits individuels.

Veuillez noterFoxit PDF SDK est une marque déposée de son propriétaire respectif. Ce site n'est pas affilié, approuvé ou sponsorisé par Foxit PDF SDK. Tous les noms de produits, logos et marques sont la propriété de leurs propriétaires respectifs. Les comparaisons sont à des fins d'information uniquement et reflètent les informations disponibles publiquement au moment de la rédaction.

Questions Fréquemment Posées

Quelles sont les différences entre Foxit PDF SDK et IronPDF ?

IronPDF et Foxit PDF SDK sont tous deux populaires pour gérer les tâches PDF dans les applications .NET. IronPDF offre une conversion HTML en PDF supérieure, des fonctionnalités de sécurité robustes et un modèle de licence économique, tandis que Foxit offre un fort support des formats de fichier et des capacités d'annotation PDF.

Comment puis-je convertir du HTML en PDF dans une application .NET ?

Vous pouvez utiliser la méthode RenderHtmlAsPdf d'IronPDF pour convertir des chaînes HTML en PDF. De plus, vous pouvez convertir des fichiers HTML en utilisant RenderHtmlFileAsPdf.

Quelles sont les fonctionnalités de sécurité d'IronPDF ?

IronPDF fournit des fonctionnalités de sécurité complètes, notamment la protection par mot de passe, les options de cryptage, les signatures numériques et la gestion des certificats pour protéger les documents PDF.

Comment IronPDF prend-il en charge le multithreading et les opérations asynchrones ?

IronPDF est conçu pour prendre en charge le multithreading et les opérations asynchrones, permettant aux développeurs de gérer efficacement plusieurs tâches de traitement de PDF dans les applications .NET.

IronPDF peut-il être utilisé sur différents systèmes d'exploitation ?

Oui, IronPDF prend en charge .NET Standard et .NET Core, ce qui le rend compatible avec les plateformes Windows, Linux et macOS.

Quel est un exemple de code de base pour créer un PDF avec IronPDF ?

Un exemple de base avec IronPDF implique de créer une instance de ChromePdfRenderer, de rendre le contenu HTML dans un document PDF et de l'enregistrer sur le disque.

Quels avantages IronPDF offre-t-il par rapport aux SDK de PDF basés sur un abonnement ?

IronPDF offre un modèle de licence économique avec des options par développeur et perpétuelles, fournissant une solution plus abordable par rapport aux modèles basés sur abonnement.

Qu'est-ce que l'Iron Suite ?

L'Iron Suite est un ensemble d'outils de développement puissants, y compris IronOCR, IronPDF, IronBarcode, IronXL, et IronWebscraper, conçus pour améliorer la productivité des développeurs.

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