Versions

Astuce

Documentize peut être installé de plusieurs manières. Choisissez l’option qui correspond le mieux à votre environnement de développement et à votre flux de travail.

Avertissement

En téléchargeant Documentize sous quelque forme que ce soit, vous acceptez le Smallize EULA.

Obtenir via NuGet

NuGet est le moyen recommandé pour installer Documentize et maintenir le package à jour.
Installez-le en utilisant l’une des méthodes suivantes. Pour plus de détails, consultez le guide d’installation de NuGet.

.NET CLI

dotnet add package Documentize

Package Manager Console

NuGet\Install-Package Documentize

PackageReference

<PackageReference Include="Documentize" Version="26.10.0" />

Télécharger l’installateur MSI

Une autre option pour obtenir Documentize est de télécharger le package MSI, qui installe les assemblages nécessaires (DLL). Cliquez simplement sur le bouton de téléchargement ci‑dessous ou en savoir plus sur cette méthode d’installation dans le guide d’installation MSI.

Télécharger la dernière v26.11 MSI

Télécharger le ZIP

Vous pouvez également télécharger un package ZIP contenant uniquement les fichiers DLL et les placer où vous le souhaitez. En savoir plus dans le guide d’installation ZIP.

Télécharger la dernière v26.11 ZIP
15 oct. 2026

Sous-sections de Versions

About Documentize

Qu’est‑ce que Documentize ?

Documentize est un composant .NET robuste qui permet aux développeurs de créer des documents PDF professionnels et polyvalents de manière programmatique, éliminant le besoin d’outils externes comme Adobe Acrobat.

Pourquoi utiliser Documentize ?

Voici pourquoi Documentize se démarque :

  • Création de PDF sans effort : Générez des PDF simples ou complexes à la volée, en intégrant des éléments tels que des tableaux, graphiques, images, hyperliens et polices personnalisées.
  • Sécurité renforcée : Intégrez des fonctionnalités de sécurité robustes pour protéger vos documents PDF sensibles.
  • Options de développement flexibles : Choisissez entre la création de PDF via une API conviviale ou des modèles XML pour un flux de travail simplifié.
  • Intégration simplifiée : Documentize s’intègre parfaitement à diverses applications .NET, y compris les applications web ASP.NET et les applications Windows, écrites en C#, VB.NET et J#.
  • Rapide et efficace : Le composant léger génère les PDF de façon efficace, optimisant les performances de votre application.
  • Rentable et supporté : Profitez d’un prix compétitif, de performances exceptionnelles et d’un support complet pour une expérience de développement fluide.

Principales fonctionnalités

  • Prise en charge de contenus riches : Ajoutez des tableaux, graphiques, images, hyperliens, polices personnalisées, etc., à vos PDF.
  • Capacités de compression : Réduisez la taille de vos PDF pour faciliter le stockage et la distribution.
  • Sécurité avancée : Mettez en œuvre des fonctions de sécurité pour protéger les informations confidentielles contenues dans vos documents PDF.
  • Méthodes de création doubles : Créez des PDF via une API programmatique ou des modèles XML pour plus de flexibilité.
  • Compatibilité multiplateforme : Fonctionne sans problème avec divers langages .NET et types d’applications.
  • Prise en charge du multithreading : Permet la création simultanée sécurisée de plusieurs PDF sur différents threads.
  • Ressources d’apprentissage : Accédez à des démonstrations complètes et à des exemples fonctionnels en C# pour accélérer votre processus de développement.

Choix idéal pour de nombreux secteurs d’activité

Documentize s’adresse à un large éventail de secteurs où la génération de PDF joue un rôle crucial. Parmi eux :

  • Finance et comptabilité : Génération de factures, reçus, rapports financiers et autres documents essentiels.
  • Santé : Création de dossiers patients, ordonnances et rapports de laboratoire dans un format sécurisé et standardisé.
  • Fabrication : Production de fiches techniques, rapports de contrôle qualité et documents d’expédition.
  • Administration et juridique : Génération de permis, licences, contrats et documents judiciaires avec des fonctions de sécurité renforcées.
  • Éducation : Création de certificats, relevés de notes, rapports et autres documents académiques.

Documentize permet aux développeurs de divers secteurs de rationaliser leurs flux de création de PDF, assurant efficacité, sécurité et flexibilité.

3 nov. 2026

Évaluer

Vous pouvez facilement télécharger les SDK Documentize à des fins d’évaluation. La version d’évaluation est identique à la version achetée, la seule différence réside dans la façon dont vous appliquez la licence.

Limitations de la version d’évaluation

La version d’évaluation de Documentize (sans licence spécifiée) offre toutes les fonctionnalités du produit, mais elle comporte deux limitations : elle insère un filigrane d’évaluation sur les pages, et seules quatre pages peuvent être consultées/modifiées.

Plus d’informations sur l’évaluation et la licence ici

3 nov. 2026

Installation

Installation du SDK Documentize

Documentize peut être installé de plusieurs manières, chacune adaptée à différents environnements de développement et préférences. Voici les méthodes recommandées pour installer Documentize :

1. NuGet (Méthode préférée)

NuGet est la méthode la plus simple et la plus recommandée pour installer Documentize, vous assurant d’avoir toujours la dernière version et les mises à jour directement dans votre environnement de développement. Consultez plus de détails sur cette méthode d’installation à l’adresse Comment installer les SDK Documentize avec NuGet.

2. Installateur MSI

L’installateur MSI est une option pratique si vous souhaitez que les DLL de Documentize soient installées directement sur votre système. Cette méthode est idéale pour les développeurs qui veulent utiliser Documentize dans plusieurs projets sans devoir gérer manuellement les fichiers DLL. Consultez plus de détails sur cette méthode d’installation à l’adresse Comment installer les SDK Documentize avec MSI.

3. Archive ZIP

Pour les développeurs qui préfèrent une approche manuelle, l’archive ZIP contient les DLL de Documentize, qui peuvent être extraites et ajoutées directement à votre projet. Consultez plus de détails sur cette méthode d’installation à l’adresse Comment installer les SDK Documentize avec ZIP.

3 nov. 2026

Sous-sections de Installation

Installing Documentize via NuGet

Astuce

NuGet est un gestionnaire de packages gratuit et open source pour .NET qui simplifie l’ajout, la suppression et la mise à jour des bibliothèques dans les projets Visual Studio. Il gère automatiquement les fichiers de bibliothèque, les références et les modifications de configuration.

Comment installer via la console du Gestionnaire de packages NuGet

  1. Ouvrez votre projet :

    • Lancez Visual Studio et ouvrez votre application .NET.
  2. Accédez à la console du Gestionnaire de packages :

    • Naviguez vers Outils > Gestionnaire de packages NuGet > Console du Gestionnaire de packages.
  3. Installez le package :

    • Pour installer la dernière version complète, saisissez la commande Install-Package Documentize.
    • Pour installer la dernière version incluant les correctifs, utilisez Install-Package Documentize -prerelease.
    • Appuyez sur Entrée pour exécuter la commande.

Comment mettre à jour le package via la console du Gestionnaire de packages NuGet

Si vous avez déjà installé Documentize via NuGet et que vous souhaitez le mettre à jour vers la dernière version :

  1. Ouvrez votre projet :

    • Lancez Visual Studio et ouvrez votre application .NET.
  2. Accédez à la console du Gestionnaire de packages :

    • Naviguez vers Outils > Gestionnaire de packages NuGet > Console du Gestionnaire de packages.
  3. Mettez à jour le package :

    • Pour mettre à jour vers la dernière version complète, saisissez Update-Package Documentize.
    • Pour mettre à jour vers la dernière version incluant les correctifs, utilisez Update-Package Documentize -prerelease.
    • Appuyez sur Entrée pour exécuter la commande.

Comment installer via l’interface graphique du Gestionnaire de packages NuGet

  1. Ouvrez votre projet :

    • Lancez Visual Studio et ouvrez votre application .NET.
  2. Accédez à Gérer les packages NuGet :

    • Dans le menu Projet, sélectionnez Gérer les packages NuGet.
  3. Recherchez Documentize :

    • Allez dans l’onglet Parcourir et saisissez Documentize dans la zone de recherche.
  4. Installez le package :

    • Cliquez sur Installer/Mettre à jour à côté de la dernière version de Documentize.
    • Confirmez en cliquant sur Accepter dans la fenêtre contextuelle.

Avantages de l’utilisation de NuGet

  • Gestion automatique des dépendances :

    • NuGet gère automatiquement les dépendances, garantissant que toutes les bibliothèques requises sont incluses et mises à jour correctement. Cela réduit le risque de dépendances manquantes ou incompatibles.
  • Mises à jour simplifiées :

    • Mettre à jour les packages est simple avec NuGet, que ce soit via la console du Gestionnaire de packages ou l’interface graphique. Cela facilite le maintien de vos bibliothèques à jour avec les dernières fonctionnalités et corrections de bugs.
  • Intégré à Visual Studio :

    • NuGet est parfaitement intégré à Visual Studio, offrant une interface conviviale pour gérer les packages sans quitter l’environnement de développement.
  • Gestion des versions :

    • NuGet vous permet de spécifier et de gérer différentes versions de bibliothèques, vous permettant de revenir facilement à des versions antérieures ou de tester de nouvelles versions sans perturber votre développement.

Inconvénients de l’utilisation de NuGet

  • Limité à Visual Studio :

    • NuGet est principalement conçu pour être utilisé dans Visual Studio. Bien qu’il puisse être utilisé dans d’autres environnements, l’intégration est la plus robuste dans Visual Studio.
  • Risques de conflits de version :

    • Dans les projets plus grands avec de nombreuses dépendances, la gestion des versions et la résolution des conflits peuvent devenir complexes. NuGet propose des outils pour gérer cela, mais cela nécessite une attention particulière.
  • Dépendance réseau :

    • L’installation et la mise à jour des packages nécessitent une connexion Internet. Si vous travaillez dans un environnement avec un accès Internet limité ou inexistant, vous devrez recourir à des méthodes hors ligne ou pré‑télécharger les packages.
  • Complexité pour les gros projets :

    • Pour des projets très volumineux avec des arbres de dépendances étendus, la surcharge de gestion des packages via NuGet peut devenir fastidieuse. Dans ce cas, des outils ou des stratégies supplémentaires peuvent être nécessaires pour gérer efficacement les dépendances.

Installation de Documentize via MSI

Astuce

L’installateur MSI est une option pratique et conviviale pour installer Documentize, notamment si vous préférez que les DLL soient installées à l’échelle du système. Cette méthode simplifie le processus d’installation en automatisant de nombreuses étapes.

Comment installer via l’installateur MSI

  1. Télécharger l’installateur MSI :

    • Cliquez sur le v26.11 MSI pour télécharger l’installateur MSI de la dernière version de Documentize.
  2. Exécuter l’installateur :

    • Double-cliquez sur le fichier MSI téléchargé pour lancer l’assistant d’installation.
  3. Suivre l’assistant d’installation :

    • Suivez les instructions affichées à l’écran. Vous devrez peut‑être accepter le contrat de licence et sélectionner les options d’installation.
  4. Terminer l’installation :

    • Une fois l’installation terminée, les DLL de Documentize seront installées dans le Global Assembly Cache (GAC) de votre système ou dans un autre emplacement spécifié.
  5. Vérifier l’installation :

    • Vérifiez que les DLL sont correctement installées en confirmant leur présence dans le répertoire d’installation désigné ou dans le GAC.

Avantages de l’utilisation de l’installateur MSI

  • Facilité d’utilisation :

    • L’installateur MSI propose un processus d’installation simple et guidé. Il gère toutes les configurations nécessaires et place les DLL dans un emplacement central, facilitant l’utilisation de Documentize dans plusieurs projets.
  • Installation à l’échelle du système :

    • La méthode MSI installe Documentize dans le Global Assembly Cache (GAC) du système ou dans un autre emplacement central. Cela permet à toute application du système d’accéder aux DLL sans devoir les référencer individuellement dans chaque projet.
  • Mises à jour automatisées :

    • Si Documentize propose un installateur mis à jour, vous pouvez facilement mettre à jour votre installation en exécutant le nouveau fichier MSI, qui gère généralement le processus de mise à jour de manière fluide.
  • Cohérence :

    • L’utilisation de l’installateur MSI garantit que tous les fichiers requis sont installés correctement et de façon consistante sur différents environnements, réduisant le risque de DLL manquantes ou mal placées.

Inconvénients de l’utilisation de l’installateur MSI

  • Flexibilité limitée :

    • L’installateur MSI installe Documentize dans un emplacement système, ce qui peut ne pas convenir à tous les environnements de développement. Il peut manquer de souplesse pour gérer des configurations ou des versions spécifiques à un projet.
  • Surcharge potentielle :

    • Installer des DLL dans le GAC peut introduire une surcharge et une complexité, notamment dans les scénarios où plusieurs versions de Documentize pourraient être nécessaires simultanément.
  • Désinstallation manuelle :

    • Si vous devez désinstaller Documentize, vous devez utiliser le programme de désinstallation fourni par le MSI, qui peut laisser des fichiers ou des configurations résiduelles s’il n’est pas géré correctement.
  • Conflits de version :

    • Les installations à l’échelle du système peuvent entraîner des conflits de version si différents projets nécessitent des versions différentes de Documentize. La gestion de ces conflits peut nécessiter des configurations ou un nettoyage supplémentaires.

