Maison > développement back-end > C++ > Comment convertir par programme les fichiers Word (.Doc) en fichiers PDF dans C # ou VB.NET en utilisant des méthodes abordables?

Comment convertir par programme les fichiers Word (.Doc) en fichiers PDF dans C # ou VB.NET en utilisant des méthodes abordables?

Linda Hamilton
Libérer: 2025-01-26 13:36:39
original
176 Les gens l'ont consulté

Conversion par programmation de fichiers Word (.doc) en PDF en C# ou VB.NET : solutions abordables

How to Programmatically Convert Word (.doc) Files to PDF Files in C# or VB.NET Using Affordable Methods?

De nombreux outils gratuits ou open source convertissent le .doc en .pdf, mais ils fonctionnent souvent comme des pilotes d'imprimante dépourvus de SDK pour une utilisation programmatique. À l’inverse, les SDK dotés de cette fonctionnalité entraînent souvent des coûts de licence importants. Cet article explore des solutions programmatiques rentables en C# ou VB.NET.

Méthode 1 : tirer parti de la fonctionnalité « Enregistrer sous » de Microsoft Word

Cette approche utilise la fonctionnalité intégrée de Microsoft Word, en supposant que le complément « Enregistrer au format PDF » soit installé. C'est généralement plus fiable et efficace que les méthodes alternatives.

Voici le code C# :

<code class="language-csharp">using Microsoft.Office.Interop.Word;
using System;
using System.IO;

// ... other using statements ...

// ... other code ...

// Create a Word application object
Application word = new Application();
object oMissing = System.Reflection.Missing.Value; // Placeholder for optional arguments

// Specify the directory containing .doc files
string docDirectory = @"\server\folder";

// Get a list of .doc files
string[] wordFiles = Directory.GetFiles(docDirectory, "*.doc");

word.Visible = false; // Keep Word hidden
word.ScreenUpdating = false; // Prevent screen flickering

foreach (string wordFile in wordFiles)
{
    Document doc = word.Documents.Open(wordFile, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing);
    doc.Activate();

    string pdfFile = wordFile.Replace(".doc", ".pdf");
    object fileFormat = WdSaveFormat.wdFormatPDF;

    doc.SaveAs(pdfFile, ref fileFormat, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing);

    object saveChanges = WdSaveOptions.wdDoNotSaveChanges;
    ((_Document)doc).Close(ref saveChanges, ref oMissing, ref oMissing);
    doc = null;
}

((_Application)word).Quit(ref oMissing, ref oMissing, ref oMissing);
word = null;</code>
Copier après la connexion

N'oubliez pas d'ajouter une référence à Microsoft.Office.Interop.Word dans votre projet. Cette méthode nécessite que Microsoft Word soit installé sur le système sur lequel le code s'exécute.

Considérations importantes :

  • Gestion des erreurs : Le code manque de gestion robuste des erreurs. Le code prêt pour la production doit inclure des try-catch blocs pour gérer les exceptions potentielles (par exemple, fichier introuvable, erreurs d'application Word).
  • Licence : Bien que cette méthode évite les frais de licence SDK externes, elle repose sur la possession d'une copie sous licence de Microsoft Word.
  • Performances : Pour un grand nombre de fichiers, pensez à optimiser le code pour de meilleures performances (par exemple, traitement asynchrone).

Cette approche améliorée offre une solution pratique et relativement peu coûteuse pour la conversion programmatique de .doc en .pdf à l'aide d'outils facilement disponibles. Pensez à adapter le code à vos besoins spécifiques et à votre environnement.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal