C# Word en PDF - DOC en PDF

La conversion de Word en PDF est une pratique courante de nos jours et elle est préférée avant de partager les documents. MS Word fournit une fonctionnalité intégrée pour enregistrer des documents Word au format PDF, cependant, il peut arriver que vous souhaitiez convertir un document Word en PDF par programmation, comme dans vos applications Web, ou que vous ayez besoin de conversions Word en PDF par lots sans installer MS Office. Ainsi, dans cet article, vous apprendrez à convertir Word DOCX ou DOC en PDF à l’aide de C# dans le framework .NET ou .NET Core.

Scénarios de conversion Word en PDF C#

Dans cet article, vous apprendrez à :

Convertisseur C# Word en PDF

Aspose.Words for .NET est une API puissante pour créer et manipuler des formats de documents Word populaires. L’API fournit également un moyen simple de convertir des documents Word en PDF avec un haut degré de fidélité. Par conséquent, pour la conversion de Word en PDF en C#, nous allons d’abord ajouter une référence à Aspose.Words for .NET DLL dans le projet ou l’installer à l’aide de l’une des méthodes suivantes.

Utilisation du gestionnaire de packages NuGet

  • Créez/ouvrez le projet dans Visual Studio.
  • Accédez au gestionnaire de packages NuGet et recherchez Aspose.Words.
  • Installez Aspose.Words for .NET.
Convertir Word en PDF C# .NET

Utilisation de la console du gestionnaire de packages

PM> Install-Package Aspose.Words

Conversion de Word simple en PDF C#

Pour convertir un document Word en PDF, vous devrez invoquer la méthode Document.Save() et spécifier le nom du fichier de sortie avec l’extension “.pdf”. L’exemple de code suivant montre comment convertir Word en PDF en C#.

// Chargez le document à partir du disque.
Document doc = new Document("word.doc");
// Enregistrer au format PDF
doc.Save("output.pdf");

Document Word

C# Convertir Word en PDF

PDF converti

Word en PDF par programmation en C#

Convertir des pages sélectionnées de Word en PDF en C#

Vous pouvez également personnaliser la conversion de Word en PDF en spécifiant la plage de pages que vous souhaitez obtenir dans le document PDF résultant. Vous pouvez soit convertir les N premières pages, soit définir une plage de pages en spécifiant l’index de la page de départ. L’exemple de code suivant montre comment convertir 3 pages à partir de la deuxième page d’un document Word en PDF en C#.

Document doc = new Document("word.docx");
PdfSaveOptions options = new PdfSaveOptions();
// Convertir 3 pages à partir de l'index 1 où 0 est l'index de la première page 
options.PageIndex = 1;
options.PageCount = 3;
// Enregistrer Word au format PDF
doc.Save("output.pdf", options);

Convertir Word en PDF avec une norme PDF particulière en C#

Les documents PDF peuvent être conformes à différentes normes PDF telles que PDF 1.7, PDF 1.5, PDF/A-1a, etc. Conformément à cela, Aspose.Words for .NET permet de spécifier le niveau de conformité PDF dans la conversion Word en PDF. Vous pouvez spécifier le niveau de conformité à l’aide de l’énumération PdfCompliance. L’exemple de code suivant montre comment définir le niveau de conformité dans la conversion Word en PDF en C#.

Document doc = new Document("word.docx");
// Définissez la conformité PDFSaveOption sur PDF17
PdfSaveOptions options = new PdfSaveOptions();
options.Compliance = PdfCompliance.Pdf17;
// Convertir Word en PDF
doc.Save("output.pdf", options);

Convertir Word en PDF avec compression texte/image en C#

Le format PDF prend en charge la compression de texte et d’image pour réduire la taille du document. Puisqu’un document PDF peut être volumineux, la compression de son contenu facilite le téléchargement, le partage, l’impression, etc. La compression de texte et d’image peut également être appliquée dans la conversion Word en PDF à l’aide d’Aspose.Words for .NET.

Options de compression de texte

Les options de compression de texte suivantes sont disponibles dans l’énumération PdfTextCompression.

  • Aucun : Enregistrement du PDF sans compression de texte.
  • Flate : Enregistrement de PDF avec compression flate (ZIP).

Compression d’images

Les options de compression d’image suivantes sont disponibles dans l’énumération PdfImageCompression.

  • Auto : l’API sélectionne automatiquement la compression la plus appropriée pour chaque image du document.
  • Jpeg : Compression en images JPEG (ne prend pas en charge la transparence).

L’exemple de code suivant montre comment convertir Word en PDF avec compression de texte et d’image en C#.

Document doc = new Document("word.docx");
PdfSaveOptions options = new PdfSaveOptions();
// Compression de texte et d'image
options.TextCompression = PdfTextCompression.Flate;
options.ImageCompression = PdfImageCompression.Auto;
// Enregistrer Word au format PDF
doc.Save("output.pdf", options);

Conversion de C# Word en PDF avec une signature numérique

Vous pouvez également appliquer une signature numérique au PDF de sortie lors de la conversion de Word en PDF. La classe CertificateHolder vous permet de spécifier le certificat numérique et le mot de passe. La classe PdfDigitalSignatureDetails permet de fournir les détails de la signature numérique tels que le titulaire du certificat, la raison, le lieu et la date/heure. L’exemple de code suivant montre comment convertir Word en PDF avec une signature numérique en C#.

Document doc = new Document("word.docx");
PdfSaveOptions options = new PdfSaveOptions();
// Détails des signatures numériques
CertificateHolder certHolder = CertificateHolder.Create("signature.pfx", "12345");
options.DigitalSignatureDetails = new PdfDigitalSignatureDetails(certHolder, "reason", "location", DateTime.Now);
// Enregistrer Word au format PDF
doc.Save("output.pdf", options);

Convertir Word en PDF avec la qualité JPEG souhaitée en C#

Vous pouvez également spécifier la qualité JPEG souhaitée que vous souhaitez obtenir dans le document PDF converti à l’aide de la propriété PdfSaveOptions.JpegQuality. La valeur de JpegQuality peut varier de 0 à 100 où 0 signifie la pire qualité mais une compression maximale et 100 signifie la meilleure qualité mais une compression minimale.

L’exemple de code suivant montre comment définir la qualité JPEG lors de la conversion de Word en PDF en C#.

Document doc = new Document("word.docx");
// Définir la qualité JPEG
PdfSaveOptions options = new PdfSaveOptions();
options.JpegQuality = 100;
// Convertir Word en PDF
doc.Save("output.pdf", options);

Conclusion

Dans cet article, vous avez appris à convertir des documents Word en PDF en C# avec différentes options. Visitez documentation de Aspose.Words for .NET pour voir l’ensemble complet des fonctionnalités offertes par l’API. Pour toute question ou requête, contactez-nous via notre forum.

Articles Liés