Installation de Documentize via ZIP

Astuce

L’archive ZIP est idéale pour les développeurs qui préfèrent une approche manuelle de la gestion des bibliothèques. Cette méthode vous permet de télécharger et d’extraire directement les fichiers DLL nécessaires sans dépendre d’un gestionnaire de paquets ou d’un installateur.

Comment installer via une archive ZIP

  1. Télécharger l’archive ZIP :

    • Cliquez sur le v26.11 ZIP pour télécharger la dernière version de Documentize au format archive.
  2. Extraire le contenu :

    • Après le téléchargement, extrayez le contenu du fichier ZIP dans le répertoire de votre choix. Vous pouvez choisir de conserver ces fichiers dans un répertoire partagé ou au sein de la structure de votre projet.
  3. Ajouter les références à votre projet :

    • Ouvrez votre projet dans votre IDE (par ex., Visual Studio).
    • Allez dans Project > Add Reference > Browse et naviguez jusqu’au répertoire où vous avez extrait les DLL.
    • Sélectionnez les fichiers DLL pertinents et ajoutez-les en tant que références à votre projet.
  4. Mises à jour manuelles :

    • Si une nouvelle version de Documentize est publiée, vous devrez télécharger manuellement l’archive ZIP mise à jour et remplacer les anciennes DLL dans votre projet par les nouvelles.

Avantages de l’utilisation de l’archive ZIP

  • Contrôle total :

    • Vous avez un contrôle complet sur l’endroit où les DLL sont stockées et la façon dont elles sont référencées dans votre projet. Cela peut être bénéfique si vous privilégiez une configuration personnalisée ou devez gérer les dépendances manuellement.
  • Pas de dépendance aux gestionnaires de paquets :

    • Contrairement à NuGet, vous ne dépendez pas d’un gestionnaire de paquets pour effectuer les installations. Cela peut être avantageux dans des environnements où les gestionnaires de paquets ne sont pas disponibles ou souhaités.
  • Portabilité :

    • L’archive ZIP peut être facilement partagée et déplacée entre différents systèmes, ce qui la rend idéale pour les projets qui doivent être portables ou distribués sans recourir à des outils externes.

Inconvénients de l’utilisation de l’archive ZIP

  • Gestion manuelle :

    • Contrairement à NuGet, où les mises à jour et la gestion des dépendances sont automatisées, avec l’archive ZIP, vous devez gérer manuellement les mises à jour et vous assurer que toutes les DLL requises sont correctement référencées.
  • Risque de conflits de version :

    • Si vous gérez plusieurs projets ou travaillez en équipe, il existe un risque de conflits de version si différents projets utilisent des versions différentes des DLL. Cela nécessite un suivi minutieux des versions à travers les projets.
  • Pas de mises à jour automatiques :

    • Vous ne recevrez pas de mises à jour automatiques ni de notifications lorsqu’une nouvelle version est disponible. Cela peut entraîner le risque d’utiliser des bibliothèques obsolètes, à moins de vérifier régulièrement les mises à jour.

Environnement non Windows

Travailler avec les DLL .NET Core dans un environnement non Windows

Comme Documentize for .NET fournit la prise en charge de .NET Standard 2.0 (.NET Core 2.0), il peut être utilisé dans des applications Core s’exécutant sur des systèmes d’exploitation de type Linux. Nous travaillons constamment à améliorer le support de .NET Core dans notre API. Cependant, certaines opérations sont recommandées à nos clients afin d’obtenir de meilleurs résultats lors de l’utilisation des fonctionnalités de Documentize for .NET. Veuillez installer :

  • paquet libgdiplus
  • Paquet contenant des polices compatibles Microsoft : ttf‑mscorefonts‑installer (par ex., sudo apt-get install ttf-mscorefonts-installer). Ces polices doivent être placées dans le répertoire /usr/share/fonts/truetype/msttcorefonts car Documentize for .NET analyse ce dossier sur les systèmes d’exploitation de type Linux. Si le système d’exploitation utilise un autre répertoire par défaut pour les polices, vous devez ajouter la ligne de code suivante avant d’exécuter toute opération utilisant Documentize :
Documentize.Pdf.Text.FontRepository.Sources.Add(new FolderFontSource("<chemin de l'utilisateur vers les polices ms>"));

Quoi de neuf

v26.11

  • Documentation d'installation mise à jour
  • Page des versions mise à jour
  • Corrections

v26.10

  • Ajout d'un constructeur sans paramètre à GetFieldNamesOptions
  • Changements des champs dans PdfProperties
  • Suppression de la classe Splitter
  • Suppression de la classe Merger
  • Autres correctifs

v26.9

  • Classe FormFlattener supprimée
  • Classe GetFieldNamesOptions redessinée
  • Autres corrections

v26.8

  • La classe SignOptions a été repensée
  • Classe supprimée Signature
  • Classe supprimée FormExporter
  • Classe améliorée FileData
  • Autres corrections

v26.7

  • Classe ImageExtractor supprimée
  • Classe Timestamp supprimée
  • Autres corrections

v26.5

  • Nouvelle fonctionnalité Sanitize pour la sécurité des PDF
  • Nouvelle classe OptionsWithInputAndOutput
  • Performance améliorée de la conversion PDF → JPEG
  • Page « FAQ » mise à jour pour ce site
  • Autres correctifs

v26.4

  • Correction de l'exception PdfExtractor.Extract
  • Amélioration des performances de rendu PDF vers TIFF
  • Création de la page produit pour « PDF Converter » sur ce site
  • Autres correctifs

v26.3

  • Renommé IDataSource en IData
  • Renommé FileDataSource en FileData
  • Renommé StreamDataSource en StreamData
  • Renommé DirectoryDataSource en DirectoryData
  • Renommé la propriété Delimiter pour Feature ExtractFormDataToDsvOptions
  • Page produit créée pour "PDF Manager" sur ce site
  • Page produit créée pour "PDF Form" sur ce site
  • Problèmes corrigés

v26.2

  • Propriété d'extraction de fonctionnalités améliorées pour l'extracteur PDF
  • Propriété d'extraction de texte améliorée pour l'extracteur PDF
  • Bugs corrigés

v26.1

  • Nouvelle fonctionnalité Extraction des propriétés pour le PDF Extractor
  • Améliorations
  • Bugs corrigés

v25.12

  • Nouveau plugin PDF Form
  • Modifications dans PDF Extractor
  • Améliorations
  • Bugs corrigés

v25.11

  • Nouveau plugin PDF Converter
  • Nouveau plugin PDF Security
  • Plugin PdfChatGpt intégré à PdfManager
  • Nouvelles options pour travailler avec ChatGpt
  • Améliorations
  • Corrections de bugs

v25.10

  • Nouveau plugin PDF Extractor
  • Nouveau plugin PDF Manager
  • Amélioration de l’utilisabilité de TableGenerator
  • Amélioration de l’utilisabilité de PdfChatGpt
  • Bugs corrigés

v25.9

  • Amélioration de l’utilisabilité de DocConverter et ajout d’un mode supplémentaire
  • Amélioration de l’utilisabilité de PdfAConverter
  • Amélioration de l’utilisabilité de Timestamp
  • Documentation mise à jour
  • Bugs corrigés

v25.8

  • Amélioration de la convivialité de JpegConverter
  • Amélioration de la convivialité de PngConverter
  • Amélioration de la convivialité de XlsConverter
  • Amélioration de la convivialité de Signature
  • Constructeurs modifiés de PdfToHtmlOptions
  • Marque d'évaluation modifiée de TextExtractor
  • Documentation mise à jour
  • Bugs corrigés

v25.7

  • Amélioration de l’utilisabilité de Text Extractor
  • Amélioration de l’utilisabilité de Html Converter
  • Amélioration de l’utilisabilité de Image Extractor

v25.6

  • Amélioration de l'utilisabilité du convertisseur Tiff

v25.5

  • Ajout d'un nouveau plugin : Form Exporter
  • Amélioration de l'ergonomie de Security

v25.4

  • Amélioration de la convivialité d'Optimizer
  • Amélioration de la convivialité du plugin Splitter
  • Amélioration de la convivialité du plugin Merger

v25.3

  • Ajout du nouveau plugin : Form Flattener

v25.2

  • Ajout d'un nouveau plugin : Générateur de table des matières

v25.1

  • Plugin amélioré : ImageExtractor

v24.12

  • Nouveau plugin ajouté : Convertisseur PDF en PNG
  • Nouveau plugin ajouté : Convertisseur PDF en TIFF
  • Nouveau plugin ajouté : Générateur de tableaux PDF
  • Classe renommée PdfDoc en DocConverter

v24.11

  • Ajout du nouveau plugin : Convertisseur PDF en JPEG
  • Ajout de la classe DirectoryDataSource
  • Ajout de la classe PdfToJpegOptions

v24.10

  • Ajout d'un nouveau plugin : Convertisseur PDF/A

v24.9

  • Publié

  • PdfSecurity : Ajouter la possibilité de signer un PDF avec un horodatage sans PFX
  • Classe TextExtractor supprimée
  • Ajout de plus d’informations et d’indices pour les nouvelles entités
  • Ajout d’informations sur la désinfection dans la documentation et les produits
  • Correction d’une exception lors de la conversion HTML vers PDF
  • Autres corrections
28 déc. 2024

Sous-sections de Quoi de neuf

v26.11

Documentation d’installation mise à jour

Page des versions mise à jour

  • Releases
  • Contenu de la page mis à jour et tableau des packages NuGet supprimé

Corrections

  • 🌐 HTML vers PDF

    • Les liens de fichiers ne sont pas conservés lors de la conversion HTML vers PDF.
    • La conversion HTML vers PDF provoque un chevauchement ou une découpe du texte.
    • La conversion HTML vers PDF présente une consommation excessive de mémoire et des performances lentes.
  • 🖼️ Images

    • Les images générées peuvent perdre le contenu texte.
  • 📝 Formulaires

    • L’aplatissement des champs de formulaire écrit du texte dans la console.
  • ✅ Conversion et conformité PDF/A

    • Des caractères peuvent manquer après la conversion PDF/A-2u.
    • Les documents PDF/A-1a générés peuvent échouer à la validation de conformité PDF/A.
    • La conversion PDF vers PDF/A peut générer des fichiers de sortie excessivement volumineux.
    • La conversion PDF vers PDF/A peut lancer une NullReferenceException.
    • La sortie PDF/A-1b peut échouer à la validation de conformité.
    • La conversion PDF/A-2a peut consommer une mémoire excessive.
    • La conversion PDF/A-2a peut lancer une exception liée aux arguments.
    • La conversion PDF/A-2a peut déclencher une erreur de chargement d’image.
    • La conversion PDF/A-2u peut ne pas mettre en évidence les phrases recherchées.
  • 🔄 Conversion PDF

    • La conversion de la deuxième page d’un document PDF en HTML peut lancer une ArgumentException.
    • La conversion PDF vers DOC peut produire des problèmes de mise en forme.
    • La conversion PDF vers HTML peut afficher un surlignage jaune indésirable sur le texte.
    • La conversion PDF vers HTML peut omettre les espaces entre les mots.
    • La conversion PDF vers JPEG peut produire du texte illisible.
    • La conversion PDF vers TIFF peut lancer une OutOfMemoryException.
  • ⚡ Optimisation des ressources

    • L’optimisation des ressources peut entraîner l’affichage de certaines pages en noir.
4 nov. 2026

v26.10

Ajout d’un constructeur sans paramètre à GetFieldNamesOptions

Cela peut être utile dans des opérations de boucle, sans créer une nouvelle instance.

Exemple d’utilisation :

var options = new GetFieldNamesOptions();
// Set input from a file
options.Input = new FileData("path_to_your_pdf_file.pdf");
// Or set input from a stream
// options.Input = new StreamData(stream);
var results = PdfForm.GetNames(options);

Changements des champs dans PdfProperties

  • Le champ Created est maintenant de type DateTime au lieu de DateTime?. Retourne DateTime.MinValue si le document n’a aucune valeur.
  • Le champ Modified est maintenant de type DateTime au lieu de DateTime?. Retourne DateTime.MinValue si le document n’a aucune valeur.

Exemple d’utilisation :

L’exemple montre comment extraire les propriétés (Created, Modified) d’un fichier PDF.

// Create ExtractPropertiesOptions object to set input file
var options = new ExtractPropertiesOptions("path_to_your_pdf_file.pdf");
// Perform the process and get Properties
var pdfProperties = PdfExtractor.Extract(options);
var created = pdfProperties.Created;
var modified = pdfProperties.Modified;

Suppression de la classe Splitter

  • Splitter a été supprimé.
  • Cette fonctionnalité est désormais fournie par PdfManager.

Exemple d’utilisation :

L’exemple montre comment diviser un flux PDF en pages individuelles et les enregistrer en tant que fichiers.

// Create SplitOptions object to set instructions
var options = new SplitOptions();
// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Set output file paths
options.AddOutput(new FileData("path_to_result_pdf_file_1.pdf"));
options.AddOutput(new FileData("path_to_result_pdf_file_2.pdf"));
// Perform the process
PdfManager.Split(options);

Exemple d’utilisation :

L’exemple montre comment diviser un flux PDF en pages individuelles et les enregistrer en tant que flux.

// Prepare input and output streams
using var inputStream = File.OpenRead("path_to_your_pdf_file.pdf");
using var outputStream1 = new MemoryStream();
using var outputStream2 = new MemoryStream();

