Passer au contenu du pied de page
COMPARAISONS DE PRODUITS

Une Comparaison Entre IronPDF & Apryse C#

Full Comparison

Looking for a detailed feature-by-feature breakdown? See how IronPDF stacks up against Apryse PDF on pricing, HTML support, and licensing.

View Full Comparison

Pourquoi comparer les bibliothèques PDF IronPDF et Apryse C# ?

IronPDF et Apryse C# sont des bibliothèques PDF .NET importantes, chacune avec des forces uniques. IronPDF excelle dans la conversion de HTML en PDF avec une prise en charge complète de Bootstrap et des fonctionnalités d'édition étendues. Pendant ce temps, Apryse se spécialise dans l'annotation et la rédaction de documents, répondant aux besoins de conformité des entreprises.

En tant que développeurs C#, vous êtes souvent confrontés à des tâches liées au PDF lors de la création d'applications qui génèrent, modifient ou affichent des documents. Une bibliothèque PDF fiable est cruciale pour l'efficacité. Ces bibliothèques offrent des fonctions intégrées pour des opérations complexes telles que la conversion de documents, l'édition de texte, et la gestion des images dans les PDF. Sans elles, vous auriez besoin de coder toute la fonctionnalité à partir de zéro, ce qui est chronophage et sujet aux erreurs.

Cette comparaison porte sur deux bibliothèques PDF populaires : IronPDF et Apryse C#. IronPDF fournit des fonctionnalités fiables qui simplifient les opérations PDF dans les environnements .NET, de la conversion de HTML en PDF à l'édition de documents avancée. Apryse C# propose une approche simple de la manipulation de PDF, se concentrant sur l'efficacité et la facilité d'utilisation. Cette analyse explore les capacités spécifiques de chaque bibliothèque pour vous aider à déterminer le meilleur choix pour votre projet.

Qu'est-ce que la bibliothèque PDF Apryse C# ?

La page d'accueil d'Apryse démontre leur SDK de traitement de documents avec éditeur de code et interfaces de visionneuse de documents affichées sur des moniteurs d'ordinateur

Apryse C# est une bibliothèque PDF complète pour les applications .NET, conçue pour simplifier la manipulation de PDF dans les environnements C#. Précédemment connu sous le nom de PDFTron SDK, il offre une large gamme de fonctionnalités et d'outils pour les développeurs cherchant des capacités précises de gestion de PDF.

Quelles sont les fonctionnalités clés d'Apryse C# ?

  • Intégration facile aux projets .NET : Intégration fluide avec .NET, y compris ASP.NET Core et les applications traditionnelles .NET Framework.
  • Création et édition de documents : Créez des PDF à partir de zéro ou modifiez les existants, y compris le texte, les images, les formulaires, et la manipulation de pages—réorganisation, fusion ou fractionnement.
  • Conversion de HTML en PDF : Conversion directe du contenu HTML au format PDF pour les factures, rapports, et la documentation de pages web.
  • Support étendu des champs de formulaire : Création, édition et remplissage programmatique fiable des champs de formulaire PDF pour les flux de travail automatisés.
  • Extraction de texte et de contenu : Extraction de texte et de contenu des PDF pour les outils d'analyse, les outils de recherche, et la gestion de contenu.
  • Sécurité et chiffrement : Sécurité complète incluant le chiffrement des documents, la gestion des permissions, et les signatures numériques.
  • Fonctionnalités avancées de PDF : Support des annotations, des signets, et des hyperliens pour des PDF interactifs.

Qu'est-ce que la bibliothèque IronPDF C# ?

Page d'accueil IronPDF montrant un exemple de code C# pour la conversion de HTML en PDF avec la commande d'installation NuGet

IronPDF est une bibliothèque PDF polyvalente conçue pour les développeurs .NET. Elle simplifie la manipulation complexe de PDF, permettant la création, l'édition, et la conversion de documents PDF directement au sein des applications C#. Disponible pour plusieurs langages de programmation dont Java, Python, et C#, IronPDF répond à divers besoins en traitement PDF avec efficacité et fiabilité.

Quelles sont les fonctionnalités clés d'IronPDF ?

Comment créer une application console C# ?

Créer une application console dans Visual Studio établit la fondation des projets de développement .NET, y compris ceux utilisant des bibliothèques PDF comme IronPDF ou Apryse C#. Suivez ces étapes pour commencer :

Comment lancer Visual Studio ?

Ouvrez Visual Studio sur votre ordinateur. Si vous n'avez pas encore installé Visual Studio, téléchargez-le et installez-le depuis le site officiel de Microsoft, en sélectionnant une version appropriée à vos besoins.

Comment créer un nouveau projet ?

Une fois Visual Studio ouvert, sélectionnez " Créer un nouveau projet " depuis le tableau de bord initial.

Écran de démarrage de Visual Studio 2022 montrant le menu Get Started avec des options pour cloner un dépôt, ouvrir un projet ou une solution, ouvrir un dossier local, ou créer un nouveau projet

Quel type de projet dois-je choisir ?

Dans la fenêtre " Créer un nouveau projet ", vous verrez divers modèles de projets. Tapez "Console" dans la boîte de recherche ou trouvez " Application Console " dans la liste. Sélectionnez le modèle spécifique à C#.

Dialogue de 'Créer un nouveau projet' de Visual Studio montrant divers modèles de projets ASP.NET Core et C# incluant Console App, Blazor Web App, et Web API options.

Comment configurer mon projet ?

Après avoir sélectionné " Application Console ", cliquez sur " Suivant ". Configurez votre nouveau projet :

  • Nom du projet : Entrez un nom descriptif pour votre projet.
  • Emplacement : Choisissez votre emplacement d'enregistrement préféré.
  • Nom de la solution : Défini par défaut selon le nom de votre projet mais peut être personnalisé.

Écran de configuration de projet Visual Studio montrant la création d'un nouveau projet d'application console C# nommé 'IronPDF vs Apryse' avec l'emplacement du projet et les paramètres de la solution.

  • Framework : Sélectionnez votre version .NET. La dernière version est généralement recommandée, sauf si des exigences spécifiques s'appliquent.

Écran de configuration de l'application console montrant la sélection du framework .NET 8.0 avec des options pour les déclarations de niveau supérieur et la publication native AOT

Comment finaliser la création du projet ?

Après avoir configuré les paramètres de votre projet, cliquez sur " Créer ". Visual Studio configure un nouveau projet d'application console avec un fichier Program.cs par défaut.

Quelle est la structure du projet ?

Explorez la structure de projet générée dans le panneau Solution Explorer. Vous travaillerez principalement avec le fichier Program.cs pour les applications console, où vous écrirez votre code C#.

Comment installer la bibliothèque IronPDF ?

Intégrer IronPDF dans votre projet .NET vous permet d'utiliser ses capacités complètes de manipulation de PDF. Plusieurs méthodes d'installation offrent une flexibilité en fonction de vos préférences de flux de travail.

Comment installer avec le Package Manager NuGet ?

Le Package Manager NuGet dans Visual Studio offre une interface graphique pour gérer les bibliothèques.

  1. Ouvrez votre projet dans Visual Studio.
  2. Cliquez avec le bouton droit sur votre projet dans l'explorateur de solutions et sélectionnez " Gérer les packages NuGet ".
  3. Cliquez sur l'onglet " Parcourir " et recherchez " IronPdf ".
  4. Sélectionnez IronPDF dans les résultats et cliquez sur " Installer ".

