1. Produits
  2.   Aspose.PDF
  3.   Aspose.PDF FOSS for .NET

Aspose.PDF FOSS for .NET

Créez et manipulez des documents PDF depuis .NET — avec annotations, champs de formulaire, extraction de texte, gestion des pages, chiffrement, et importation HTML/SVG/Markdown. MIT-licensed.

Bibliothèque .NET gratuite sous licence MIT pour la création et le traitement de fichiers PDF.

Aspose.PDF FOSS pour .NET est une bibliothèque sous licence MIT pour créer et travailler avec des documents PDF en C# et .NET. Le point d’entrée central est la classe Document, qui prend en charge la construction à partir d’un chemin de fichier, d’un tableau d’octets, d’un flux ou de sources protégées par mot de passe, et expose les opérations Open, Save, Merge, Encrypt, Decrypt et Convert sur l’ensemble de la spécification PDF.

La bibliothèque expose 805 classes couvrant la structure du document via Document, Page et PageCollection; des annotations riches via AnnotationCollection (incluant AddTextAnnotation, AddLinkAnnotation, AddHighlightAnnotation, AddWatermarkAnnotation et AddRedactAnnotation); des formulaires interactifs avec Form, ButtonField, CheckboxField, RadioButtonField et ChoiceField; l’extraction de texte et la recherche via TextFragmentAbsorber et TextFragment; la détection de tableaux avec AbsorbedTable, AbsorbedRow et AbsorbedCell; et la sécurité du document via Document.Encrypt et Document.Decrypt. La conversion de format prend en charge HTML, SVG et l’importation Markdown ainsi que l’exportation PDF.

Installez Aspose.PDF FOSS pour .NET depuis NuGet : dotnet add package Aspose.Pdf.Foss --version 0.1.0-alpha. La bibliothèque est entièrement sous licence MIT sans frais d’exécution ni restrictions d’utilisation. Pour les fonctionnalités et le support d’entreprise, voir Aspose.PDF for .NET — Enterprise Product.

Structure du document et gestion des pages

  • Document API : Créez de nouveaux PDF avec Document() ou ouvrez des fichiers existants via Document.Open(path), Document.Open(data) ou Document.Open(stream).
  • Gestion des pages : Ajoutez, accédez et réorganisez les pages via PageCollection. Chaque Page expose Width, Height, MediaBox, la rotation et Annotations.
  • Fusionner et diviser : Combinez plusieurs fichiers avec Document.Merge(documents) ou Document.MergeDocuments(files). Importez des pages spécifiques avec Document.ImportPage et Document.ImportPages.
  • Métadonnées : Lisez et écrivez les métadonnées du document via DocumentInfo et Document.GetOrCreateMetadata().
  • Sérialisation : Conservez les documents avec Document.Save(filename), Document.Save(stream, format) ou Document.ToArray().

Scénarios communs de traitement des documents

  • ** Génération PDF:** Construire des documents de manière programmatique en créant une instance Document et en remplissant les pages avec du contenu.
  • ** Analyse de document:** Ouvrez les fichiers existants pour l’inspection des métadonnées, la mesure des dimensions de page ou l"énumération des champs du formulaire.
  • ** Manipulation de page:** Redimensionner, faire pivoter ou réorganiser les pages en utilisant Document.ImportPage et l’API Page.
  • Fusion par lots: Rassembler des sections de rapport ou des pages de facture en un seul fichier PDF à l’aide de Document.MergeDocuments.

Annotations et champs de formulaire

  • ** API de rich annotation:** AnnotationCollection expose les méthodes pour le texte, lien, souligner, sous-tendre, frappe, carré, cercle, ligne, encre, timbre, coupé, rédaction, filigrane, polygone et des annots en poly.
  • Actions de lien: Ajouter des liens URI avec AddLinkAnnotation(rect, uri) ou des liaisons internes pour passer à la page avecAddLinkAnnotation(rect, destinationPage, destRect).
  • ** Formulaires interactifs:** Accédez au formulaire de document via Document.Form pour énumérer ou créer les instances ButtonField, CheckboxField,RadioButtonField et ChoiceField.
  • ** Sélection des annotations:** Filtrer les annotes par type sur toutes les pages en utilisant AnnotationSelector avec des surcharges par genre Visit.
  • Flags d’annotation: Contrôlez la visibilité, l’impression et le comportement du verrou par AnnotationFlags.

Évaluation des documents et scénarios de collaboration

  • ** Revue de balisage:** Ajouter des annotations en soulignant, sous-entendant ou en texte libre pour les flux de travail d’examen du document.
  • Rédaction: Retirer définitivement les régions sensibles à l’aide de AddRedactAnnotation.
  • ** Marque d’eau:** Tapez le texte CONFIDENTIEL ou APPROVÉ sur les pages avec AddWatermarkAnnotation et AddStampAnnotation.
  • ** Formulaires interactifs:** Créer des documents remplis avec des boutons radio, des cases à cocher et des listes de choix pour les pipelines de capture de données.