// Create SplitOptions object to set instructions
var options = new SplitOptions();
// Add input stream
options.AddInput(inputStream);
// Set output streams
options.AddOutput(outputStream1);
options.AddOutput(outputStream2);
// Prevent the closing of output streams
options.CloseOutputStreams = false;
// Perform the process
PdfManager.Split(options);

Suppression de la classe Merger

  • Merger a été supprimé.
  • Cette fonctionnalité est désormais fournie par PdfManager.

Exemple d’utilisation :

L’exemple montre comment fusionner deux documents PDF.

// Create MergeOptions object to set instructions
var options = new MergeOptions();
// Add input file paths
options.AddInput(new FileData("path_to_your_pdf_file_1.pdf"));
options.AddInput(new FileData("path_to_your_pdf_file_2.pdf"));
// Set output file path
options.AddOutput(new FileData("path_to_result_pdf_file.pdf"));
// Perform the process
PdfManager.Merge(options);

Autres correctifs

🖥️ HTML vers PDF

  • Correction de la conversion HTML vers PDF avec de nombreuses tables prenant un temps excessif
  • Correction du rendu du PDF généré à partir de HTML qui ne s’imprimait pas correctement dans Chrome
  • Correction de la conversion HTML vers PDF où le texte des tables était manquant

🌐 PDF vers HTML

  • Correction de la conversion PDF vers HTML où le texte et le contenu graphique étaient manquants
  • Correction de la conversion PDF vers HTML affichant un logo déformé dans le pied de page

📄 PDF vers DOC/XLS

  • Correction de la conversion PDF vers DOC qui prenait un temps excessif
  • Correction de la conversion PDF vers Excel qui produisait une sortie incorrecte

🖼️ PDF vers PNG

  • Correction de la conversion PDF vers PNG où le texte de la première page était déformé
  • Correction de la conversion PDF vers PNG qui levait InvalidOperationException

🖼️ PDF vers TIFF

  • Correction de la conversion PDF vers TIFF qui ne convertissait pas toutes les pages
  • Correction de la conversion PDF vers TIFF qui produisait des images noircies

📑 PDF vers PDF/A

  • Correction de la conversion PDF vers PDF/A qui ajoutait des symboles blancs à la sortie
  • Correction de la conversion PDF vers PDF/A qui modifiait les couleurs des bordures de rectangles
  • Correction de la sortie PDF/A‑1b qui échouait au test de conformité préflight
  • Correction de la conversion PDF/A qui produisait une BaseFont UTF‑8 invalide
  • Correction de la conversion PDF/A qui modifiait le texte visible
  • Correction de la conversion PDF/A‑2b qui levait ArgumentOutOfRangeException
  • Correction de la conversion PDF/A‑2b qui levait NullReferenceException

📄 Opérations Documentaires

  • Correction de la fusion PDF qui levait ArgumentException pour une clé invalide
  • Correction du nivellement des champs qui modifiait l’orientation du texte
  • Correction de l’extraction incorrecte de texte à partir de documents PDF
3 nov. 2026

v26.9

Classe FormFlattener supprimée

  • L’implémentation précédente des plugins est progressivement retirée. La fonctionnalité de cette classe a été remplacée par la classe PdfForm.
  • Classe FormFlattener : supprimée, utilisez PdfForm.

Exemple d’utilisation :

L’exemple montre comment aplatir les champs dans un fichier PDF.

// Create FlattenFieldsOptions object to set instructions
var options = new FlattenFieldsOptions();
// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileData("path_to_result_pdf_file.pdf"));
// Perform the process
PdfForm.Flatten(options);

Exemple d’utilisation avec omission du premier champ :

L’exemple montre comment aplatir les champs dans un fichier PDF et ignorer le premier champ.

// Get Fields Names
var fieldNames = PdfForm.GetNames(new GetFieldNamesOptions("path_to_your_pdf_file.pdf"));
// Create FlattenFieldsOptions object to set instructions
var options = new FlattenFieldsOptions();
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
options.AddOutput(new FileData("path_to_result_pdf_file.pdf"));
// Skip 1 field.
options.SkipFields.Add(fieldNames[0]);
// Perform the process
PdfForm.Flatten(options);

Classe GetFieldNamesOptions redessinée

  • Hérite de la classe OptionsWithInput.
  • Propriété Input ajoutée.

Exemple d’utilisation :

L’exemple montre comment obtenir les noms de champs depuis un fichier PDF.

// Get Field Names
var fieldNames = PdfForm.GetNames(new GetFieldNamesOptions("path_to_your_pdf_file.pdf"));

Exemple d’utilisation avec flux :

L’exemple montre comment obtenir les noms de champs depuis un flux PDF.

// Prepare input stream
using var inputStream = File.OpenRead("path_to_your_pdf_file.pdf");
// Get Field Names
var fieldNames = PdfForm.GetNames(new GetFieldNamesOptions(inputStream));

Autres corrections

📄 PDF vers DOC

  • Correction d’une exception OutOfMemoryException lors de la conversion PDF vers DOC.
  • Correction d’un problème d’affichage du logo de pied de page lors de la conversion PDF vers HTML.

🖼️ PDF vers JPEG

  • Correction d’une exception OutOfMemoryException lors de la conversion PDF vers JPEG.
  • Correction d’une exception InvalidOperationException lors de la conversion PDF vers PNG.
  • Correction d’une perte d’informations dans la sortie PDF vers TIFF.

📑 PDF vers PDF/A

  • Correction d’une sortie PDF/A non valide pour PDF/A‑1b ou PDF/A‑3b.
  • Correction d’une exception InvalidCastException lors de la conversion PDF/A‑2b.
7 sept. 2026

v26.8

La classe SignOptions a été repensée

  • Elle est maintenant plus simple à utiliser.
  • Hérite de la classe OptionsWithInputAndOutput.
  • Les propriétés Inputs et Outputs ont été remplacées par Input et Output. Il n’y a désormais qu’une seule entrée et une seule sortie.
  • Si la sortie est un fichier, son flux sera fermé automatiquement ; s’il s’agit d’un Stream, il restera ouvert pour une utilisation ultérieure.
  • Méthodes AddInput, AddOutput supprimées.
  • Ajout de plusieurs constructeurs plus pratiques :
    • SignOptions(IData inputData, IData outputData, IData pfxData, string password)
    • SignOptions(string inputFile, string outputFile, string pfxFile, string pfxPassword)
    • SignOptions(Stream inputStream, Stream outputStream, Stream pfxStream, string pfxPassword)
  • Propriétés modifiables ajoutées :
    • Stream Pfx
    • string PfxPassword
    • IData Input
    • IData Output

Exemple d’utilisation :

Exemple de travail avec SignOptions.

using var pfxStream = File.OpenRead(@"path_to_your_pfx_file.pfx");
var options = new SignOptions(pfxStream, "password_of_your_pfx_file");
// Définir les chemins d’entrée et de sortie
options.Input = new FileData("path_to_your_pdf_file.pdf");
options.Output = new FileData("path_to_result_pdf_file.pdf");

Exemple d’utilisation :

Exemple montrant comment signer un fichier PDF de la manière la plus concise possible.