Package Manager NuGet montrant les résultats de la recherche de la bibliothèque IronPDF avec la version 2024.2.2 et les packages connexes incluant les dépendances spécifiques à la plateforme Chrome et IronPdf.Slim.

Comment installer en utilisant la ligne de commande ?

La console du gestionnaire de packages offre une installation directe en ligne de commande.

  1. Ouvrez votre projet Visual Studio.
  2. Allez dans Outils > Gestionnaire de package NuGet > Console du gestionnaire de package.
  3. Entrez la commande suivante :
Install-Package IronPdf

Cette commande installe la dernière version d'IronPDF dans votre projet.

Comment télécharger directement depuis NuGet ?

Vous pouvez télécharger manuellement le package avant l'intégration.

  1. Rendez-vous sur le site NuGet et recherchez "IronPDF".
  2. Sur la page du package IronPdf, cliquez sur " Télécharger le package " pour obtenir le fichier .nupkg.

Page de package NuGet pour IronPDF version 2024.2.2 montrant la commande d'installation, les statistiques de téléchargement de 8.2M téléchargements totaux, et les frameworks supportés incluant .NET 5.0, .NET Core 2.0, et .NET Framework 4.6.2

  1. Ajoutez le package téléchargé manuellement via Solution Explorer > clic droit sur le projet > " Ajouter > Référence ".

Chaque méthode intègre avec succès IronPDF, vous permettant d'utiliser ses fonctionnalités efficaces de traitement PDF.

Comment installer Apryse C# ?

L'intégration de Apryse C# dans votre projet varie selon votre environnement .NET Framework ou .NET Core. Les étapes suivantes décrivent le processus général d'installation :

Comment installer Apryse for .NET Framework ?

  1. Téléchargez le SDK Apryse pour Windows : Vous devrez visiter la page SDK Apryse pour Windows pour télécharger le SDK adapté aux applications .NET Framework.

Page de téléchargement de la bibliothèque PDF Apryse C# .NET montrant le bouton de téléchargement SDK et les exigences de licence commerciale

  1. Extrayez le SDK : Après le téléchargement, extrayez le SDK à un emplacement connu sur votre système.
  2. Obtenez une clé d'essai Apryse : Inscrivez-vous sur la plateforme Apryse pour obtenir une clé d'essai, que vous utiliserez pour activer les fonctionnalités d'essai du SDK.
  3. Configurez votre projet : Dans Visual Studio, créez une nouvelle application console .NET Framework. Ensuite, ajoutez le dossier Lib du SDK extrait à votre répertoire projet.
  4. Ajoutez des références : Clic droit sur Références dans votre projet, choisissez " Ajouter Référence ", et naviguez vers le dossier Lib où vous avez copié PDFNetLoader.dll et le PDFNet.dll approprié pour votre architecture (x86 ou x64). Assurez-vous de définir la propriété "Copie Locale" de PDFNet.dll à faux.
  5. Configurez App.config : Assurez-vous que votre fichier App.config a le paramètre loadFromRemoteSources activé à true.

Le SDK inclut des dossiers d'échantillons que vous pouvez ouvrir et exécuter directement en tant que solutions.## Fonctionnalités avancées d'IronPDF

Conversion HTML en PDF

IronPDF est très efficace pour convertir HTML en documents PDF, une fonctionnalité cruciale pour les applications web qui génèrent des rapports, factures, ou instantanés de pages web. La bibliothèque rend avec précision le HTML, CSS, et JavaScript, préservant la mise en page et les styles du contenu web dans les PDF générés.

Conversion de chaînes HTML en PDF

Convertir des chaînes HTML directement en PDF permet de créer dynamiquement des documents à partir de contenu généré par l'application ou de variables stockées. Cette méthode est bénéfique pour créer des rapports personnalisés, reçus, ou documents basés sur l'entrée utilisateur.

using IronPdf;

// Secure the server environment to disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;

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

// Instantiate a PDF renderer
var renderer = new ChromePdfRenderer();

// Define a simple HTML string to convert to PDF
string htmlContent = @"
<!DOCTYPE html>
<html lang='en'>
<head>
    <meta charset='UTF-8'>
    <meta name='viewport' content='width=device-width, initial-scale=1.0'>
    <title>My PDF</title>
    <style>
        body {
            font-family: Arial, sans-serif;
        }
        h1 {
            color: #333;
            text-align: center;
        }
        p {
            color: #666;
            text-align: justify;
        }
    </style>
</head>
<body>
    <h1>Welcome to My PDF</h1>
    <p>This is a sample paragraph demonstrating how to create a PDF from HTML using IronPdf in C#.</p>
    <p>You can add more content here as needed.</p>
</body>
</html>";

// Render the HTML string as a PDF
var pdf = renderer.RenderHtmlAsPdf(htmlContent);

// Save the resulting PDF to a file
pdf.SaveAs("output.pdf");
using IronPdf;

// Secure the server environment to disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;

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

// Instantiate a PDF renderer
var renderer = new ChromePdfRenderer();

// Define a simple HTML string to convert to PDF
string htmlContent = @"
<!DOCTYPE html>
<html lang='en'>
<head>
    <meta charset='UTF-8'>
    <meta name='viewport' content='width=device-width, initial-scale=1.0'>
    <title>My PDF</title>
    <style>
        body {
            font-family: Arial, sans-serif;
        }
        h1 {
            color: #333;
            text-align: center;
        }
        p {
            color: #666;
            text-align: justify;
        }
    </style>
</head>
<body>
    <h1>Welcome to My PDF</h1>
    <p>This is a sample paragraph demonstrating how to create a PDF from HTML using IronPdf in C#.</p>
    <p>You can add more content here as needed.</p>
</body>
</html>";

// Render the HTML string as a PDF
var pdf = renderer.RenderHtmlAsPdf(htmlContent);

// Save the resulting PDF to a file
pdf.SaveAs("output.pdf");
$vbLabelText   $csharpLabel

Conversion de fichiers HTML en PDF

Si vous avez des fichiers HTML stockés sur le disque, IronPDF peut convertir ces fichiers en documents PDF. Cette méthode est idéale pour les documents HTML existants, les modèles, ou les rapports enregistrés dans votre projet ou serveur.

using IronPdf;

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

// Secure the server environment to disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;

// Instantiate a PDF renderer
var renderer = new ChromePdfRenderer();

// Render the HTML file as a PDF
var pdf = renderer.RenderHtmlFileAsPdf("invoice.html");

// Save the resulting PDF to a file
pdf.SaveAs("file.pdf");
using IronPdf;

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

// Secure the server environment to disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;

// Instantiate a PDF renderer
var renderer = new ChromePdfRenderer();

// Render the HTML file as a PDF
var pdf = renderer.RenderHtmlFileAsPdf("invoice.html");

// Save the resulting PDF to a file
pdf.SaveAs("file.pdf");
$vbLabelText   $csharpLabel

Convertir une URL en PDF

IronPDF peut convertir des pages web en direct en documents PDF en fournissant l'URL. Cette fonctionnalité capture l'état actuel de la page web, y compris les mises en page complexes, CSS, et le contenu généré par JavaScript.

using IronPdf;

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

// Secure the server environment to disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;

// Instantiate a PDF renderer
var renderer = new ChromePdfRenderer();

// Render the URL as a PDF
var pdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_100___");