Extrait de texte et recherche

  • Recherche de texte : Utilisez TextFragmentAbsorber pour localiser tous les fragments de texte sur une page ou dans l’ensemble d’un document, avec une correspondance de phrase facultative.
  • Propriétés du fragment : Chaque TextFragment expose Text, Position, TextState (police, taille, couleur), et le rectangle englobant.
  • Contrôle de l’état du texte : TextFragmentState fournit l’accès à Font, FontSize, ForegroundColor, BackgroundColor, et au mode de rendu.
  • Détection de tableau : Identifiez et extrayez le contenu tabulaire via AbsorbedTable, AbsorbedRow et AbsorbedCell, chacun fournissant Rect et TextFragments.

Scénarios d'extraction de texte et de données

  • ** Indexer le contenu:** Extrait tout le texte de la page pour les pipelines de recherche à texte complet.
  • Extraction des données du formulaire: Lisez les valeurs de champs soumises pour le traitement côté serveur.
  • ** Parsage des factures:** Utilisez AbsorbedTable pour analyser les données de lignes et colonnes dans un tableau à partir d’un fichier PDF financier.
  • Comparation de la ligne rouge: Localiser des fragments spécifiques pour une annotation ou un remplacement précis basés sur la position.

Sécurité et chiffrement

  • **Crypter les documents avec Document.Encrypt(userPassword, ownerPassword, permissions, algorithm) en utilisant Algorithm.AESx128, AESx256 ou RC4x128.
  • ** Contrôle des autorisations:** Limiter l’impression, la copie et l"accessibilité par le biais de DocumentPrivilege.
  • Gestion des mots de passe: Modifier les mots d’utilisateur et propriétaire avec Document.ChangePasswords.
  • ** Déchiffrement:** Retirer la protection avec Document.Decrypt().
  • ** Signatures numériques:** Accéder aux champs de signature et aux données PKCS#7 par l’intermédiaire des types Signature et Algorithm.

Scénarios de sécurité des documents

  • ** Distribution confidentielle:** Déchiffrez les fichiers PDF avec des mots de passe par destinataire avant la livraison.
  • ** Contrats d’impression uniquement:** Appliquer les mots de passe du propriétaire avec DocumentPrivilege pour éviter la copie.
  • Archive de la conformité: Retirer le chiffrement des archives internes après vérification de sécurité.
  • Vérification de la signature: Vérifier les signatures numériques intégrées dans les fichiers PDF reçus pour vérifier leur authenticité.

Ouvrez un PDF, ajoutez une annotation de lien et enregistrez.

Ouvrez un PDF existant, joignez une annotation de lien URI à la page 1, et persistez le résultat.

using Aspose.Pdf;

var data = System.IO.File.ReadAllBytes("input.pdf");
using var doc = Document.Open(data);
var page = doc.Pages[1];
var action = PdfAction.CreateUri("https://aspose.com");
page.Annotations.AddLinkAnnotation(
    new Rectangle(50, 700, 200, 720), action);
using var ms = new System.IO.MemoryStream();
doc.Save(ms);
System.IO.File.WriteAllBytes("output.pdf", ms.ToArray());

Ajouter une annotation de filigrane

Marquer une marque d’eau sur la page 1 d ’ un document existant et aller-retour par sérialisation.

using Aspose.Pdf;
var input = System.IO.File.ReadAllBytes("report.pdf");
using var doc = Document.Open(input);
doc.Pages[1].Annotations.AddWatermarkAnnotation(
    new Rectangle(0, 0, 612, 792), "CONFIDENTIAL");
var saved = doc.ToArray();
System.IO.File.WriteAllBytes("watermarked.pdf", saved);

Extrait de texte d’une page

Utilisez TextFragmentAbsorber pour énumérer tous les fragments de texte sur la première page.

using Aspose.Pdf;
using Aspose.Pdf.Text;

var data = System.IO.File.ReadAllBytes("document.pdf");
using var doc = Document.Open(data);
var absorber = new TextFragmentAbsorber();
absorber.Visit(doc.Pages[1]);
foreach (var fragment in absorber.TextFragments)
{
    Console.WriteLine(fragment.Text);
}

Foire aux questions

Quel est le modèle de licence pour Aspose.PDF FOSS pour .NET?

Aspose.PDF FOSS pour .NET est publié sous la licence MIT, permettant une utilisation gratuite dans les produits commerciaux sans frais d’exécution. Le code source est disponible publiquement sur GitHub.

Comment installer Aspose.PDF FOSS pour .NET ? Je ne sais pas.

Installez à partir de NuGet en utilisant dotnet add package Aspose.Pdf.Foss --version 0.1.0-alpha. La bibliothèque cible .NET 8 et plus tard sans dépendances natives.

Quels sont les formats de fichiers pris en charge par Aspose.PDF FOSS pour .NET ?

La bibliothèque lit et écrit des fichiers PDF, supporte l’importation de HTML, SVG et Markdown. L’exportation raster est également disponible Les pages PDF peuvent être rendues en BMP, JPEG, PNG et TIFF.

Comment créer un nouveau document PDF ?

Utilisez Document.Create() pour créer un document vide, puis ajoutez des pages et enregistrez avec Document.Save(stream) ou Document.ToArray().

Une clé de licence est-elle nécessaire pour utiliser Aspose.PDF FOSS dans .NET ?

Aucune clé de licence ou étape d’activation n’est requise. La bibliothèque fonctionne entièrement sans licence et gratuitement sous la Licence MIT .

  

Ressources de support et d'apprentissage

 Français