PdfSecurity.Sign(new SignOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf", "path_to_your_pfx_file.pfx", "password_of_your_pfx_file"));

Exemple d’utilisation :

Exemple montrant comment signer un document PDF en utilisant des flux.

// Préparer les flux
using var pdfStreamInput = File.OpenRead(@"path_to_your_pdf_file.pdf");
using var pfxStreamInput = File.OpenRead(@"path_to_your_pfx_file.pfx");
using var pdfStreamOutput = new MemoryStream();
// Créer l’objet SignOptions pour définir les instructions
var options = new SignOptions(pdfStreamInput, pdfStreamOutput, pfxStreamInput, "password_of_your_pfx_file");
// Exécuter le processus
PdfSecurity.Sign(options);

Classe supprimée Signature

  • L’implémentation précédente des plugins est progressivement abandonnée. Les fonctionnalités de cette classe ont été remplacées par la classe PdfSecurity.
  • Class Signature : supprimée, utilisez PdfSecurity.

Exemple d’utilisation :

Exemple montrant comment signer un document PDF.

// Créer l’objet SignOptions pour définir les instructions
var options = new SignOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf", "path_to_your_pfx_file.pfx", "password_of_your_pfx_file");
// Exécuter le processus
PdfSecurity.Sign(options);

Classe supprimée FormExporter

  • L’implémentation précédente des plugins est progressivement abandonnée. Les fonctionnalités de cette classe ont été remplacées par les classes PdfExtractor et PdfForm.
  • Class FormExporter : supprimée, utilisez PdfExtractor ou PdfForm.

Exemple d’utilisation :

Exemple montrant comment exporter les valeurs d’un formulaire vers un fichier CSV avec PdfExtractor.

// Créer l’objet ExtractFormDataToDsvOptions pour définir les instructions
var options = new ExtractFormDataToDsvOptions(',', true);
// Ajouter le fichier d’entrée
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Définir le fichier de sortie
options.AddOutput(new FileData("path_to_result_csv_file.csv"));
// Exécuter le processus
PdfExtractor.Extract(options);

Exemple d’utilisation :

Exemple montrant comment exporter les valeurs d’un formulaire vers un fichier TSV et définir les propriétés avec PdfForm.

// Créer l’objet ExtractFormDataToDsvOptions pour définir les instructions
var options = new ExtractFormDataToDsvOptions();
// Définir le délimiteur
options.Delimiter = '\t';
// Ajouter les noms de champs au résultat
options.AddFieldName = true;
// Ajouter le fichier d’entrée
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Définir le fichier de sortie
options.AddOutput(new FileData("path_to_result_csv_file.tsv"));
// Exécuter le processus
PdfForm.Extract(options);

Classe améliorée FileData

  • Méthode ToString() surchargée.

Autres corrections

📄 PDF vers DOC

  • Correction d’un temps excessif lors de la conversion PDF → DOC

🌐 PDF vers HTML / HTML vers PDF

  • Correction d’une conversion PDF → HTML générant des images transparentes
  • Correction d’une conversion HTML → PDF où le contenu se chevauchait
  • Correction d’une conversion HTML → PDF où la largeur du tableau était ignorée

🖼️ PDF vers PNG / TIFF

  • Correction d’une conversion PDF → PNG consommant une mémoire excessive
  • Correction d’une conversion PDF → PNG ne préservant pas les polices incorporées
  • Correction d’une exception levée lors de la conversion PDF → TIFF

📑 PDF vers PDF/A

  • Correction d’une perte de couleur du document lors de la conversion PDF → PDF/A
  • Correction d’un chevauchement de texte dans le résultat PDF → PDF/A
  • Correction de la méthode Validate() de PDF/A renvoyant des résultats incorrects
  • Correction de la validation PDF/A produisant des résultats erronés

📂 Autres opérations

  • Correction d’une System.FormatException levée lors de la vérification d’une signature PDF
  • Correction d’une exception lors de la fusion de documents
13 août 2026

v26.7

Classe ImageExtractor supprimée

  • L’implémentation précédente des plugins est progressivement retirée. Les fonctionnalités de cette classe ont été remplacées par la classe PdfExtractor.
  • Class ImageExtractor : supprimée, utilisez PdfExtractor.

Exemple d’utilisation :

L’exemple montre comment extraire des images d’un document PDF.

// Create ExtractImagesOptions to set instructions
var options = new ExtractImagesOptions();
// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Set output Directory path
options.AddOutput(new DirectoryData("path_to_results_directory"));
// Perform the process
var results = PdfExtractor.Extract(options);
// Get path to image result
var imageExtracted = results.ResultCollection[0].ToFile();

Classe Timestamp supprimée

  • Les fonctionnalités de cette classe ont été remplacées par la classe PdfSecurity.
  • Class Timestamp : supprimée, utilisez PdfSecurity.
  • Class AddTimestampOptions : supprimée, utilisez SignOptions et TimestampOptions.

Exemple d’utilisation :

L’exemple montre comment signer un document PDF avec un horodatage.

// Create SignOptions object to set Timestamp
var options = new SignOptions(new TimestampOptions("server_url"));
// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileData("path_to_result_pdf_file.pdf"));
// Perform the process
PdfSecurity.Sign(options);

Autres corrections

🖥️ HTML to PDF

  • Correction de la conversion HTML vers PDF où le placement des images et la superposition du texte se produisaient.
  • Correction de la conversion HTML vers PDF où le contenu de la page ne s’ajustait pas correctement.
  • Correction d’un problème de conversion HTML vers PDF où le PDF généré affichait une bande noire.

📑 PDF to PDF/A

  • Correction d’une exception levée par l’API PDF vers PDF/A.
  • Correction de la conversion PDF vers PDF/A produisant une sortie avec un formatage incorrect.
  • Correction d’un problème de mémoire lors de la conversion PDF vers PDF/A.
  • Correction d’un problème de conversion PDF vers PDF/A-3a.

⚙️ Remaining

  • Correction du texte manquant lors de la conversion de PDF en PNG et HTML.
  • Correction d’un problème où certains champs devenaient vides après aplatissement.
  • Correction d’un problème où le document PDF affichait une erreur après aplatissement.
  • Correction d’un problème où l’optimisation du PDF perturbait le formatage du contenu.
7 sept. 2026

v26.5

Nouvelle fonctionnalité Sanitize pour la sécurité des PDF

  • Assainir les données cachées d’un document PDF, en veillant à ce que les informations sensibles ou inutiles telles que les métadonnées, les pièces jointes, les annotations, les JavaScripts, les formulaires, les calques, l’index de recherche ou le contenu privé soient supprimées ou transformées.
  • Class PdfSecurity : méthode Sanitize ajoutée pour assainir les documents PDF.
  • Class SanitizeOptions : représente les options de configuration pour l’assainissement des données cachées d’un document pour la classe PdfSecurity.
  • Property Input : obtient ou définit les données d’entrée.
  • Property Output : obtient ou définit les données de sortie.
  • Property ConvertPagesToImages : obtient ou définit l’option de conversion des pages en images.
  • Property ImageDpi : obtient ou définit l’option de résolution des images de page lors de la conversion des pages en images.
  • Property RemoveAnnotations : obtient ou définit une valeur indiquant si les annotations doivent être supprimées du document.
  • Property RemoveSearchIndexAndPrivateInfo : obtient ou définit une valeur indiquant si l’index de recherche et les informations privées doivent être supprimés du document.
  • Property FlattenForms : obtient ou définit une valeur indiquant si les formulaires du document doivent être aplatis durant le processus d’assainissement.
  • Property FlattenLayers : obtient ou définit l’option d’aplatissement des calques dans le document PDF.
  • Property RemoveJavaScriptsAndActions : obtient ou définit une valeur indiquant si les JavaScript et les actions associées doivent être supprimés du document.
  • Property RemoveMetadata : obtient ou définit une option de suppression des métadonnées du document.
  • Property RemoveAttachments : obtient ou définit l’option de suppression de toutes les pièces jointes du document.

Exemple d’utilisation

L’exemple montre comment Sanitize un document PDF.

// Create SanitizeOptions object to set input and output files
var options = new SanitizeOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf");
// Perform the process
PdfSecurity.Sanitize(options);

Exemple d’utilisation

L’exemple montre comment Sanitize un PDF depuis un flux vers un autre flux.

// Prepare input and output streams
using var inputStream = File.OpenRead("path_to_your_pdf_file.pdf");
using var outputStream = new MemoryStream();
// Create SanitizeOptions object to set input and output streams
var options = new SanitizeOptions(inputStream, outputStream);
// Perform the process
PdfSecurity.Sanitize(options);

Exemple d’utilisation

L’exemple montre comment Sanitize un PDF depuis un fichier vers un flux.

// Prepare output stream
using var outputStream = new MemoryStream();
// Create SanitizeOptions object to set input file and output stream
var options = new SanitizeOptions("path_to_your_pdf_file.pdf", outputStream);
// Perform the process
PdfSecurity.Sanitize(options);

Exemple d’utilisation

L’exemple montre comment Sanitize un PDF depuis un fichier vers un flux avec réglage manuel des propriétés d’entrée et de sortie.

// Create SanitizeOptions object
var options = new SanitizeOptions();
// Set Input file
options.Input = new FileData("path_to_your_pdf_file.pdf");
// Set Output file
options.Output = new FileData("path_to_result_pdf_file.pdf");
// Perform the process
PdfSecurity.Sanitize(options);

Exemple d’utilisation

L’exemple montre comment Sanitize un PDF sans supprimer les métadonnées.

// Create SanitizeOptions object to set input and output files
var options = new SanitizeOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf");
options.RemoveMetadata = false;
// Perform the process
PdfSecurity.Sanitize(options);

Exemple d’utilisation

L’exemple montre comment Sanitize un PDF sans supprimer les pièces jointes.

// Create SanitizeOptions object to set input and output files
var options = new SanitizeOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf");
options.RemoveAttachments = false;
// Perform the process
PdfSecurity.Sanitize(options);

Exemple d’utilisation

L’exemple montre comment Sanitize un PDF en convertissant toutes les pages en images et en définissant le DPI du résultat.

// Create SanitizeOptions object to set input and output files
var options = new SanitizeOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf");
// Turn on conversion and set dpi
options.ConvertPagesToImages = true;
options.ImageDpi = 200;
// Perform the process
PdfSecurity.Sanitize(options);

Exemple d’utilisation

L’exemple montre comment Sanitize un PDF sans supprimer les JavaScripts et les actions.

// Create SanitizeOptions object to set input and output files
var options = new SanitizeOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf");
options.RemoveJavaScriptsAndActions = false;
// Perform the process
PdfSecurity.Sanitize(options);

Exemple d’utilisation

L’exemple montre comment Sanitize un fichier PDF de la façon la plus concise possible.

PdfSecurity.Sanitize(new SanitizeOptions("path_to_your_pdf_file.pdf", "path_to_result_pdf_file.pdf"));

Nouvelle classe OptionsWithInputAndOutput

  • Représente les options de base pour les opérations avec 1 donnée d’entrée et 1 donnée de sortie.
  • Based on OptionsWithInput.
  • Property Input : obtient ou définit les données d’entrée.
  • Property Output : obtient ou définit les données de sortie.

Performance améliorée de la conversion PDF → JPEG

Page « FAQ » mise à jour pour ce site

https://docs.documentize.com/faqs/

Autres correctifs

  • Correction du problème de vitesse de conversion Large HTML vers PDF
  • Correction de PDF vers HTML : exception OutOfMemoryException
  • Correction de PDF vers PDFA : le contenu de la page était tronqué
  • Correction de PDF vers PDFA : problème de rendu des images transparentes
  • Correction de PDF vers PDFA2b : les annotations étaient perdues dans la sortie
  • Correction de PDF vers PDF/A - l’image apparaît inversée dans le fichier de sortie
  • Correction de PDF vers PDF/A - le fichier résultant ne respecte pas la conformité PDF/A_2a
  • Correction de PDF vers PDF/A - le fichier résultant ne respecte pas la conformité
  • Correction de PDF vers PDF/A - la signature devient noire après la conversion
  • Correction de PDF vers PDF/A - la justification du texte change de manière inattendue
  • Correction de PDF vers PNG - la conversion prend un temps excessif
  • Correction de PDF vers PNG - l’image de sortie est incorrecte
  • Correction de PDF vers PNG - l’image de sortie présente des bandes sombres
  • Correction de l’impossibilité de valider la conformité PDF/A_1b du document
3 nov. 2026

v26.4

Correction de l’exception PdfExtractor.Extract

  • Méthode PdfExtractor.Extract : ne lève pas d’exception si les dates Created et Modified ne sont pas trouvées dans le document d’entrée.
  • Propriété PdfProperties.Created : renvoie null si la valeur n’est pas trouvée dans le document d’entrée. Le type de données est passé de « DateTime » à « DateTime? ».
  • Propriété PdfProperties.Modified : renvoie null si la valeur n’est pas trouvée dans le document d’entrée. Le type de données est passé de « DateTime » à « DateTime? ».

Exemple d’utilisation :

L’exemple montre comment extraire les propriétés Created et Modified

// Create ExtractPropertiesOptions object to set input file
var options = new ExtractPropertiesOptions("path_to_your_pdf_file.pdf");
// Perform the process and get Properties
var pdfProperties = PdfExtractor.Extract(options);

var created = pdfProperties.Created;
var modified = pdfProperties.Modified;

Amélioration des performances de rendu PDF vers TIFF

Création de la page produit pour « PDF Converter » sur ce site

https://products.documentize.com/pdf-converter/

Autres correctifs

  • Correction HTML vers PDF – Les performances sont très lentes avec de grands textes HTML
  • Correction HTML vers PDF – L’en-tête et le pied de page n’apparaissent pas sur les pages suivantes
  • Correction HTML vers PDF – L’infobulle ne se rend pas correctement
  • Correction PDF vers DOC – La conversion déclenche une exception OutOfMemory
  • Correction PDF vers XLS – Les colonnes fusionnées sont combinées en une seule colonne
  • Correction PDF vers HTML – Les images d’arrière-plan sont manquantes
  • Correction PDF vers HTML – Les hyperliens locaux ne sont pas affichés
  • Correction PDF vers JPEG – L’image de sortie apparaît noire
  • Correction PDF vers PDF/A – Problèmes de mise en forme dans le fichier résultant
  • Correction PDF vers PDF/A_1b – Le fichier résultant n’est pas conforme
  • Correction PDF vers PDF/A_3b – Problèmes de mise en forme du texte dans le fichier de sortie
  • Correction PDF vers PDF/A-2B – La conversion supprime les caractères mathématiques lors de l’utilisation des polices OpenType MATH.
7 sept. 2026

v26.3

Renommé IDataSource en IData

  • Interface IDataSource : renommée en IData.
  • Les classes d’options sont maintenant plus faciles à utiliser.

Renommé FileDataSource en FileData

  • Class FileDataSource : renommée en FileData.
  • Les classes d’options sont maintenant plus faciles à utiliser.
  • Commentaires XML mis à jour et corrigés.
  • Tous les exemples avec Entrée et Sortie mis à jour.

Exemple d’utilisation :

L’exemple montre comment utiliser FileData dans les entrées et les sorties.

// Create EncryptOptions object to set instructions
var options = new EncryptOptions("123456", "qwerty");
// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileData("path_to_result_pdf_file.pdf"));
// Perform the process
PdfSecurity.Encrypt(options);

Renommé StreamDataSource en StreamData

  • Class StreamDataSource : renommée en StreamData.
  • Les classes d’options sont maintenant plus faciles à utiliser.
  • Commentaires XML mis à jour et corrigés.
  • Tous les exemples avec Entrée et Sortie mis à jour.

Exemple d’utilisation :

L’exemple montre comment utiliser StreamData en sortie.

// Create TocOptions object to set instructions
var options = new TocOptions();
// Set the Title
options.Title = "My Table of Contents";
// Design Headings
options.Headings.Add(new TocHeading("Introduction", 2, false, 1));
// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Set output stream 
var outputStream = new MemoryStream();
options.AddOutput(new StreamData(outputStream));
options.CloseOutputStreams = false;
// Perform the process
PdfManager.AddTableOfContents(options);

Renommé DirectoryDataSource en DirectoryData

  • Class DirectoryDataSource : renommée en DirectoryData.
  • Les classes d’options sont maintenant plus faciles à utiliser.
  • Tous les exemples avec Entrée et Sortie mis à jour.

Exemple d’utilisation :

L’exemple montre comment exporter les valeurs de formulaire vers un fichier TSV et définir les propriétés.

// Create PdfToTiffOptions object to set instructions
var options = new PdfToTiffOptions();
// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Set output Directory path
options.AddOutput(new DirectoryData("path_to_output_directory"));
// Perform the process
PdfConverter.Convert(options);

Renommé la propriété Delimiter pour Feature ExtractFormDataToDsvOptions

Une faute de frappe dans le mot a été corrigée.

Exemple d’utilisation :

L’exemple montre comment exporter les valeurs de formulaire vers un fichier TSV et définir les propriétés.

// Create ExtractFormDataToDsvOptions object to set instructions
var options = new ExtractFormDataToDsvOptions();
//Set Delimiter
options.Delimiter = '\t';
//Add Field Names to result
options.AddFieldName = true;
// Add input file path
options.AddInput(new FileData("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileData("path_to_result_csv_file.tsv"));
// Perform the process
PdfExtractor.Extract(options);

Page produit créée pour “PDF Manager” sur ce site

https://products.documentize.com/pdf-manager/

Page produit créée pour “PDF Form” sur ce site

https://products.documentize.com/pdf-form/

Problèmes corrigés

  • Correction d’un problème où Image to PDF provoquait une exception Out of Memory.
  • Correction d’un problème où la génération de la Table des matières produisait des résultats incorrects.
  • Correction d’un problème où la propriété OptimizeResources UnembedFonts déclenchait une exception.
  • Correction d’un problème où PDF to HTML n’appliquait pas correctement les polices lorsqu’affiché dans Internet Explorer.
  • Correction d’un problème où PDF to HTML produisait des éléments mal placés et des symboles de formatage.
  • Correction d’un problème où le processus de conversion PDF vers PDF/A se bloquait.
  • Correction d’un problème où PDF vers PDF/A supprimait les champs de formulaire et leurs valeurs.
  • Correction d’un problème où la sortie PDF vers PDF/A n’était pas conforme à PDF/A_1a.
  • Correction d’un problème où la sortie PDF vers PDF/A n’était pas conforme à PDF/A_2b.
  • Correction d’un problème où la sortie PDF vers PDF/A-3A échouait le contrôle de conformité Preflight.
  • Correction d’un problème où la sortie PDF vers PDF/A-3B échouait le contrôle de conformité Preflight.
7 sept. 2026

v26.2

Propriété d’extraction de fonctionnalités améliorées pour l’extracteur PDF

  • Class Extractor : peut extraire de nouvelles métadonnées des documents PDF.
  • Class PdfProperties : propriétés ajoutées : FileName, Created, Modified, Application, PdfProducer.

Exemple d’utilisation :

L’exemple montre comment extraire les propriétés (FileName, Title, Author, Subject, Keywords, Created, Modified, Application, PDF Producer, Number of Pages) d’un fichier PDF.

// Create ExtractPropertiesOptions object to set input file
var options = new ExtractPropertiesOptions("path_to_your_pdf_file.pdf");
// Perform the process and get Properties
var pdfProperties = PdfExtractor.Extract(options);
var filename = pdfProperties.FileName;
var title = pdfProperties.Title;
var author = pdfProperties.Author;
var subject = pdfProperties.Subject;
var keywords = pdfProperties.Keywords;
var created = pdfProperties.Created;
var modified = pdfProperties.Modified;
var application = pdfProperties.Application;
var pdfProducer = pdfProperties.PdfProducer;
var numberOfPages = pdfProperties.NumberOfPages;

Exemple d’utilisation :

L’exemple montre comment extraire les propriétés (Title, Author, Subject, Keywords, Created, Modified, Application, PDF Producer, Number of Pages) d’un flux PDF.

// Create ExtractPropertiesOptions object to set input stream
var stream = File.OpenRead("path_to_your_pdf_file.pdf");
var options = new ExtractPropertiesOptions(stream);
// Perform the process and get Properties
var pdfProperties = PdfExtractor.Extract(options);
var title = pdfProperties.Title;
var author = pdfProperties.Author;
var subject = pdfProperties.Subject;
var keywords = pdfProperties.Keywords;
var created = pdfProperties.Created;
var modified = pdfProperties.Modified;
var application = pdfProperties.Application;
var pdfProducer = pdfProperties.PdfProducer;
var numberOfPages = pdfProperties.NumberOfPages;

Propriété d’extraction de texte améliorée pour l’extracteur PDF

  • Travailler avec l’extraction de texte et les paramètres d’extraction est maintenant plus simple : vous pouvez spécifier les données d’entrée et obtenir le résultat plus facilement qu’auparavant.
  • Class ExtractTextOptions : implémente IHaveInput. N’utilisez qu’une seule donnée d’entrée. Types de données autorisés : File et Stream.
  • Method Extract(ExtractTextOptions options) : renvoie une chaîne contenant les résultats.
  • Object ResultContainer : supprimé de ExtractTextOptions.

Exemple d’utilisation :

L’exemple montre comment extraire le contenu texte d’un fichier PDF.

// Create ExtractTextOptions object to set input file path
var options = new ExtractTextOptions("path_to_your_pdf_file.pdf");
// Perform the process and get the extracted text
var textExtracted = PdfExtractor.Extract(options);

Exemple d’utilisation :

L’exemple montre comment extraire le contenu texte d’un flux PDF.

// Create ExtractTextOptions object to set input stream
var stream = File.OpenRead("path_to_your_pdf_file.pdf");
var options = new ExtractTextOptions(stream);
// Perform the process and get the extracted text
var textExtracted = PdfExtractor.Extract(options);

Exemple d’utilisation :

L’exemple montre comment extraire le contenu texte d’un document PDF avec TextFormattingMode.

// Create ExtractTextOptions object to set input file path and TextFormattingMode
var options = new ExtractTextOptions("path_to_your_pdf_file.pdf", TextFormattingMode.Pure);
// Perform the process and get the extracted text
var textExtracted = PdfExtractor.Extract(options);

Exemple d’utilisation :

L’exemple montre comment extraire le texte d’un fichier PDF de la manière la plus concise possible.

// Perform the process and get the extracted text
var textExtracted = PdfExtractor.Extract(new ExtractTextOptions("path_to_your_pdf_file.pdf", TextFormattingMode.Pure));

Bugs corrigés

  • La conversion de fichier Jpeg2000 en PDF échoue
  • Problème de concaténation de PDF
  • Le redimensionnement de pages PDF produit une sortie blanche
  • PDF vers HTML : la couleur de surbrillance est visible mais le texte manque
  • PDF vers HTML : génération d’un HTML incorrect
  • PDF vers HTML : le texte vertical du côté gauche manque
  • PDF vers HTML : le texte dans l’en-tête disparaît
  • PDF vers HTML : le texte annoté transparent n’est pas visible
  • PDF vers PNG : certains caractères chinois ne s’affichent pas
7 sept. 2026

v26.1

Nouvelle fonctionnalité Extraction des propriétés pour le PDF Extractor

  • Extraire les propriétés PDF : Titre, Auteur, Sujet, Mots‑clés, Nombre de pages.
  • Class PdfExtractor : méthode ajoutée Extract pour extraire les propriétés PDF.
  • Class ExtractPropertiesOptions : représente les options d’extraction des propriétés PDF pour le plug‑in PdfExtractor.
  • Class PdfProperties : représente les propriétés et les méta‑informations du document PDF.
  • Interface IHaveInput : utilisée pour les options avec une seule donnée d’entrée.
  • Class OptionsWithInput : utilisée pour les options avec une seule donnée d’entrée.
  • Fonctionnalité entièrement gratuite.

Exemple d’utilisation :

L’exemple montre comment extraire les propriétés (Titre, Auteur, Sujet, Mots‑clés, Nombre de pages) d’un fichier PDF.

// Create ExtractPropertiesOptions object to set input file
var options = new ExtractPropertiesOptions("path_to_your_pdf_file.pdf");
// Perform the process and get Properties
var pdfProperties = PdfExtractor.Extract(options);
var title = pdfProperties.Title;
var author = pdfProperties.Author;
var subject = pdfProperties.Subject;
var keywords = pdfProperties.Keywords;
var numberOfPages = pdfProperties.NumberOfPages;

Exemple d’utilisation :

L’exemple montre comment extraire les propriétés (Titre, Auteur, Sujet, Mots‑clés, Nombre de pages) d’un flux PDF.

// Create ExtractPropertiesOptions object to set input stream
var stream = File.OpenRead("path_to_your_pdf_file.pdf");
var options = new ExtractPropertiesOptions(stream);
// Perform the process and get Properties
var pdfProperties = PdfExtractor.Extract(options);
var title = pdfProperties.Title;
var author = pdfProperties.Author;
var subject = pdfProperties.Subject;
var keywords = pdfProperties.Keywords;
var numberOfPages = pdfProperties.NumberOfPages;

Exemple d’utilisation :

L’exemple montre comment extraire les propriétés d’un fichier PDF de la manière la plus concise possible.

// Perform the process and get Properties
var pdfProperties = PdfExtractor.Extract(new ExtractPropertiesOptions("path_to_your_pdf_file.pdf"));

Améliorations

  • Amélioration HTML vers PDF : prise en charge du texte alternatif pour les images
  • Conformité PDF vers PDFA1b

Bugs corrigés

  • Erreur survenant lors de la tentative d’optimisation d’un fichier PDF
  • Problème d’alignement vertical des champs de formulaire
  • Problème résolu d’affichage du texte japonais dans FormField
  • Problème de mise en forme des tableaux lors de la conversion HTML vers PDF
  • L’optimisation de la taille du PDF avant la conversion PDF vers PDF/A entraînait un résultat corrompu
  • Conversion PDF vers DOC – tableau mal rendu
  • Conversion PDF vers Excel – problèmes de mise en forme du fichier de sortie
  • Conversion PDF vers HTML – ArgumentException pendant la conversion
  • Conversion PDF vers HTML – certains liens manquaient
  • Texte manquant lors de la conversion PDF vers HTML
7 sept. 2026

v25.12

Nouveau plugin PDF Form

  • Class PdfForm : contient toutes les fonctions des plugins : FormFlattener, FormExporter. Permet également de supprimer et d’obtenir les champs.
  • Class FormFlattener : sera supprimé bientôt, utilisez PdfForm.
  • Class FormFlattenerOptions : renommé en Class FlattenFieldsOptions.
  • Class GetFieldNamesOptions : permet de définir les options pour obtenir les noms des champs.
  • Class RemoveFieldsOptions : permet de définir les options pour supprimer les champs.
  • Voir The New Plugin Architecture.

Exemple d’utilisation :

L’exemple montre comment aplatir les champs d’un fichier PDF.

// Create FlattenFieldsOptions object to set instructions
var options = new FlattenFieldsOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfForm.Flatten(options);

Exemple d’utilisation :

L’exemple montre comment obtenir les noms des champs d’un fichier PDF.

var fieldNames = PdfForm.GetNames(new GetFieldNamesOptions("path_to_your_pdf_file.pdf"));

Exemple d’utilisation :

L’exemple montre comment exporter les valeurs du formulaire vers un fichier CSV.

// Create ExtractFormDataToDsvOptions object to set instructions
var options = new ExtractFormDataToDsvOptions(',', true);
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_csv_file.csv"));
// Perform the process
PdfForm.Extract(options);

Exemple d’utilisation :

L’exemple montre comment supprimer des champs d’un fichier PDF.

// Create RemoveFieldsOptions object to set instructions
var options = new RemoveFieldsOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfForm.Remove(options);

Modifications dans PDF Extractor

  • Method ExtractText : renommée en Method Extract.
  • Method ExtractImages : renommée en Method Extract.
  • Method ExtractFormData : renommée en Method Extract.

Exemple d’utilisation :

L’exemple montre comment extraire le texte d’un document PDF.

// Create ExtractTextOptions object to set instructions
var options = new ExtractTextOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Perform the process
var results = PdfExtractor.Extract(options);
// Get the extracted text from the ResultContainer object
var textExtracted = results.ResultCollection[0].ToString();

Exemple d’utilisation :

L’exemple montre comment extraire les images d’un document PDF.

// Create ExtractImagesOptions to set instructions
var options = new ExtractImagesOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output Directory path
options.AddOutput(new DirectoryDataSource("path_to_results_directory"));
// Perform the process
var results = PdfExtractor.Extract(options);
// Get path to image result
var imageExtracted = results.ResultCollection[0].ToFile();

Exemple d’utilisation :

L’exemple montre comment exporter les valeurs du formulaire vers un fichier CSV.

// Create ExtractFormDataToDsvOptions object to set instructions
var options = new ExtractFormDataToDsvOptions(',', true);
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_csv_file.csv"));
// Perform the process
PdfExtractor.Extract(options);

Améliorations

  • Class PdfConverterOptions, PdfToXlsOptions - utilisez Class PluginBaseOptions
  • Conversion PDF/A‑1b
  • Conversion PDF/A‑2b

Bugs corrigés

  • Correction des problèmes de mise en forme lors de la conversion HTML → PDF
  • La conversion PDF → HTML perdait certains liens.
7 sept. 2026

v25.11

Nouveau plugin PDF Converter

  • Class PdfConverter : regroupe toutes les fonctions des plugins : DocConverter, XlsConverter, HtmlConverter, JpegConverter, PdfAConverter, PngConverter, TiffConverter.
  • Class DocConverter : sera bientôt supprimé, utilisez PdfConverter.
  • Class XlsConverter : sera bientôt supprimé, utilisez PdfConverter.
  • Class HtmlConverter : sera bientôt supprimé, utilisez PdfConverter.
  • Class JpegConverter : sera bientôt supprimé, utilisez PdfConverter.
  • Class PdfAConverter : sera bientôt supprimé, utilisez PdfConverter.
  • Class PngConverter : sera bientôt supprimé, utilisez PdfConverter.
  • Class TiffConverter : sera bientôt supprimé, utilisez PdfConverter.
  • Class PdfAConvertOptions : renommé en Class PdfToPdfAOptions.
  • Voir The New Plugin Architecture.

Exemple d’utilisation :

L’exemple montre comment convertir un document PDF au format Doc.

// Create PdfToDocOptions object to set instructions
var options = new PdfToDocOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_file.doc"));
// Perform the process
PdfConverter.Convert(options);

Exemple d’utilisation :

L’exemple montre comment convertir un PDF en document XLSX.

// Create PdfToXlsOptions object to set instructions
var options = new PdfToXlsOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_xlsx_file.xlsx"));
// Perform the process
PdfConverter.Convert(options);

Exemple d’utilisation :

L’exemple montre comment convertir un PDF en document HTML.

// Create PdfToHtmlOptions object to set output data type as file with embedded resources
var options = new PdfToHtmlOptions(PdfToHtmlOptions.SaveDataType.FileWithEmbeddedResources);
// Add input file path
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_output.html"));
//Perform the process
PdfConverter.Convert(options);

Exemple d’utilisation :

L’exemple montre comment convertir un document HTML en PDF.

// Create HtmlToPdfOptions
var options = new HtmlToPdfOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_input.html"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_output.pdf"));
//Perform the process
PdfConverter.Convert(options);

Exemple d’utilisation :

L’exemple montre comment convertir un document PDF au format JPEG.

// Create PdfToJpegOptions object to set instructions
var options = new PdfToJpegOptions();
// Add input File path
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Set output Directory path
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// Perform the process
PdfConverter.Convert(options);

Exemple d’utilisation :

L’exemple montre comment convertir un document PDF au format PNG.

// Create PdfToPngOptions object to set instructions
var options = new PdfToPngOptions();
// Add input File path
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Set output Directory path
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// Perform the process
PdfConverter.Convert(options);

Exemple d’utilisation :

L’exemple montre comment convertir un document PDF au format TIFF.

// Create PdfToTiffOptions object to set instructions
var options = new PdfToTiffOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output Directory path
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// Perform the process
PdfConverter.Convert(options);

Exemple d’utilisation :

L’exemple montre comment convertir le document PDF au format PDF/A (PDF/A‑3b dans cet exemple) :

// Create the options class to set up the conversion process
var options = new PdfToPdfAOptions
{
    PdfAVersion = PdfAStandardVersion.PDF_A_3B
};

// Add the source file
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf")); // replace with your actual file path

// Add the path to save the converted file
options.AddOutput(new FileDataSource("path_to_the_converted_file.pdf"));

// Run the conversion
PdfConverter.Convert(options);

Exemple d’utilisation :

L’exemple montre comment valider la conformité d’un document PDF au format PDF/A (PDF/A‑1a dans cet exemple) :

// Create the options class to set up the validation process
var options = new PdfAValidateOptions
{
    PdfAVersion = PdfAStandardVersion.PDF_A_1A
};

// Add one or more files to be validated
options.AddInput(new FileDataSource("path_to_your_first_pdf_file.pdf")); // replace with your actual file path
options.AddInput(new FileDataSource("path_to_your_second_pdf_file.pdf"));
// add more files as needed

// Run the validation and get results
var resultContainer = PdfConverter.Validate(options);

// Check the resultContainer.ResultCollection property for validation results for each file:
for (var i = 0; i < resultContainer.ResultCollection.Count; i++)
{
    var result = resultContainer.ResultCollection[i];
    var validationResult = (PdfAValidationResult) result.Data;
    var isValid = validationResult.IsValid; // Validation result for the i-th document
}

Nouveau plugin PDF Security

  • Class PdfSecurity : regroupe toutes les fonctions des plugins : Security, Signature, Timestamp.
  • Class Security : sera bientôt supprimé, utilisez PdfSecurity.
  • Class Signature : sera bientôt supprimé, utilisez PdfSecurity.
  • Class Timestamp : sera bientôt supprimé, utilisez PdfSecurity.
  • Class DecryptionOptions : renommé en Class DecryptOptions.
  • Class EncryptionOptions : renommé en Class EncryptOptions.
  • Class SignOptions : possède désormais des propriétés pour Class Timestamp.
  • Voir The New Plugin Architecture.

Exemple d’utilisation :

L’exemple montre comment chiffrer un document PDF.

// Create EncryptOptions object to set instructions
var options = new EncryptOptions("123456", "qwerty");
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfSecurity.Encrypt(options);

Exemple d’utilisation :

L’exemple montre comment déchiffrer un document PDF.

// Create DecryptOptions object to set instructions
var options = new DecryptOptions("123456");
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfSecurity.Decrypt(options);

Exemple d’utilisation :

L’exemple montre comment signer un document PDF.

// Create SignOptions object to set instructions
var options = new SignOptions("path_to_your_pfx_file.pfx", "password_of_your_pfx_file");
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfSecurity.Sign(options);

Exemple d’utilisation :

L’exemple montre comment signer un document PDF avec un horodatage.

// Create SignOptions object to set instructions
var options = new SignOptions("path_to_your_pfx_file.pfx", "password_for_your_pfx_file");
options.TimestampOptions = new TimestampOptions("server_url");
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfSecurity.Sign(options);

Plugin PdfChatGpt intégré à PdfManager

  • Class PdfChatGpt : sera bientôt supprimé, utilisez PdfManager.
  • Class PdfChatGptRequestOptions : renommé en Class ChatGptRequestOptions.

Nouvelles options pour travailler avec ChatGpt

  • Class ChatCompletion : permet de vérifier les résultats de la requête.
  • Class Choice : permet de vérifier les résultats de la requête.
  • Class Usage : permet de vérifier les résultats de la requête.
  • Class ChatGptConsts : permet d’utiliser des paramètres supplémentaires comme ModelName, API URL, etc.

Exemple d’utilisation :

L’exemple montre comment appeler ChatGpt en ajoutant des messages à la requête.

var options = new ChatGptRequestOptions();
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf")); 
options.ApiKey = "Your API key."; // You need to provide the key to access the API.
options.MaxTokens = 1000; // The maximum number of tokens to generate in the chat completion.

// Add the request messages.
options.Messages.Add(new Message
{
    Content = "You are a helpful assistant.",
    Role = Role.System
});
options.Messages.Add(new Message
{
    Content = "What is the biggest pizza diameter ever made?",
    Role = Role.User
});

// Process the request.
var result = await PdfManager.CreatePdfByChatGptRequestAsync(options);

var fileResultPath = result.ResultCollection[0].Data;
var chatCompletionObject = result.ResultCollection[1].Data as ChatCompletion; // The ChatGPT API chat completion object.

Améliorations

  • PDF vers Image : amélioration des performances de conversion
  • PDF vers TIFF : amélioration de la vitesse de conversion
  • PDF vers Doc : amélioration des performances

Corrections de bugs

  • Correction de HTML vers PDF : problèmes de mise en forme dans le fichier résultant
  • Correction d’un problème de performance lors de la conversion PDF vers TIFF
  • Correction de HTML vers PDF : la feuille CSS externe n’était pas appliquée au PDF généré.
7 sept. 2026

v25.10

Nouveau plugin PDF Extractor

  • Class PdfExtractor : contient toutes les fonctions des plugins : TextExtractor, ImageExtractor, FormExporter.
  • Class TextExtractor : sera supprimée bientôt, utilisez PdfExtractor.
  • Class ImageExtractor : sera supprimée bientôt, utilisez PdfExtractor.
  • Class FormExporter : sera supprimée bientôt, utilisez PdfExtractor.
  • Class TextExtractorOptions : renommée en Class ExtractTextOptions.
  • Class ImageExtractorOptions : renommée en Class ExtractImagesOptions.
  • Class FormExportToDsvOptions : renommée en Class ExtractFormDataToDsvOptions.
  • Voir The New Plugin Architecture.

Exemple d’utilisation :

L’exemple montre comment extraire le texte d’un document PDF.

// Create ExtractTextOptions object to set instructions
var options = new ExtractTextOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Perform the process
var results = PdfExtractor.ExtractText(options);
// Get the extracted text from the ResultContainer object
var textExtracted = results.ResultCollection[0].ToString();

Exemple d’utilisation :

L’exemple montre comment extraire le texte d’un document PDF avec TextFormattingMode.

// Create ExtractTextOptions object to set TextFormattingMode
var options = new ExtractTextOptions(TextFormattingMode.Pure);
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Perform the process
var results = PdfExtractor.ExtractText(options);
// Get the extracted text from the ResultContainer object
var textExtracted = results.ResultCollection[0].ToString();

Exemple d’utilisation :

L’exemple montre comment extraire des images d’un document PDF.

// Create ExtractImagesOptions to set instructions
var options = new ExtractImagesOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output Directory path
options.AddOutput(new DirectoryDataSource("path_to_results_directory"));
// Perform the process
var results = PdfExtractor.ExtractImages(options);
// Get path to image result
var imageExtracted = results.ResultCollection[0].ToFile();

Exemple d’utilisation :

L’exemple montre comment exporter les valeurs de formulaire vers un fichier CSV.

// Create ExtractFormDataToDsvOptions object to set instructions
var options = new ExtractFormDataToDsvOptions(',', true);
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_csv_file.csv"));
// Perform the process
PdfExtractor.ExtractFormData(options);

Nouveau plugin PDF Manager

  • Class PdfManager : contient toutes les fonctions des plugins : Merger, Optimizer, Splitter, TableGenerator, TocGenerator.
  • Class Merger : sera supprimée bientôt.
  • Class Optimizer : sera supprimée bientôt, utilisez PdfManager.
  • Class Splitter : sera supprimée bientôt, utilisez PdfManager.
  • Class TableGenerator : sera supprimée bientôt, utilisez PdfManager.
  • Class TocGenerator : sera supprimée bientôt, utilisez PdfManager.
  • Voir The New Plugin Architecture.

Exemple d’utilisation :

L’exemple montre comment fusionner deux documents PDF.

// Create MergeOptions object to set instructions
var options = new MergeOptions();
// Add input file paths
options.AddInput(new FileDataSource("path_to_your_pdf_file_1.pdf"));
options.AddInput(new FileDataSource("path_to_your_pdf_file_2.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfManager.Merge(options);

Exemple d’utilisation :

L’exemple montre comment scinder un document PDF.

// Create SplitOptions object to set instructions
var options = new SplitOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file paths
options.AddOutput(new FileDataSource("path_to_result_pdf_file_1.pdf"));
options.AddOutput(new FileDataSource("path_to_result_pdf_file_2.pdf"));
// Perform the process
PdfManager.Split(options);

Exemple d’utilisation :

L’exemple montre comment optimiser un document PDF.

// Create OptimizeOptions object to set instructions
var options = new OptimizeOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfManager.Optimize(options);

Exemple d’utilisation :

L’exemple montre comment faire pivoter un document PDF.

// Create RotateOptions object to set instructions
var options = new RotateOptions();
// Set new Rotation
options.Rotation = Rotation.On90;
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfManager.Rotate(options);

Exemple d’utilisation :

L’exemple montre comment redimensionner un document PDF.

// Create ResizeOptions object to set instructions
var options = new ResizeOptions();
// Set new PageSize
options.PageSize = PageSize.A3;
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfManager.Resize(options);

Exemple d’utilisation :

L’exemple montre comment compresser un document PDF.

// Create CompressOptions object to set instructions
var options = new CompressOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfManager.Compress(options);

Exemple d’utilisation :

L’exemple montre comment ajouter un tableau à un fichier PDF.

// Configure table options
var options = new TableOptions();
options.InsertPageBefore(1)
   .AddTable()
        .AddRow()
            .AddCell().AddParagraph("Name")
            .AddCell().AddParagraph("Age")
        .AddRow()
            .AddCell().AddParagraph("Bob")
            .AddCell().AddParagraph("12")
        .AddRow()
            .AddCell().AddParagraph("Sam")
            .AddCell().AddParagraph("20")
        .AddRow()
            .AddCell().AddParagraph("Sandy")
            .AddCell().AddParagraph("26")
        .AddRow()
            .AddCell().AddParagraph("Tom")
            .AddCell().AddParagraph("12")
        .AddRow()
            .AddCell().AddParagraph("Jim")
            .AddCell().AddParagraph("27");
// Add input file path
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_output.pdf"));
// Perform the process
PdfManager.AddTable(options);

Exemple d’utilisation :

L’exemple montre comment ajouter une table des matières à un fichier PDF.

// Create TocOptions object to set instructions
var options = new TocOptions();
// Set the Title
options.Title = "My Table of Contents";
// Design Headings
options.Headings.Add(new TocHeading("Introduction", 2));
options.Headings.Add(new TocHeading("Chapter I", 3));
options.Headings.Add(new TocHeading("Chapter II", 4));
options.Headings.Add(new TocHeading("Chapter III", 5));
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfManager.AddTableOfContents(options);

Exemple d’utilisation :

L’exemple montre comment ajouter une table des matières à un fichier PDF en générant des signets.

// Create TocOptions object to set instructions
var options = new TocOptions();
// Set the Title
options.Title = "My Table of Contents";
// Generate links in bookmarks
options.GenerateBookmarks = true;
// Design Headings
options.Headings.Add(new TocHeading("Introduction", 2, false, 1));
options.Headings.Add(new TocHeading("Chapter I", 3, true, 1));
options.Headings.Add(new TocHeading("Chapter II", 4, true, 1));
options.Headings.Add(new TocHeading("Example A", 4, true, 2));
options.Headings.Add(new TocHeading("Example B", 4, true, 2));
options.Headings.Add(new TocHeading("Example C", 4, true, 2));
options.Headings.Add(new TocHeading("Example D", 4, true, 2));
options.Headings.Add(new TocHeading("Chapter III", 5, true, 1));
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
PdfManager.AddTableOfContents(options);

Exemple d’utilisation :

L’exemple montre comment ajouter une table des matières à un fichier PDF et enregistrer le résultat sous forme de flux.

// Create TocOptions object to set instructions
var options = new TocOptions();
// Set the Title
options.Title = "My Table of Contents";
// Design Headings
options.Headings.Add(new TocHeading("Introduction", 2, false, 1));
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output stream 
var outputStream = new MemoryStream();
options.AddOutput(new StreamDataSource(outputStream));
options.CloseOutputStreams = false;
// Perform the process
PdfManager.AddTableOfContents(options);

Amélioration de l’utilisabilité de TableGenerator

  • Class TableGenerator : est statique et ne nécessite pas l’utilisation d’un constructeur.
  • Class TableGenerator : est marquée comme Obsolète. Utilisez PdfManager à la place.

Amélioration de l’utilisabilité de PdfChatGpt

  • Class PdfChatGpt : est statique et ne nécessite pas l’utilisation d’un constructeur.
  • Class PdfChatGptRequestOptions : propriété CancellationToken ajoutée (déplacée depuis PdfChatGpt).

Exemple d’utilisation :

L’exemple montre comment utiliser le plugin PdfChatGpt en ajoutant des messages à la requête.

var options = new PdfChatGptRequestOptions();
options.AddOutput(new FileDataSource("PdfChatGPT_output.pdf")); // Add the output file path.
options.ApiKey = "Your API key."; // You need to provide the key to access the API.
options.MaxTokens = 1000; // The maximum number of tokens to generate in the chat completion.
// for cancel
// var cancelTokenSource = new CancellationTokenSource();
// var cToken = cancelTokenSource.Token;
// options.CancellationToken = cToken;

// Add the request messages.
options.Messages.Add(new Message
{
    Content = "You are a helpful assistant.",
    Role = Role.System
});
options.Messages.Add(new Message
{
    Content = "What is the biggest pizza diameter ever made?",
    Role = Role.User
});

// Process the request.
await PdfChatGpt.ProcessAsync(options);

Bugs corrigés

  • Correction des métadonnées de conversion html vers pdf
  • Correction des problèmes de formatage du texte et du redimensionnement des images lors de la conversion PDF → PDF/A_3b
  • Correction du rapport d’erreur d’impression du PDF/A résultant de la conversion PDF → PDFA
  • Correction de l’image de sortie contenant un arrière‑fond lors de la conversion PDF → HTML
  • Correction de certains caractères chinois affichés sous forme de carrés lors de la conversion HTML → PDF
  • Correction de la non‑prise en compte de la police personnalisée Base64 lors de la conversion HTML → PDF
  • Correction du CSS des champs de formulaire non appliqué lors de la conversion HTML → PDF
  • Correction du rendu incorrect du graphique lors de la conversion HTML → PDF
  • Correction de la non‑affichage des caractères spéciaux lors de la conversion HTML → PDF
7 sept. 2026

v25.9

Amélioration de l’utilisabilité de DocConverter et ajout d’un mode supplémentaire

  • Class DocConverter : est statique et ne nécessite pas l’utilisation d’un constructeur.
  • Class PdfToDocOptions : propriété ajoutée « Mode » qui permet de personnaliser le processus de conversion.
  • Enum DocConversionMode : permet de personnaliser le processus de conversion pdf‑doc. Valeurs :
    • TextBox : Ce mode est rapide et idéal pour préserver au maximum l’apparence originale du fichier PDF, mais l’éditabilité du document résultant peut être limitée. Chaque bloc de texte visuellement groupé dans le PDF d’origine est converti en zone de texte dans le document résultant.
    • Flow : Mode de reconnaissance complet, le moteur effectue le regroupement et une analyse à plusieurs niveaux pour restituer l’intention de l’auteur du document original et produire un document maximaux‑éditable.

Exemple d’utilisation :

// L'exemple montre comment convertir un document PDF au format Doc.
// Créez un objet PdfToDocOptions pour définir les instructions
var options = new PdfToDocOptions();
// Ajoutez le chemin du fichier d'entrée
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Définissez le chemin du fichier de sortie
options.AddOutput(new FileDataSource("path_to_result_file.doc"));
// Exécutez le processus
DocConverter.Process(options);

Exemple d’utilisation :

// L'exemple montre comment convertir un document PDF au format Doc en définissant le Mode.
// Créez un objet PdfToDocOptions pour définir les instructions
var options = new PdfToDocOptions();
// Ajoutez le chemin du fichier d'entrée
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Définissez le chemin du fichier de sortie
options.AddOutput(new FileDataSource("path_to_result_file.doc"));
// Définissez le Mode
options.Mode = DocConversionMode.Flow;
// Exécutez le processus
DocConverter.Process(options);

Amélioration de l’utilisabilité de PdfAConverter

Class PdfAConverter : est statique et ne nécessite pas l’utilisation d’un constructeur.

Exemple d’utilisation :

// L'exemple montre comment convertir le document PDF en format PDF/A (PDF/A-3b dans ce cas) :
// Créez la classe d'options pour configurer le processus de conversion
var options = new PdfAConvertOptions
{
    PdfAVersion = PdfAStandardVersion.PDF_A_3B
};

// Ajoutez le fichier source
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf")); // remplacez par le chemin réel de votre fichier

// Ajoutez le chemin où enregistrer le fichier converti
options.AddOutput(new FileDataSource("path_to_the_converted_file.pdf"));

// Lancez la conversion
PdfAConverter.Process(options);

Exemple d’utilisation :

// L'exemple montre comment valider la conformité d'un document PDF au format PDF/A (PDF/A-1a dans ce cas) :
// Créez la classe d'options pour configurer le processus de validation
var options = new PdfAValidateOptions
{
    PdfAVersion = PdfAStandardVersion.PDF_A_1A
};

// Ajoutez un ou plusieurs fichiers à valider
options.AddInput(new FileDataSource("path_to_your_first_pdf_file.pdf")); // remplacez par le chemin réel de votre fichier
options.AddInput(new FileDataSource("path_to_your_second_pdf_file.pdf"));
// ajoutez d'autres fichiers selon les besoins

// Exécutez la validation et récupérez les résultats
var resultContainer = PdfAConverter.Process(options);

// Consultez la propriété ResultCollection de resultContainer pour les résultats de validation de chaque fichier :
for (var i = 0; i < resultContainer.ResultCollection.Count; i++)
{
    var result = resultContainer.ResultCollection[i];
    var validationResult = (PdfAValidationResult) result.Data;
    var isValid = validationResult.IsValid; // Résultat de validation pour le i‑ème document
}

Amélioration de l’utilisabilité de Timestamp

Class Timestamp : est statique et ne nécessite pas l’utilisation d’un constructeur.

Exemple d’utilisation :

// L'exemple montre comment ajouter un Timestamp au document.
// Créez un objet AddTimestampOptions pour définir les instructions
var options = new AddTimestampOptions("path_to_your_pfx_file.pfx", "password_for_your_pfx_file", "timestamp_server_url");
// Ajoutez le chemin du fichier d'entrée
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Définissez le chemin du fichier de sortie
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Lancez le processus
Timestamp.Process(options);

Documentation mise à jour

Exemples mis à jour, ajouts d’exemples supplémentaires :

  • Informations sur la licence et l’Évaluation
  • Pages produit
  • Générateur de tables PDF
  • Générateur de table des matières PDF
  • Ajoutateur de Timestamp PDF
  • Convertisseur PDF/A
  • Extracteur d’images PDF
  • Extracteur de texte PDF
  • Convertisseur PDF vers XLS
  • Convertisseur PDF vers HTML

Bugs corrigés

  • Problèmes résolus avec HTML vers PDF
  • Problèmes résolus avec PDF vers PDF/A-2B
  • Amélioration PDF vers JPEG : certains caractères apparaissaient sous forme de carrés
  • Rendu PDF vers TIFF corrigé
  • Exceptions inattendues lors de la conversion PDF vers JPEG
7 sept. 2026

v25.8

Amélioration de la convivialité de JpegConverter

Class JpegConverter : est statique et ne nécessite pas l’utilisation d’un constructeur.

Exemple d’utilisation :

// The example demonstrates how to convert PDF document into JPEG format.
// Create PdfToJpegOptions object to set instructions
var options = new PdfToJpegOptions();
// Add input File path
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Set output Directory path
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// Perform the process
JpegConverter.Process(options);

Amélioration de la convivialité de PngConverter

Class PngConverter : est statique et ne nécessite pas l’utilisation d’un constructeur.

Exemple d’utilisation :

// The example demonstrates how to convert PDF document into PNG format.
// Create PdfToPngOptions object to set instructions
var options = new PdfToPngOptions();
// Add input File path
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Set output Directory path
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// Perform the process
PngConverter.Process(options);

Amélioration de la convivialité de XlsConverter

  • Class XlsConverter : est statique et ne nécessite pas l’utilisation d’un constructeur.
  • Class XlsConverter : description corrigée.

Exemple d’utilisation :

// The example demonstrates how to convert PDF to XLSX document.
// Create PdfToXlsOptions object to set instructions
var options = new PdfToXlsOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_xlsx_file.xlsx"));
// Perform the process
XlsConverter.Process(options);

Amélioration de la convivialité de Signature

  • Class Signature : est statique et ne nécessite pas l’utilisation d’un constructeur.
  • Class Signature : description corrigée.
  • Class Signature : interface IPlugin supprimée.

Exemple d’utilisation :

// The example demonstrates how to sign PDF document.
// Create SignOptions object to set instructions
var options = new SignOptions("path_to_your_pfx_file.pfx", "password_of_your_pfx_file");
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
Signature.Process(options);

Constructeurs modifiés de PdfToHtmlOptions

Constructeurs et arguments optimisés.

Marque d’évaluation modifiée de TextExtractor

Le texte de la marque d’évaluation a été modifié.

Documentation mise à jour

Exemples mis à jour, exemples supplémentaires ajoutés :

  • Convertisseur PDF en JPEG
  • Convertisseur PDF en PNG
  • Convertisseur PDF en TIFF
  • Aplatisseur de formulaires PDF
  • Convertisseur HTML
  • Sécurité PDF
  • Optimiseur PDF
  • Fusionneur PDF
  • Séparateur PDF

Bugs corrigés

  • Correction des problèmes d’annotations
  • Correction des problèmes après redimensionnement
  • Correction PDF vers PDF/A - transformation des noms de polices
  • Correction PDF vers DOCX - un espace est ajouté dans l’en-tête, et d’autres problèmes
  • Correction HTML vers PDF - arrière-plan PNG transparent
  • Correction PDF compressé - amélioration du travail avec Adobe Acrobat
7 sept. 2026

v25.7

Amélioration de l’utilisabilité de Text Extractor

  • Class TextExtractor : est statique et ne nécessite pas l’utilisation d’un constructeur.
  • Class TextExtractor : comportement amélioré en mode évaluation. Aucun exception avec les documents de plus de 4 pages.
  • Class TextExtractor : problèmes corrigés dans la méthode Process.
  • Class PdfExtractorOptions : supprimée.
  • Class TextExtractorOptions : refactorisée.
  • Enum TextFormattingMode : renommé et amélioré.

Exemple d’utilisation :

// The example demonstrates how to extract text content of PDF document.
// Create TextExtractorOptions object to set instructions
var options = new TextExtractorOptions(TextFormattingMode.Pure);
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Perform the process
var results = TextExtractor.Process(options);
// Get the extracted text from the ResultContainer object
var textExtracted = results.ResultCollection[0].ToString();

Amélioration de l’utilisabilité de Html Converter

  • Class HtmlConverter : est statique et ne nécessite pas l’utilisation d’un constructeur.
  • Class HtmlConverter : problèmes corrigés dans la méthode Process.
  • Class HtmlConverter : logique IDisposable supprimée.
  • Class PdfConverterOptions : supprimée.

Exemples d’utilisation :

// The example demonstrates how to convert PDF to HTML document.
// Create PdfToHtmlOptions object to set output data type as file with embedded resources
var options = new PdfToHtmlOptions(PdfToHtmlOptions.SaveDataType.FileWithEmbeddedResources);
// Add input file path
options.AddInput(new FileDataSource("path_to_input.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_output.html"));
// Perform the process
HtmlConverter.Process(options);

// The example demonstrates how to convert HTML to PDF document.
// Create HtmlToPdfOptions
var options = new HtmlToPdfOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_input.html"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_output.pdf"));
 // Perform the process
HtmlConverter.Process(options);

Amélioration de l’utilisabilité de Image Extractor

  • Class ImageExtractor : est statique et ne nécessite pas l’utilisation d’un constructeur.

Exemple d’utilisation :

// The example demonstrates how to extract images from PDF document.
// Create ImageExtractorOptions to set instructions
var options = new ImageExtractorOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output Directory path
options.AddOutput(new DirectoryDataSource("path_to_results_directory"));
// Perform the process
var results = ImageExtractor.Process(options);
// Get path to image result
var imageExtracted = results.ResultCollection[0].ToFile();

Corrections mineures

  • Corrections internes.
  • Exemples et indices du Tiff Converter corrigés.
  • Durée d’optimisation des pages réduite.
  • Correction : image de sortie incorrecte lors de la conversion PDF vers PNG.
  • Correction : caractères chinois mal affichés pendant la conversion PDF vers PNG.
  • Amélioration : performances lors de la conversion PDF vers HTML.
7 sept. 2026

v25.6

Amélioration de l’utilisabilité du convertisseur Tiff

  • Class PdfToTiffOptions : Ajout d’un paramètre supplémentaire pour la conversion - Compression.
  • Class PdfToTiffOptions : Ajout d’un paramètre supplémentaire pour la conversion - ColorDepth.
  • Class TiffConverter est statique et ne nécessite pas l’utilisation d’un constructeur.
  • Exemples principaux améliorés.

Exemple d’utilisation :

// The example demonstrates how to convert PDF document into TIFF format.
// Create PdfToTiffOptions object to set instructions
var options = new PdfToTiffOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
# Set output Directory path
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
# Perform the process
TiffConverter.Process(options);

// The example demonstrates how to convert PDF document into TIFF format with additional parameters.
// Create PdfToTiffOptions object to set instructions
var options = new PdfToTiffOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
# Set output Directory path
options.AddOutput(new DirectoryDataSource("path_to_output_directory"));
// Optional parameters
options.PageList = new List<int> { 1, 3 };
options.MultiPage = true;
options.OutputResolution = 400;
options.Compression = TiffCompression.RLE;
options.ColorDepth = TiffColorDepth.Format24bpp;
// Perform the process
TiffConverter.Process(options);

Corrections mineures

  • Corrections internes.
7 sept. 2026

v25.5

Ajout d’un nouveau plugin : Form Exporter

  • Class FormExporter : représente le plugin Documentize.FormExporter qui est utilisé pour exporter les valeurs de formulaire des documents PDF vers un fichier DSV ou CSV.
  • Class FormExportToDsvOptions : représente les options d’exportation des valeurs des documents PDF vers un fichier DSV ou CSV via le plugin Documentize.FormExporter.

Exemple d’utilisation :

// L'exemple montre comment exporter les valeurs de formulaire vers un fichier CSV.
// Créez un objet FormExportToDsvOptions pour définir les instructions
var options = new FormExportToDsvOptions(',', true);
// Ajoutez le chemin du fichier d'entrée
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Définissez le chemin du fichier de sortie
options.AddOutput(new FileDataSource("path_to_result_csv_file.csv"));
// Exécutez le processus
FormExporter.Process(options);

Amélioration de l’ergonomie de Security

  • La classe est statique et ne nécessite pas l’utilisation d’un constructeur.
  • Exemples principaux améliorés.

Exemples d’utilisation :

// L'exemple montre comment chiffrer un document PDF.
// Créez un objet EncryptionOptions pour définir les instructions
var options = new EncryptionOptions("123456", "qwerty");
// Ajoutez le chemin du fichier d'entrée
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Définissez le chemin du fichier de sortie
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Exécutez le processus
Security.Process(options);

// L'exemple montre comment déchiffrer un document PDF.
// Créez un objet DecryptionOptions pour définir les instructions
var options = new DecryptionOptions("123456");
// Ajoutez le chemin du fichier d'entrée
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Définissez le chemin du fichier de sortie
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Exécutez le processus
Security.Process(options);

Corrections mineures

  • Indications de classe et licences améliorées.
7 sept. 2026

v25.4

Amélioration de la convivialité d’Optimizer

  • La classe est statique et ne nécessite pas l’utilisation d’un constructeur.
  • Exemple principal amélioré.
  • Ajout d’exemples supplémentaires.

Exemples d’utilisation :

// L'exemple montre comment optimiser un document PDF.
// Créez un objet OptimizeOptions pour définir les instructions
var options = new OptimizeOptions();
// Ajoutez le chemin du fichier d'entrée
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Définissez le chemin du fichier de sortie
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Exécutez le processus
Optimizer.Process(options);

// L'exemple montre comment faire pivoter un document PDF.
// Créez un objet RotateOptions pour définir les instructions
var options = new RotateOptions();
// Définissez la nouvelle rotation
options.Rotation = Rotation.On90;
// Ajoutez le chemin du fichier d'entrée
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Définissez le chemin du fichier de sortie
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Exécutez le processus
Optimizer.Process(options);

// L'exemple montre comment redimensionner un document PDF.
// Créez un objet ResizeOptions pour définir les instructions
var options = new ResizeOptions();
// Définissez la nouvelle taille de page
options.PageSize = PageSize.A3;
// Ajoutez le chemin du fichier d'entrée
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Définissez le chemin du fichier de sortie
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Exécutez le processus
Optimizer.Process(options);

// L'exemple montre comment compresser un document PDF.
// Créez un objet CompressOptions pour définir les instructions
var options = new CompressOptions();
// Ajoutez le chemin du fichier d'entrée
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Définissez le chemin du fichier de sortie
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Exécutez le processus
Optimizer.Process(options);

Amélioration de la convivialité du plugin Splitter

  • La classe est statique et ne nécessite pas l’utilisation d’un constructeur.
  • Exemple principal amélioré.

Exemples d’utilisation :

// L'exemple montre comment scinder un document PDF.
// Créez un objet SplitOptions pour définir les instructions
var options = new SplitOptions();
// Ajoutez le chemin du fichier d'entrée
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Définissez les chemins des fichiers de sortie
options.AddOutput(new FileDataSource("path_to_result_pdf_file_1.pdf"));
options.AddOutput(new FileDataSource("path_to_result_pdf_file_2.pdf"));
// Exécutez le processus
Splitter.Process(options);

Amélioration de la convivialité du plugin Merger

  • La classe est statique et ne nécessite pas l’utilisation d’un constructeur.
  • Exemple principal amélioré.

Exemples d’utilisation :

// L'exemple montre comment fusionner deux documents PDF.
// Créez un objet MergeOptions pour définir les instructions
var options = new MergeOptions();
// Ajoutez les chemins des fichiers d'entrée
options.AddInput(new FileDataSource("path_to_your_pdf_file_1.pdf"));
options.AddInput(new FileDataSource("path_to_your_pdf_file_2.pdf"));
// Définissez le chemin du fichier de sortie
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Exécutez le processus
Merger.Process(options);

Corrections mineures

  • Indices de classe améliorés.
7 sept. 2026

v25.3

Ajout du nouveau plugin : Form Flattener

  • Class FormFlattener : Représente le plugin Documentize.FormFlattener utilisé pour aplatir les champs dans les documents PDF.
  • Class FormFlattenerOptions : Représente les options pour aplatir les champs dans le document par le plugin Documentize.FormFlattener.

Exemple d’utilisation :

//The example demonstrates how to Flatten fields in PDF file.
// Create FormFlattenerOptions object to set instructions
var options = new FormFlattenerOptions();
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
//Optional parameter for skip the field with name "Surname".
options.SkipFields.Add("Surname");
// Perform the process
FormFlattener.Process(options);

//The example demonstrates how to Get Field Names from PDF file.
var fieldNames = FormFlattener.GetFieldNames("path_to_your_pdf_file.pdf");

Correctifs mineurs

  • Amélioration des indications de classe et des exemples.
7 sept. 2026

v25.2

Ajout d’un nouveau plugin : Générateur de table des matières

  • Class TocGenerator : Représente le plugin Documentize.TocGenerator. Utilisé pour ajouter une table des matières aux documents PDF.
  • Class TocOptions : Représente les options pour ajouter une table des matières au document via le plugin Documentize.TocGenerator.
  • Class TocHeading : Représente les options pour les titres ou en-têtes de la table des matières dans le document via le plugin Documentize.TocGenerator.

Exemple d’utilisation :

// The example demonstrates how to add Table of Contents to PDF file.
var options = new TocOptions();
// Set the Title
options.Title = "My Table of Contents";
// Generate links in bookmarks
options.GenerateBookmarks = true;
// Design Headings
options.Headings.Add(new TocHeading("Introduction", 2, false, 1));
options.Headings.Add(new TocHeading("Chapter I", 3, true, 1));
options.Headings.Add(new TocHeading("Chapter II", 4, true, 1));
options.Headings.Add(new TocHeading("Example A", 4, true, 2));
options.Headings.Add(new TocHeading("Example B", 4, true, 2));
options.Headings.Add(new TocHeading("Example C", 4, true, 2));
options.Headings.Add(new TocHeading("Example D", 4, true, 2));
options.Headings.Add(new TocHeading("Chapter III", 5, true, 1));
// Add input file path
options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// Set output file path
options.AddOutput(new FileDataSource("path_to_result_pdf_file.pdf"));
// Perform the process
TocGenerator.Process(options);

Corrections mineures

  • Amélioration des indications de classe et des exemples.
  • Mise à jour des filigranes.
  • Amélioration de la conversion PDF vers XSLX.
  • Amélioration de la conversion PDF vers PDF/A-1a.
7 sept. 2026

v25.1

Plugin amélioré : ImageExtractor

  • Ajout de la collection de sorties à ImageExtractorOptions.
  • Prise en charge de plusieurs entrées dans ImageExtractorOptions.
  • Correction des flux de sortie fermés.

Exemple d’utilisation :

// create ImageExtractor object to extract images
var plugin = new ImageExtractor();
// create ImageExtractorOptions
var opt = new ImageExtractorOptions();
// add input file path
opt.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// set output directory
opt.AddOutput(new DirectoryDataSource("path_to_results_directory"));
// perform extraction process
var resultContainer = plugin.Process(opt);
// get the image from the ResultContainer object
var imageExtracted = resultContainer.ResultCollection[0].ToFile();

Corrections mineures

  • Amélioration des indications de classe et des exemples.
  • Validation de la signature PDF.
  • Meilleur support des caractères chinois.
7 sept. 2026

v24.12

Nouveau plugin ajouté : Convertisseur PDF en PNG

  • Class PngConverter : Représente le plugin Documentize.PngConverter. Utilisé pour convertir des documents PDF au format PNG.
  • Class PdfToPngOptions : Représente les options du convertisseur PDF vers PNG pour le plugin Documentize.PngConverter.

Exemple d’utilisation :

// create PngConverter
var plugin = new PngConverter();
// create PdfToPngOptions object to set instructions
var opt = new PdfToPngOptions();
// add input file path
opt.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// set output file path
opt.AddOutput(new DirectoryDataSource("path_to_results_directory"));
// perform the process
plugin.Process(opt);

Nouveau plugin ajouté : Convertisseur PDF en TIFF

  • Class TiffConverter : Représente le plugin Documentize.TiffConverter. Utilisé pour convertir des documents PDF au format TIFF.
  • Class PdfToTiffOptions : Représente les options du convertisseur PDF vers TIFF pour le plugin Documentize.TiffConverter.

Exemple d’utilisation :

// create TiffConverter
var plugin = new TiffConverter();
// create PdfToTiffOptions object to set instructions
var opt = new PdfToTiffOptions();
// add input file path
opt.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// set output file path
opt.AddOutput(new DirectoryDataSource("path_to_results_directory"));
// perform the process
plugin.Process(opt);

Nouveau plugin ajouté : Générateur de tableaux PDF

  • Class TableGenerator : Représente le plugin Documentize.TableGenerator. Utilisé pour ajouter un tableau à un document PDF.
  • Class TableBuilder : Constructeur de tableau dans une page PDF.
  • Class TableRowBuilder : Constructeur de ligne de tableau.
  • Class TableCellBuilder : Constructeur de cellule de tableau.

Exemple d’utilisation :

// create TableGenerator
var plugin = new TableGenerator();
// create TableOptions object to set instructions
TableOptions opt = new TableOptions().InsertPageBefore(1)
   .AddTable()
        .AddRow()
            .AddCell().AddParagraph("Name")
            .AddCell().AddParagraph("Age")
        .AddRow()
            .AddCell().AddParagraph("Bob")
            .AddCell().AddParagraph("12")
        .AddRow()
            .AddCell().AddParagraph("Sam")
            .AddCell().AddParagraph("20")
        .AddRow()
            .AddCell().AddParagraph("Sandy")
            .AddCell().AddParagraph("26")
        .AddRow()
            .AddCell().AddParagraph("Tom")
            .AddCell().AddParagraph("12")
        .AddRow()
            .AddCell().AddParagraph("Jim")
            .AddCell().AddParagraph("27");
// add input file path
opt.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
// set output file path
opt.AddOutput(new FileDataSource("path_to_the_converted_file.pdf"));
// perform the process
plugin.Process(opt);

Classe renommée PdfDoc en DocConverter

  • Class DocConverter : Représente le plugin Documentize.DocConverter. Utilisé pour convertir des documents PDF au format DOC/DOCX.

Exemple d’utilisation :

// create DocConverter
var plugin = new DocConverter();
// create PdfToDocOptions object to set instructions
var opt = new PdfToDocOptions();
// add input file path
opt.AddInput(new FileDataSource(inputPath));
// set output file path
opt.AddOutput(new FileDataSource(outputPath));
// perform the process
plugin.Process(opt);
7 sept. 2026

v24.11

Ajout du nouveau plugin : Convertisseur PDF en JPEG

  • Objectif : La classe JpegConverter est conçue pour convertir des documents PDF en format JPEG, facilitant ainsi la manipulation et le partage d’images issues de PDF.
  • Constructeur :
    • JpegConverter() : Initialise une nouvelle instance du convertisseur JPEG.

Exemple d’utilisation :

var plugin = new JpegConverter();
var opt = new PdfToJpegOptions();
opt.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
opt.AddOutput(new DirectoryDataSource("path_to_results_directory"));
plugin.Process(opt);
  • Méthode :
    • Process(PdfToJpegOptions options) : Lance le processus de conversion JPEG en utilisant les options spécifiées.

Ajout de la classe DirectoryDataSource

  • Objectif : La classe DirectoryDataSource permet aux utilisateurs de gérer les données de répertoire pour les opérations de chargement et d’enregistrement au sein des plugins.
  • Constructeur :
    • DirectoryDataSource(string path) : Initialise un nouvel objet de données de répertoire avec le chemin spécifié.

Exemple d’utilisation :

var directorySource = new DirectoryDataSource("path_to_your_directory");
  • Propriétés :
    • DataType : Récupère le type de source de données.
    • Path : Obtient le chemin du répertoire de données actuel.

Ajout de la classe PdfToJpegOptions

  • Objectif : Cette classe contient les options permettant de configurer le processus de conversion JPEG, offrant aux utilisateurs la possibilité de spécifier la résolution, les pages à convertir et la qualité de l’image.
  • Constructeur :
    • PdfToJpegOptions() : Initialise une nouvelle instance d’options pour le convertisseur JPEG.

Propriétés :

  • OutputResolution : Spécifie la résolution des images JPEG résultantes.
  • PageList : Liste des pages à convertir depuis le PDF.
  • Quality : Définit la qualité de la sortie JPEG.
7 sept. 2026

v24.10

Ajout d’un nouveau plugin : Convertisseur PDF/A

  • Une nouvelle fonction de conversion PDF/A a été introduite, permettant aux utilisateurs de convertir facilement des fichiers PDF standards en documents conformes au PDF/A.

Exemple d’utilisation :

var options = new PdfAConvertOptions
{
    PdfAVersion = PdfAStandardVersion.PDF_A_3B
};

options.AddInput(new FileDataSource("path_to_your_pdf_file.pdf"));
options.AddOutput(new FileDataSource("path_to_the_converted_file.pdf"));

var plugin = new PdfAConverter();
plugin.Process(options);

Corrections de bugs

  • Correction de problèmes liés à la classe FileResult qui entraînaient des chemins de sortie incorrects.
  • Résolution de bugs mineurs affectant le HtmlConverter lors du traitement de gros fichiers.

Améliorations

  • Amélioration des performances du PdfExtractor et du ImageExtractor pour des temps de traitement plus rapides.
  • Mise à jour de la classe RotateOptions pour prendre en charge des angles de rotation supplémentaires.
7 sept. 2026

v24.9

Publié

 Français