// Save the resulting PDF to a file
pdf.SaveAs("url.pdf");
using IronPdf;

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

// Secure the server environment to disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;

// Instantiate a PDF renderer
var renderer = new ChromePdfRenderer();

// Render the URL as a PDF
var pdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_100___");

// Save the resulting PDF to a file
pdf.SaveAs("url.pdf");
$vbLabelText   $csharpLabel

Prise en charge de Bootstrap et des frameworks CSS modernes

Une prise en charge complète de Bootstrap et des frameworks CSS est essentielle lors de la génération de PDF à partir d'applications web modernes. Les organisations s'appuient sur Bootstrap pour les interfaces web, rendant la conversion précise en PDF critique pour les rapports, factures, et documentation.

Fonctionnalités Bootstrap prises en charge par IronPDF

IronPDF : Support complet de Bootstrap

  • Bootstrap 5 : Prise en charge complète des mises en page flexbox, CSS Grid, classes utilitaires, et composants réactifs
  • Bootstrap 4 : Systèmes de cartes, composants de navigation, et utilitaires flex complets
  • Tailwind CSS : Toutes les classes utilitaires se rendent avec précision
  • Foundation : Système de grille complète et support des composants
  • CSS3 moderne : Flexbox complet, CSS Grid, propriétés personnalisées, animations, et transitions

IronPDF rend la page d'accueil de Bootstrap et tous les exemples officiels avec une précision au pixel près.

Exemple de code : Tableau de bord des métriques commerciales

using IronPdf;

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

var renderer = new ChromePdfRenderer();
string bootstrapDashboard = @"
<!DOCTYPE html>
<html>
<head>
    <link href='___PROTECTED_URL_101___ rel='stylesheet'>
    <style>
        .metric-card { transition: transform 0.2s; }
        .metric-card:hover { transform: translateY(-5px); }
        .trend-up { color: #28a745; }
        .trend-down { color: #dc3545; }
    </style>
</head>
<body>
    <div class='container-fluid py-4'>
        <div class='d-flex justify-content-between align-items-center mb-4'>
            <h1 class='display-5'>Business Performance Dashboard</h1>
            <div class='text-muted'>Last updated: March 2025</div>
        </div>

        <div class='row g-4 mb-4'>
            <div class='col-md-3'>
                <div class='card metric-card shadow-sm border-start border-primary border-4'>
                    <div class='card-body'>
                        <div class='d-flex justify-content-between align-items-center mb-2'>
                            <h6 class='text-muted text-uppercase mb-0'>Total Revenue</h6>
                            <span class='badge bg-primary'>Q1 2025</span>
                        </div>
                        <h2 class='mb-1'>$2.4M</h2>
                        <div class='trend-up'>
                            <i>↑</i> <strong>+18.5%</strong> from last quarter
                        </div>
                    </div>
                </div>
            </div>

            <div class='col-md-3'>
                <div class='card metric-card shadow-sm border-start border-success border-4'>
                    <div class='card-body'>
                        <div class='d-flex justify-content-between align-items-center mb-2'>
                            <h6 class='text-muted text-uppercase mb-0'>New Customers</h6>
                            <span class='badge bg-success'>Active</span>
                        </div>
                        <h2 class='mb-1'>1,284</h2>
                        <div class='trend-up'>
                            <i>↑</i> <strong>+24.3%</strong> growth rate
                        </div>
                    </div>
                </div>
            </div>

            <div class='col-md-3'>
                <div class='card metric-card shadow-sm border-start border-warning border-4'>
                    <div class='card-body'>
                        <div class='d-flex justify-content-between align-items-center mb-2'>
                            <h6 class='text-muted text-uppercase mb-0'>Avg Order Value</h6>
                            <span class='badge bg-warning text-dark'>Updated</span>
                        </div>
                        <h2 class='mb-1'>$1,847</h2>
                        <div class='trend-up'>
                            <i>↑</i> <strong>+5.2%</strong> increase
                        </div>
                    </div>
                </div>
            </div>

            <div class='col-md-3'>
                <div class='card metric-card shadow-sm border-start border-info border-4'>
                    <div class='card-body'>
                        <div class='d-flex justify-content-between align-items-center mb-2'>
                            <h6 class='text-muted text-uppercase mb-0'>Satisfaction Rate</h6>
                            <span class='badge bg-info'>Excellent</span>
                        </div>
                        <h2 class='mb-1'>94.7%</h2>
                        <div class='trend-up'>
                            <i>↑</i> <strong>+2.1pts</strong> improvement
                        </div>
                    </div>
                </div>
            </div>
        </div>

        <div class='row g-4'>
            <div class='col-md-8'>
                <div class='card shadow-sm'>
                    <div class='card-header bg-white d-flex justify-content-between align-items-center'>
                        <h5 class='mb-0'>Revenue Breakdown by Category</h5>
                        <div class='btn-group btn-group-sm' role='group'>
                            <button type='button' class='btn btn-outline-primary active'>Monthly</button>
                            <button type='button' class='btn btn-outline-primary'>Quarterly</button>
                            <button type='button' class='btn btn-outline-primary'>Annual</button>
                        </div>
                    </div>
                    <div class='card-body'>
                        <div class='table-responsive'>
                            <table class='table table-hover mb-0'>
                                <thead class='table-light'>
                                    <tr>
                                        <th>Category</th>
                                        <th>Revenue</th>
                                        <th>Orders</th>
                                        <th>Avg Value</th>
                                        <th class='text-end'>Trend</th>
                                    </tr>
                                </thead>
                                <tbody>
                                    <tr>
                                        <td><span class='badge bg-primary me-2'>A</span>Enterprise Solutions</td>
                                        <td><strong>$1,245,000</strong></td>
                                        <td>142</td>
                                        <td>$8,768</td>
                                        <td class='text-end'><span class='badge bg-success'>+12%</span></td>
                                    </tr>
                                    <tr>
                                        <td><span class='badge bg-success me-2'>B</span>Professional Services</td>
                                        <td><strong>$687,500</strong></td>
                                        <td>458</td>
                                        <td>$1,501</td>
                                        <td class='text-end'><span class='badge bg-success'>+18%</span></td>
                                    </tr>
                                    <tr>
                                        <td><span class='badge bg-info me-2'>C</span>Standard Packages</td>
                                        <td><strong>$412,300</strong></td>
                                        <td>891</td>
                                        <td>$463</td>
                                        <td class='text-end'><span class='badge bg-success'>+8%</span></td>
                                    </tr>
                                    <tr>
                                        <td><span class='badge bg-warning me-2'>D</span>Custom Development</td>
                                        <td><strong>$55,200</strong></td>
                                        <td>12</td>
                                        <td>$4,600</td>
                                        <td class='text-end'><span class='badge bg-danger'>-3%</span></td>
                                    </tr>
                                </tbody>
                            </table>
                        </div>
                    </div>
                </div>
            </div>

            <div class='col-md-4'>
                <div class='card shadow-sm'>
                    <div class='card-header bg-white'>
                        <h5 class='mb-0'>Quick Actions</h5>
                    </div>
                    <div class='card-body'>
                        <div class='d-grid gap-2'>
                            <button class='btn btn-primary'>Generate Full Report</button>
                            <button class='btn btn-outline-primary'>Export to Excel</button>
                            <button class='btn btn-outline-secondary'>Schedule Email</button>
                            <button class='btn btn-outline-info'>Share Dashboard</button>
                        </div>
                    </div>
                </div>

                <div class='card shadow-sm mt-3'>
                    <div class='card-header bg-white'>
                        <h5 class='mb-0'>Key Insights</h5>
                    </div>
                    <div class='card-body'>
                        <div class='alert alert-success mb-2'>
                            <small><strong>Top Performer:</strong> Enterprise Solutions leading revenue growth</small>
                        </div>
                        <div class='alert alert-info mb-2'>
                            <small><strong>Growth Driver:</strong> Professional Services showing strongest customer acquisition</small>
                        </div>
                        <div class='alert alert-warning mb-0'>
                            <small><strong>Attention Needed:</strong> Custom Development segment requires review</small>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</body>
</html>";

var pdf = renderer.RenderHtmlAsPdf(bootstrapDashboard);
pdf.SaveAs("business-dashboard.pdf");
using IronPdf;

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

var renderer = new ChromePdfRenderer();
string bootstrapDashboard = @"
<!DOCTYPE html>
<html>
<head>
    <link href='___PROTECTED_URL_101___ rel='stylesheet'>
    <style>
        .metric-card { transition: transform 0.2s; }
        .metric-card:hover { transform: translateY(-5px); }
        .trend-up { color: #28a745; }
        .trend-down { color: #dc3545; }
    </style>
</head>
<body>
    <div class='container-fluid py-4'>
        <div class='d-flex justify-content-between align-items-center mb-4'>
            <h1 class='display-5'>Business Performance Dashboard</h1>
            <div class='text-muted'>Last updated: March 2025</div>
        </div>

        <div class='row g-4 mb-4'>
            <div class='col-md-3'>
                <div class='card metric-card shadow-sm border-start border-primary border-4'>
                    <div class='card-body'>
                        <div class='d-flex justify-content-between align-items-center mb-2'>
                            <h6 class='text-muted text-uppercase mb-0'>Total Revenue</h6>
                            <span class='badge bg-primary'>Q1 2025</span>
                        </div>
                        <h2 class='mb-1'>$2.4M</h2>
                        <div class='trend-up'>
                            <i>↑</i> <strong>+18.5%</strong> from last quarter
                        </div>
                    </div>
                </div>
            </div>

            <div class='col-md-3'>
                <div class='card metric-card shadow-sm border-start border-success border-4'>
                    <div class='card-body'>
                        <div class='d-flex justify-content-between align-items-center mb-2'>
                            <h6 class='text-muted text-uppercase mb-0'>New Customers</h6>
                            <span class='badge bg-success'>Active</span>
                        </div>
                        <h2 class='mb-1'>1,284</h2>
                        <div class='trend-up'>
                            <i>↑</i> <strong>+24.3%</strong> growth rate
                        </div>
                    </div>
                </div>
            </div>

            <div class='col-md-3'>
                <div class='card metric-card shadow-sm border-start border-warning border-4'>
                    <div class='card-body'>
                        <div class='d-flex justify-content-between align-items-center mb-2'>
                            <h6 class='text-muted text-uppercase mb-0'>Avg Order Value</h6>
                            <span class='badge bg-warning text-dark'>Updated</span>
                        </div>
                        <h2 class='mb-1'>$1,847</h2>
                        <div class='trend-up'>
                            <i>↑</i> <strong>+5.2%</strong> increase
                        </div>
                    </div>
                </div>
            </div>

            <div class='col-md-3'>
                <div class='card metric-card shadow-sm border-start border-info border-4'>
                    <div class='card-body'>
                        <div class='d-flex justify-content-between align-items-center mb-2'>
                            <h6 class='text-muted text-uppercase mb-0'>Satisfaction Rate</h6>
                            <span class='badge bg-info'>Excellent</span>
                        </div>
                        <h2 class='mb-1'>94.7%</h2>
                        <div class='trend-up'>
                            <i>↑</i> <strong>+2.1pts</strong> improvement
                        </div>
                    </div>
                </div>
            </div>
        </div>

        <div class='row g-4'>
            <div class='col-md-8'>
                <div class='card shadow-sm'>
                    <div class='card-header bg-white d-flex justify-content-between align-items-center'>
                        <h5 class='mb-0'>Revenue Breakdown by Category</h5>
                        <div class='btn-group btn-group-sm' role='group'>
                            <button type='button' class='btn btn-outline-primary active'>Monthly</button>
                            <button type='button' class='btn btn-outline-primary'>Quarterly</button>
                            <button type='button' class='btn btn-outline-primary'>Annual</button>
                        </div>
                    </div>
                    <div class='card-body'>
                        <div class='table-responsive'>
                            <table class='table table-hover mb-0'>
                                <thead class='table-light'>
                                    <tr>
                                        <th>Category</th>
                                        <th>Revenue</th>
                                        <th>Orders</th>
                                        <th>Avg Value</th>
                                        <th class='text-end'>Trend</th>
                                    </tr>
                                </thead>
                                <tbody>
                                    <tr>
                                        <td><span class='badge bg-primary me-2'>A</span>Enterprise Solutions</td>
                                        <td><strong>$1,245,000</strong></td>
                                        <td>142</td>
                                        <td>$8,768</td>
                                        <td class='text-end'><span class='badge bg-success'>+12%</span></td>
                                    </tr>
                                    <tr>
                                        <td><span class='badge bg-success me-2'>B</span>Professional Services</td>
                                        <td><strong>$687,500</strong></td>
                                        <td>458</td>
                                        <td>$1,501</td>
                                        <td class='text-end'><span class='badge bg-success'>+18%</span></td>
                                    </tr>
                                    <tr>
                                        <td><span class='badge bg-info me-2'>C</span>Standard Packages</td>
                                        <td><strong>$412,300</strong></td>
                                        <td>891</td>
                                        <td>$463</td>
                                        <td class='text-end'><span class='badge bg-success'>+8%</span></td>
                                    </tr>
                                    <tr>
                                        <td><span class='badge bg-warning me-2'>D</span>Custom Development</td>
                                        <td><strong>$55,200</strong></td>
                                        <td>12</td>
                                        <td>$4,600</td>
                                        <td class='text-end'><span class='badge bg-danger'>-3%</span></td>
                                    </tr>
                                </tbody>
                            </table>
                        </div>
                    </div>
                </div>
            </div>

            <div class='col-md-4'>
                <div class='card shadow-sm'>
                    <div class='card-header bg-white'>
                        <h5 class='mb-0'>Quick Actions</h5>
                    </div>
                    <div class='card-body'>
                        <div class='d-grid gap-2'>
                            <button class='btn btn-primary'>Generate Full Report</button>
                            <button class='btn btn-outline-primary'>Export to Excel</button>
                            <button class='btn btn-outline-secondary'>Schedule Email</button>
                            <button class='btn btn-outline-info'>Share Dashboard</button>
                        </div>
                    </div>
                </div>

                <div class='card shadow-sm mt-3'>
                    <div class='card-header bg-white'>
                        <h5 class='mb-0'>Key Insights</h5>
                    </div>
                    <div class='card-body'>
                        <div class='alert alert-success mb-2'>
                            <small><strong>Top Performer:</strong> Enterprise Solutions leading revenue growth</small>
                        </div>
                        <div class='alert alert-info mb-2'>
                            <small><strong>Growth Driver:</strong> Professional Services showing strongest customer acquisition</small>
                        </div>
                        <div class='alert alert-warning mb-0'>
                            <small><strong>Attention Needed:</strong> Custom Development segment requires review</small>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</body>
</html>";

var pdf = renderer.RenderHtmlAsPdf(bootstrapDashboard);
pdf.SaveAs("business-dashboard.pdf");
$vbLabelText   $csharpLabel

Sortie : Tableau de bord professionnel au format PDF avec le système de grille basé sur flexbox de Bootstrap 5, des composants de carte avec des utilitaires de bordure, des éléments de badge, des tableaux réactifs, et des métriques codées par couleur—le tout se rendant avec une préservation parfaite de la mise en page et de la typographie.

Limitations du framework CSS d'Apryse

Le module HTML2PDF d'Apryse utilise un moteur de rendu personnalisé (non basé sur Chromium) avec des limitations documentées :

  • Prise en charge partielle de flexbox : Les mises en page Bootstrap 4/5 peuvent ne pas se rendre correctement
  • CSS Grid limité : Les conceptions modernes basées sur la grille échouent souvent
  • Contraintes de JavaScript : Exécution minimale comparée aux environnements de navigateur
  • Compatibilité du framework : Nécessite des tests approfondis pour les composants Bootstrap

La documentation HTML2PDF avertit explicitement que les CSS complexes peuvent ne pas se rendre comme prévu. Les développeurs signalent des problèmes avec les barres de navigation, les mises en page de cartes basées sur flex, et les utilitaires réactifs.

Impact sur le développement : Les équipes utilisant Apryse doivent créer des CSS "sécurisés pour PDF" parallèles ou simplifier considérablement les mises en page Bootstrap, ajoutant des frais généraux de développement et limitant la cohérence de conception entre les sorties web et PDF.

Pour un support complet du framework Bootstrap avec rendu CSS3 complet, voir le Guide Bootstrap & Flexbox CSS.

Fusion et séparation de PDF

IronPDF facilite la combinaison de plusieurs documents PDF ou la division de PDF en fichiers plus petits. Cette fonctionnalité est essentielle pour les systèmes de gestion de documents nécessitant une structure de contenu PDF organisée.

using IronPdf;

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

// Secure the server environment to disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;

// Define HTML content for two PDFs to merge
var htmlA = @"
    <h1>PDF A</h1>
    <p>This is the content of PDF A.</p>
    <p>This is the first page of PDF A.</p>
    <div style='page-break-after: always;'></div>
    <p>This is the second page of PDF A.</p>";

var htmlB = @"
    <h1>PDF B</h1>
    <p>This is the content of PDF B.</p>
    <p>This is the first page of PDF B.</p>
    <div style='page-break-after: always;'></div>
    <p>This is the second page of PDF B.</p>";

// Instantiate a PDF renderer
var renderer = new ChromePdfRenderer();

// Render the HTML content as separate PDF documents
var pdfDocA = renderer.RenderHtmlAsPdf(htmlA);
var pdfDocB = renderer.RenderHtmlAsPdf(htmlB);

// Merge the two PDFs into one
var mergedPdf = PdfDocument.Merge(pdfDocA, pdfDocB);

// Save the merged PDF to a file
mergedPdf.SaveAs("Merged.pdf");
using IronPdf;

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

// Secure the server environment to disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;

// Define HTML content for two PDFs to merge
var htmlA = @"
    <h1>PDF A</h1>
    <p>This is the content of PDF A.</p>
    <p>This is the first page of PDF A.</p>
    <div style='page-break-after: always;'></div>
    <p>This is the second page of PDF A.</p>";

var htmlB = @"
    <h1>PDF B</h1>
    <p>This is the content of PDF B.</p>
    <p>This is the first page of PDF B.</p>
    <div style='page-break-after: always;'></div>
    <p>This is the second page of PDF B.</p>";

// Instantiate a PDF renderer
var renderer = new ChromePdfRenderer();

// Render the HTML content as separate PDF documents
var pdfDocA = renderer.RenderHtmlAsPdf(htmlA);
var pdfDocB = renderer.RenderHtmlAsPdf(htmlB);

// Merge the two PDFs into one
var mergedPdf = PdfDocument.Merge(pdfDocA, pdfDocB);

// Save the merged PDF to a file
mergedPdf.SaveAs("Merged.pdf");
$vbLabelText   $csharpLabel

Ajout de filigranes aux PDF

IronPDF vous permet d'ajouter des filigranes aux pages de PDF pour l'image de marque ou le marquage des documents comme confidentiels. La bibliothèque gère la complexité des filigranes de texte et d'image, offrant une flexibilité d'application et d'affichage.

using IronPdf;

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

// Secure the server environment to disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;

// Instantiate a PDF renderer
var renderer = new ChromePdfRenderer();

// Render a URL as a PDF
var pdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_102___");

// Apply a watermark to the PDF
pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE</h2>", 30, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center);

// Save the watermarked PDF to a file
pdf.SaveAs("Watermarked.pdf");
```### How Do I Work with PDF Forms?

IronPDF supports complete [interactive PDF form handling](https://ironpdf.com/how-to/create-forms/). You can create, fill, and submit PDF forms programmatically, which is particularly useful for automating form processing or integrating form data collection into your workflows.

```csharp
using IronPdf;

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

// Secure the server environment to disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;

// Define HTML content with form elements
const string formHtml = @"
    <html>
        <body>
            <h2>Employee Information Form</h2>
            <form>
                First name: <br> 
                Last name: <br> 
                <br>
                <p>Please select your department:</p>
                <select name='department'>
                    <option value='HR'>HR</option>
                    <option value='Finance'>Finance</option>
                    <option value='IT'>IT</option>
                    <option value='Marketing'>Marketing</option>
                </select>
                <br>
                <br>
                <p>Please select your employment status:</p>
                <label for='fulltime'>Full-time</label> <br>
                <label for='parttime'>Part-time</label> <br>
                <br>
                <p>Please select your skills:</p>
                <label for='skill1'> Programming</label><br>
                <label for='skill2'> Design</label><br>
                <label for='skill3'> Marketing</label><br>
            </form>
        </body>
    </html>";

// Instantiate a PDF renderer
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.CreatePdfFormsFromHtml = true;

// Render the HTML form content as a PDF
renderer.RenderHtmlAsPdf(formHtml).SaveAs("EmployeeInfoForm.pdf");
using IronPdf;

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

// Secure the server environment to disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;

// Instantiate a PDF renderer
var renderer = new ChromePdfRenderer();

// Render a URL as a PDF
var pdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_102___");

// Apply a watermark to the PDF
pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE</h2>", 30, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center);

// Save the watermarked PDF to a file
pdf.SaveAs("Watermarked.pdf");
```### How Do I Work with PDF Forms?

IronPDF supports complete [interactive PDF form handling](https://ironpdf.com/how-to/create-forms/). You can create, fill, and submit PDF forms programmatically, which is particularly useful for automating form processing or integrating form data collection into your workflows.

```csharp
using IronPdf;

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

// Secure the server environment to disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;

// Define HTML content with form elements
const string formHtml = @"
    <html>
        <body>
            <h2>Employee Information Form</h2>
            <form>
                First name: <br> 
                Last name: <br> 
                <br>
                <p>Please select your department:</p>
                <select name='department'>
                    <option value='HR'>HR</option>
                    <option value='Finance'>Finance</option>
                    <option value='IT'>IT</option>
                    <option value='Marketing'>Marketing</option>
                </select>
                <br>
                <br>
                <p>Please select your employment status:</p>
                <label for='fulltime'>Full-time</label> <br>
                <label for='parttime'>Part-time</label> <br>
                <br>
                <p>Please select your skills:</p>
                <label for='skill1'> Programming</label><br>
                <label for='skill2'> Design</label><br>
                <label for='skill3'> Marketing</label><br>
            </form>
        </body>
    </html>";

// Instantiate a PDF renderer
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.CreatePdfFormsFromHtml = true;

// Render the HTML form content as a PDF
renderer.RenderHtmlAsPdf(formHtml).SaveAs("EmployeeInfoForm.pdf");
$vbLabelText   $csharpLabel

Formulaire PDF interactif généré montrant divers éléments de formulaire, y compris des champs de texte, des menus déroulants, des boutons radio, et des cases à cocher - démontrant les capacités de création de formulaire.

Comment sécuriser et crypter les PDF ?

IronPDF fournit des fonctionnalités fiables pour sécuriser les documents PDF, y compris le chiffrement, les paramètres de permission, et les signatures numériques. Cela assure la protection des informations sensibles et le maintien de l'intégrité du document.

using IronPdf;

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

// Secure the server environment to disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;

// Load an existing PDF file
var pdf = PdfDocument.FromFile("invoice.pdf");

// Set document security settings
pdf.SecuritySettings.OwnerPassword = "top-secret"; // Password to edit the PDF
pdf.SecuritySettings.UserPassword = "sharable";   // Password to open the PDF

// Save the secured PDF to a file
pdf.SaveAs("secured.pdf");
using IronPdf;

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

// Secure the server environment to disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;

// Load an existing PDF file
var pdf = PdfDocument.FromFile("invoice.pdf");

// Set document security settings
pdf.SecuritySettings.OwnerPassword = "top-secret"; // Password to edit the PDF
pdf.SecuritySettings.UserPassword = "sharable";   // Password to open the PDF

// Save the secured PDF to a file
pdf.SaveAs("secured.pdf");
$vbLabelText   $csharpLabel

Boîte de dialogue d'entrée de mot de passe avec un champ de texte et deux boutons intitulés 'Ouvrir le fichier' et 'Annuler'

Quelles sont les options d'édition avancée disponibles ?

IronPDF offre des capacités d'édition avancées au-delà des modifications de base. Cela inclut l'ajout d'en-têtes et de pieds de page, la personnalisation de la mise en page, et l'intégration d'images et de polices. Ces fonctionnalités permettent la génération dynamique de PDF et la personnalisation pour des exigences d'application spécifiques.

using IronPdf;

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

// Secure the server environment to disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;

// Instantiate a PDF renderer
var renderer = new IronPdf.ChromePdfRenderer();

// Define multi-page HTML content with page breaks
var multiPageHtml = @"
    <p> This is 1st Page</p>
    <div style = 'page-break-after: always;' ></div>
    <p> This is 2nd Page</p>
    <div style = 'page-break-after: always;' ></div>
    <p> This is 3rd Page</p>
    <div style = 'page-break-after: always;' ></div>
    <p> This is 4th Page</p>
    <div style = 'page-break-after: always;' ></div>
    <p> This is 5th Page</p>
    <div style = 'page-break-after: always;' ></div>
    <p> This is 6th Page</p>
    <div style = 'page-break-after: always;' ></div>
    <p> This is 7th Page</p>";

// Render the HTML content as a PDF
var pdfDoc = renderer.RenderHtmlAsPdf(multiPageHtml);

// Create a header for the first page only
var firstPageHeader = new HtmlHeaderFooter();
firstPageHeader.HtmlFragment = "This is the First Page Header";
pdfDoc.AddHtmlHeaders(firstPageHeader, 1);

// Save the resulting PDF with headers to a file
pdfDoc.SaveAs("PagesWithHeaders.pdf");
using IronPdf;

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

// Secure the server environment to disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;

// Instantiate a PDF renderer
var renderer = new IronPdf.ChromePdfRenderer();

// Define multi-page HTML content with page breaks
var multiPageHtml = @"
    <p> This is 1st Page</p>
    <div style = 'page-break-after: always;' ></div>
    <p> This is 2nd Page</p>
    <div style = 'page-break-after: always;' ></div>
    <p> This is 3rd Page</p>
    <div style = 'page-break-after: always;' ></div>
    <p> This is 4th Page</p>
    <div style = 'page-break-after: always;' ></div>
    <p> This is 5th Page</p>
    <div style = 'page-break-after: always;' ></div>
    <p> This is 6th Page</p>
    <div style = 'page-break-after: always;' ></div>
    <p> This is 7th Page</p>";

// Render the HTML content as a PDF
var pdfDoc = renderer.RenderHtmlAsPdf(multiPageHtml);

// Create a header for the first page only
var firstPageHeader = new HtmlHeaderFooter();
firstPageHeader.HtmlFragment = "This is the First Page Header";
pdfDoc.AddHtmlHeaders(firstPageHeader, 1);

// Save the resulting PDF with headers to a file
pdfDoc.SaveAs("PagesWithHeaders.pdf");
$vbLabelText   $csharpLabel

Visionneuse PDF montrant un document de deux pages avec 'Ceci est le Premier En-tête de Page' sur la page 1 et 'Ceci est la 1ère Page' en tant que contenu, avec des vignettes de page visibles dans la barre latérale gauche.

Quelles sont les fonctionnalités avancées qu'Apryse C# offre ?

Comment ajouter des annotations et des marquages ?

Apryse C# vous permet d'ajouter des annotations et des marquages aux documents PDF de manière programmatique. Cela inclut des annotations de texte, des surlignages, des soulignés, et des formes — essentielles pour les processus de révision de documents ou l'ajout d'informations supplémentaires.

using pdftron;
using pdftron.PDF;
using pdftron.SDF;

class Program
{
    static void Main()
    {
        // Initialize the PDFNet library with your license key
        PDFNet.Initialize("License");

        // Open an existing PDF document
        using (PDFDoc doc = new PDFDoc("input.pdf"))
        {
            // Access the first page of the document
            Page page = doc.GetPage(1);

            // Create a text annotation on the document
            Text txt = Text.Create(doc, new Rect(10, 20, 30, 40));
            txt.SetIcon("UserIcon");
            txt.SetContents("It's an annotation!");
            page.AnnotPushBack(txt);

            // Save the modified document
            doc.Save("output.pdf", SDFDoc.SaveOptions.e_linearized);
        }
    }
}
using pdftron;
using pdftron.PDF;
using pdftron.SDF;

class Program
{
    static void Main()
    {
        // Initialize the PDFNet library with your license key
        PDFNet.Initialize("License");

        // Open an existing PDF document
        using (PDFDoc doc = new PDFDoc("input.pdf"))
        {
            // Access the first page of the document
            Page page = doc.GetPage(1);

            // Create a text annotation on the document
            Text txt = Text.Create(doc, new Rect(10, 20, 30, 40));
            txt.SetIcon("UserIcon");
            txt.SetContents("It's an annotation!");
            page.AnnotPushBack(txt);

            // Save the modified document
            doc.Save("output.pdf", SDFDoc.SaveOptions.e_linearized);
        }
    }
}
$vbLabelText   $csharpLabel

Visionneuse PDF montrant un document avec une annotation de texte qui dit 'C'est une annotation !' et une petite icône de commentaire jaune en dessous.

Comment convertir des documents en PDF ?

Apryse C# permet la conversion de divers formats de documents en PDF, y compris les documents Office, les images, et HTML. Cette fonctionnalité assure des formats de documents uniformes pour l'archivage, le partage, ou l'affichage.

using pdftron;
using pdftron.PDF;

class Program
{
    static void Main()
    {
        // Initialize the PDFNet library
        PDFNet.Initialize();

        // Create a new PDF document
        PDFDoc pdfdoc = new PDFDoc();

        // Convert a Word document to PDF and add it to the PDF document
        Convert.ToPdf(pdfdoc, "input.docx");

        // Save the newly created PDF document
        pdfdoc.Save("output.pdf", SDFDoc.SaveOptions.e_linearized);
    }
}
using pdftron;
using pdftron.PDF;

class Program
{
    static void Main()
    {
        // Initialize the PDFNet library
        PDFNet.Initialize();

        // Create a new PDF document
        PDFDoc pdfdoc = new PDFDoc();

        // Convert a Word document to PDF and add it to the PDF document
        Convert.ToPdf(pdfdoc, "input.docx");

        // Save the newly created PDF document
        pdfdoc.Save("output.pdf", SDFDoc.SaveOptions.e_linearized);
    }
}
$vbLabelText   $csharpLabel

Comment extraire du contenu à partir de PDF ?

Apryse C# excelle à l'extraction de texte, d'images, et d'autres contenus des documents PDF. Cette capacité prend en charge l'analyse de contenu, l'extraction de données, et les applications de récupération d'informations, permettant un traitement efficace du contenu PDF.

using pdftron;
using pdftron.PDF;
using pdftron.SDF;

class Program
{
    static void Main()
    {
        // Initialize the PDFNet library
        PDFNet.Initialize();

        // Open an existing PDF document
        using (PDFDoc doc = new PDFDoc("input.pdf"))
        {
            // Iterate through each page of the document
            PageIterator itr = doc.GetPageIterator();
            for (; itr.HasNext(); itr.Next())
            {
                Page page = itr.Current();

                // Extract text from the page
                TextExtractor txt = new TextExtractor();
                txt.Begin(page);

                // Print the extracted text to the console
                Console.WriteLine(txt.GetAsText());
            }
        }
    }
}
using pdftron;
using pdftron.PDF;
using pdftron.SDF;

class Program
{
    static void Main()
    {
        // Initialize the PDFNet library
        PDFNet.Initialize();

        // Open an existing PDF document
        using (PDFDoc doc = new PDFDoc("input.pdf"))
        {
            // Iterate through each page of the document
            PageIterator itr = doc.GetPageIterator();
            for (; itr.HasNext(); itr.Next())
            {
                Page page = itr.Current();

                // Extract text from the page
                TextExtractor txt = new TextExtractor();
                txt.Begin(page);

                // Print the extracted text to the console
                Console.WriteLine(txt.GetAsText());
            }
        }
    }
}
$vbLabelText   $csharpLabel

Console output showing extracted invoice text data including invoice number INV-001, date February 14 2024, customer John Doe, and product details with prices totaling $35.00

Comment sécuriser les PDF avec Apryse ?

Apryse C# fournit des outils complets pour sécuriser les documents PDF. Vous pouvez appliquer une protection par mot de passe, crypter des documents, et gérer les permissions utilisateur pour sauvegarder les informations sensibles.

using pdftron;
using pdftron.SDF;
using pdftron.PDF;

class Program
{
    static void Main()
    {
        // Initialize the PDFNet library
        PDFNet.Initialize();

        // Open an existing PDF document
        using (PDFDoc doc = new PDFDoc("input.pdf"))
        {
            // Initialize the security handler
            doc.InitSecurityHandler();

            // Create a new security handler
            SecurityHandler newHandler = new SecurityHandler();

            // Set the user password for the document
            newHandler.ChangeUserPassword("new_password");

            // Grant permission to print the document
            newHandler.SetPermission(SecurityHandler.Permission.e_print, true);

            // Apply the security handler to the document
            doc.SetSecurityHandler(newHandler);

            // Save the secured document
            doc.Save("output.pdf", SDFDoc.SaveOptions.e_linearized);
        }
    }
}
using pdftron;
using pdftron.SDF;
using pdftron.PDF;

class Program
{
    static void Main()
    {
        // Initialize the PDFNet library
        PDFNet.Initialize();

        // Open an existing PDF document
        using (PDFDoc doc = new PDFDoc("input.pdf"))
        {
            // Initialize the security handler
            doc.InitSecurityHandler();

            // Create a new security handler
            SecurityHandler newHandler = new SecurityHandler();

            // Set the user password for the document
            newHandler.ChangeUserPassword("new_password");

            // Grant permission to print the document
            newHandler.SetPermission(SecurityHandler.Permission.e_print, true);

            // Apply the security handler to the document
            doc.SetSecurityHandler(newHandler);

            // Save the secured document
            doc.Save("output.pdf", SDFDoc.SaveOptions.e_linearized);
        }
    }
}
$vbLabelText   $csharpLabel

Comment censurer des informations sensibles ?

Apryse C# supporte la censure des informations sensibles dans les documents PDF — essentiel pour les préoccupations de conformité et de confidentialité. Cette fonctionnalité permet la suppression permanente ou l'obscurcissement de texte et d'images dans les PDF.

using pdftron;
using pdftron.PDF;
using pdftron.SDF;

class Program
{
    static void Main()
    {
        // Initialize the PDFNet library
        PDFNet.Initialize();

        // Open an existing PDF document
        using (PDFDoc doc = new PDFDoc("input.pdf"))
        {
            // Define redaction areas on specific pages
            Redactor.Redaction[] redactions = {
                new Redactor.Redaction(1, new Rect(100, 100, 200, 200), false, "redacted"),
            };

            // Apply redactions to the document
            Redactor.Redact(doc, redactions);

            // Save the redacted document
            doc.Save("output.pdf", SDFDoc.SaveOptions.e_linearized);
        }
    }
}
using pdftron;
using pdftron.PDF;
using pdftron.SDF;

class Program
{
    static void Main()
    {
        // Initialize the PDFNet library
        PDFNet.Initialize();

        // Open an existing PDF document
        using (PDFDoc doc = new PDFDoc("input.pdf"))
        {
            // Define redaction areas on specific pages
            Redactor.Redaction[] redactions = {
                new Redactor.Redaction(1, new Rect(100, 100, 200, 200), false, "redacted"),
            };

            // Apply redactions to the document
            Redactor.Redact(doc, redactions);

            // Save the redacted document
            doc.Save("output.pdf", SDFDoc.SaveOptions.e_linearized);
        }
    }
}
$vbLabelText   $csharpLabel

Quelle documentation et support sont disponibles ?

Quel support IronPDF fournit-il ?

Documentation : IronPDF offre une documentation complète couvrant des sujets allant des guides de démarrage aux fonctionnalités avancées comme la conversion de HTML en PDF, l'édition de PDF, la fusion, la division, et la sécurité. La documentation fournit un contenu facile à suivre avec des exemples de code étendus et des explications vous guidant à travers l'implémentation de différentes fonctionnalités PDF.

Support : IronPDF offre une assistance via plusieurs canaux, y compris le support par e-mail, le support par ticket, et le chat de support d'ingénierie en direct où vous pouvez vous connecter avec leur équipe technique pour des problèmes spécifiques. Votre application peut immédiatement bénéficier de leur système de retour d'information.

Interface de chat du support Iron montrant des options pour se connecter avec les équipes de Support de l'Ingénierie ou des Ventes de Licences

Quel support Apryse C# fournit-il ?

Documentation : Apryse C# (anciennement PDFTron for .NET) fournit une documentation détaillée incluant une référence complète de l'API, des guides de développeur, et des exemples de code pour diverses tâches de manipulation de PDF.

Support : Apryse offre un support aux développeurs par communication e-mail directe avec leur équipe technique pour les questions de dépannage et d'implémentation. Vous pouvez également poser des questions sur Stack Overflow.

Quelles sont les options de licence et de tarification ?

Quelles sont les options de licence d'IronPDF ?

IronPDF offre plusieurs options de licence adaptées aux différents besoins de projet. Les prix commencent à $799 pour une licence Lite. Ces licences varient en fonction du nombre de développeurs, des emplacements, et des projets couverts. IronPDF fournit également des options de redistribution libre de droits et un support étendu avec une tarification spécifique pour les add-ons.

Les options de licence perpétuelle d'IronPDF incluent :

  • Édition Lite : Coûte $799, adaptée à 1 développeur, 1 emplacement, et 1 projet, avec support par e-mail inclus.
  • Édition Plus : Au prix de $1,199, elle couvre jusqu'à 3 développeurs, 3 emplacements, et 3 projets, avec support e-mail 24h, chat, et téléphone.
  • Édition Professionnelle : À $2,399, cette édition est pour jusqu'à 10 développeurs, 10 emplacements, et 10 projets, offrant un support complet incluant e-mail, chat, téléphone, et partage d'écran.

Ils proposent également un abonnement mensuel à 500 $ incluant 10 000 appels API, avec des appels supplémentaires à 0,02 $ chacun. Pour une utilisation illimitée, IronPDF propose une solution d'entreprise avec une tarification basée sur devis. Cette solution inclut une licence perpétuelle illimitée et des appels API entre autres fonctionnalités.

IronPDF pricing page showing three perpetual license tiers: Lite ($749), Plus ($1,499), and Professional ($2,999), with the Plus option selected and showing a total of $2,498 including extended support.

Quelles sont les options de licence d'Apryse C# ?

Apryse C# propose une tarification personnalisable basée sur des exigences de projet spécifiques, y compris des fonctionnalités, le volume de documents, et des scénarios de déploiement. Vous devez contacter leur équipe commerciale pour obtenir des informations sur la tarification d'Apryse.

Formulaire de demande de tarification Apryse avec des champs pour les informations de contact et les détails d'utilisation de l'application

Quelle bibliothèque PDF devrais-je choisir ?

IronPDF et Apryse C# apportent toutes deux des capacités efficaces pour les développeurs .NET travaillant avec des PDF. IronPDF offre un avantage avec des fonctionnalités étendues de manipulation de PDF. Il excelle avec des capacités complètes incluant une édition étendue et la fusion de PDF avec IronPDF. Le package Iron Suite vous donne accès à plusieurs outils à un prix abordable, équipant votre développement d'utilitaires fiables pour divers besoins.

IronPDF se démarque par sa polyvalence globale et sa proposition de valeur dans la plupart des scénarios de traitement de PDF. Votre décision finale devrait s'aligner avec vos exigences de projet et les fonctionnalités spécifiques nécessaires pour votre développement.

Veuillez noterApryse C# est une marque déposée de son propriétaire respectif. Ce site n'est pas affilié, approuvé ou sponsorisé par Apryse C#. Tous les noms de produits, logos et marques sont la propriété de leurs propriétaires respectifs. Les comparaisons sont à titre informatif uniquement et reflètent les informations publiquement disponibles au moment de l'écriture.

Questions Fréquemment Posées

Quelles sont les principales différences entre IronPDF et Apryse C# pour la manipulation de PDF ?

IronPDF est connu pour son intégration transparente avec .NET et ses capacités avancées dans la conversion HTML en PDF, la gestion des formulaires et les fonctionnalités de sécurité. Apryse C#, anciennement connu sous le nom de PDFTron SDK, se concentre sur l'extraction de contenu et la conversion de documents, offrant des fonctionnalités avancées comme les annotations et la rédaction.

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

Vous pouvez utiliser la méthode RenderHtmlAsPdf de la bibliothèque IronPDF pour convertir des chaînes HTML directement en documents PDF. Cela est utile pour générer des PDF à partir de contenu web ou de modèles HTML.

Quelles sont les étapes d'installation d'IronPDF dans un projet .NET ?

IronPDF peut être facilement installé en utilisant le gestionnaire de packages NuGet dans Visual Studio. Vous pouvez également utiliser la console du gestionnaire de packages pour exécuter la commande Install-Package IronPDF ou le télécharger directement depuis le site Web de NuGet.

Comment IronPDF gère-t-il la sécurité et le chiffrement des PDF ?

IronPDF fournit des options de sécurité exhaustive, y compris la possibilité de chiffrer des documents, de définir des permissions utilisateur, et de gérer des signatures numériques. Cela garantit que les PDF sont protégés et conformes aux normes de sécurité.

Quelles sont les fonctionnalités avancées d'édition de PDF qu'offre IronPDF ?

IronPDF prend en charge une gamme de fonctionnalités d'édition avancées, y compris la possibilité de fusionner et de diviser des documents, d'ajouter des filigranes, et de personnaliser les en-têtes et les pieds de page. Il offre également des options de personnalisation de la mise en page pour une création de documents plus adaptée.

Quels supports et ressources sont disponibles pour les utilisateurs d'IronPDF ?

IronPDF offre une documentation extensive, un support par e-mail, un support basé sur des tickets, et un chat d'ingénierie en direct pour assister les développeurs avec l'implémentation et la résolution de problèmes. Cela assure que les utilisateurs aient les ressources nécessaires pour une manipulation efficace des PDF.

Quelles sont les options de licence disponibles pour IronPDF ?

IronPDF propose plusieurs options de licence, y compris les licences Lite, Plus, et Professional, répondant à différents niveaux de support et aux besoins des développeurs. Un modèle d'abonnement mensuel et des solutions d'entreprise sont également disponibles pour un usage plus large.

Comment extraire du texte d'un PDF en utilisant Apryse C# ?

Apryse C# fournit des capacités d'extraction de texte robustes, permettant aux développeurs d'extraire du contenu des PDF de manière programmée. Cette fonctionnalité est essentielle pour les applications nécessitant une analyse de données ou une manipulation de contenu.

Quels formats de document Apryse C# peut-il convertir en PDF ?

Apryse C# prend en charge la conversion de divers formats de documents, y compris les documents Office, les images, et les fichiers HTML, en PDF. Cette fonctionnalité est cruciale pour maintenir la cohérence dans la présentation de documents sur différentes plateformes.

Quelles sont les fonctionnalités clés d'IronPDF pour les développeurs .NET ?

IronPDF est connu pour ses fonctionnalités avancées telles que la conversion de HTML en PDF, la gestion complète des formulaires, et la sécurité des documents. Il est apprécié pour sa performance, sa scalabilité, et son intégration transparente avec .NET, le rendant idéal pour une large gamme de scénarios de traitement de PDF.

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
Apryse Logo

Fatigué des renouvellements coûteux et des mises à jour de produit périmées ?

Passez facilement de Apryse grâce à notre soutien à la migration de l'ingénierie et à une meilleure offre.

IronPDF Logo

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me