COMPARAISON DES PRODUITS

Comparaison entre IronWord et Microsoft.Office.Interop.Word

Publié mars 12, 2024
Partager:

1. Introduction

De nombreux développeurs travaillent avec des applications .NET dans lesquelles ils doivent gérer des documents Word. Il peut s'agir de créer des rapports, de traiter des documents ou de générer des factures. Deux outils populaires pour cela sont Microsoft.Office.Interop.Word et IronWord. Chacun d'entre eux possède ses propres caractéristiques, avantages et inconvénients.

Cet article compareMicrosoft.Office.Interop.Word etIronWord. Nous examinerons ce que chaque outil offre, comment il fonctionne et dans quels scénarios il est le mieux utilisé. Cela devrait vous aider à choisir l'outil le mieux adapté à vos besoins spécifiques.

2. Microsoft.Office.Interop.Word

Comparaison entre IronWord et Microsoft.Office.Interop.Word : Figure 1 - Page web de Microsoft.Office.Interop.Word

Microsoft.Office.Interop.Word est une bibliothèque qui permet aux applications .NET d'interagir directement avec les documents Microsoft Word. Il s'agit d'un composant clé pour les développeurs qui doivent automatiser les processus liés aux documents Word ou intégrer des capacités de manipulation de documents Word dans leurs applications .NET. Cette bibliothèque est particulièrement utile pour des tâches telles que la génération, la modification et le formatage de documents dans l'environnement .NET, en tirant parti de toutes les capacités de Microsoft Word.

2.1 Caractéristiques principales

Création et édition de documents:

Microsoft.Office.Interop.Word fournit un support complet pour la création et l'édition de documents Word. Il permet aux développeurs d'ajouter, de modifier et de supprimer du texte de manière programmatique, ainsi que de gérer les propriétés des documents telles que les titres et les sujets. Cette fonction est essentielle pour générer des documents dynamiques sur la base des données saisies par l'utilisateur ou de sources de données externes.

Formatage et styles:

La bibliothèque offre des options complètes pour formater du texte, des paragraphes et des documents entiers. Les développeurs peuvent appliquer différents styles, polices, couleurs et alignements de paragraphes pour créer des documents formatés de manière professionnelle. Il est notamment possible de définir et d'appliquer des styles personnalisés par rapport aux styles par défaut, ce qui permet de s'assurer que les documents générés répondent à des exigences spécifiques en matière d'image de marque ou de conception.

Compatibilité avec Microsoft Word:

En tant que composant de la suite Microsoft Office, Microsoft.Office.Interop.Word garantit une fidélité et une compatibilité élevées avec toutes les fonctionnalités de Microsoft Word. Cela inclut une intégration transparente avec les dernières versions de Word, garantissant que les documents créés ou modifiés par le biais de la bibliothèque sont entièrement compatibles avec le format natif de Word.

3. IronWord

Comparaison entre IronWord et Microsoft.Office.Interop.Word : Figure 2 - Page web d'IronWord

IronWord est une bibliothèque .NET conçue pour la manipulation de documents, et plus particulièrement pour le traitement des documents Word. Contrairement à Microsoft.Office.Interop.Word, qui s'appuie sur la suite Microsoft Office, IronWord fournit une solution autonome pour la création, l'édition et la conversion de documents Word au sein d'applications .NET. Il s'agit donc d'une option intéressante pour les développeurs à la recherche d'une bibliothèque qui ne nécessite pas l'installation de Microsoft Word sur le serveur ou les machines clientes.

3.1 Caractéristiques principales

Standalone Document Processing:

IronWord permet de manipuler des documents Word directement dans les applications .NET sans qu'il soit nécessaire d'installer Microsoft Office Word. Cette indépendance simplifie le déploiement et réduit la complexité des environnements de développement, en particulier dans les contextes de serveurs ou de nuages.

Conversion de documents:

L'une des principales fonctionnalités d'IronWord est sa capacité à convertir des documents Word en d'autres formats, tels que PDF, HTML et texte brut. Cette fonction est essentielle pour les applications qui doivent présenter des documents dans plusieurs formats ou pour les applications web qui exigent que le contenu du document soit affiché en HTML.

Options de formatage complètes:

IronWord offre un large éventail de possibilités de formatage, permettant aux développeurs deappliquer les styles de textevous pouvez également modifier l'ordre des paragraphes, ajouter des alignements de paragraphes et insérer des éléments tels que des tableaux et des images. Ces options garantissent que les documents générés ou modifiés par IronWord respectent les normes visuelles et structurelles requises.

Intégration facile avec les projets .NET:

Conçu pour les applications .NET, IronWord peut être facilement intégré dans n'importe quel projet .NET par le biais de NuGet. Son API est conçue pour être intuitive pour les développeurs .NET, ce qui permet de commencer à travailler facilement avec des documents Word.

Compatibilité multiplateforme:

IronWord prend en charge le développement multiplateforme, ce qui permet de l'utiliser dans des applications ciblant divers systèmes d'exploitation. Cela est particulièrement utile pour les projets qui doivent fonctionner à la fois sur le système d'exploitation Windows et sur le système d'exploitation Linux, ou dans des environnements en nuage.

4. Création du projet .NET dans Visual Studio

4.1 Ouvrir dans Visual Studio

Commencez par lancer Microsoft Visual Studio. Lorsque vous ouvrez l'application, vous êtes accueilli par la fenêtre de démarrage. Cette fenêtre propose différentes options pour commencer, notamment l'ouverture d'un projet existant ou la création d'un nouveau projet. Dans notre cas, vous vous concentrerez sur le lancement d'un nouveau projet.

Comparaison entre IronWord et Microsoft.Office.Interop.Word : Figure 3 - Création d'un nouveau projet dans Visual Studio

4.2 Choisir le type de projet

Après avoir cliqué sur l'option de création d'un nouveau projet, Visual Studio vous présente une liste de modèles. Pour continuer, sélectionnez le projet Console App.

Comparaison entre IronWord et Microsoft.Office.Interop.Word : Figure 4 - Création d'un projet Console App

4.3 Configuration du projet

Une fois que vous avez sélectionné le modèle de projet souhaité, cliquez sur "Suivant" pour accéder à l'écran de configuration du projet. Ici, vous devez fournir des détails essentiels sur votre projet. Il s'agit notamment de spécifier le nom du projet et de sélectionner l'emplacement où les fichiers du projet seront stockés, comme un dossier de fichiers de programme, réservé à l'usage interne des applications.

Comparaison entre IronWord et Microsoft.Office.Interop.Word : Figure 5 - Configuration du nom du projet et du chemin d'accès au fichier

La boîte de dialogue suivante permet de sélectionner le cadre cible. Le Framework .NET que vous choisissez détermine les bibliothèques et les API disponibles pour votre application, ce qui influe sur sa compatibilité et ses fonctionnalités. Veillez à sélectionner une version du framework qui prenne en charge les fonctionnalités que vous prévoyez de mettre en œuvre dans votre application, en tirant parti des outils de Visual Studio pour une expérience de développement optimisée.

Comparaison entre IronWord et Microsoft.Office.Interop.Word : Figure 6 - Choix du framework .NET approprié

4.4 Création du projet

Après avoir rempli les informations nécessaires et s'être assuré que tous les paramètres sont correctement ajustés pour répondre aux exigences de votre projet, la dernière étape consiste à créer le projet. Pour ce faire, il suffit de cliquer sur le bouton "Créer". Visual Studio initialise ensuite un nouveau projet basé sur le modèle et les configurations sélectionnés. Ce processus peut prendre quelques instants, après quoi votre nouveau projet .NET sera ouvert et prêt à être développé.

5. Installer la bibliothèque IronWord

Cette section explique comment vous pouvez incorporer la bibliothèque IronWord dans votre projet en utilisant le gestionnaire de paquets NuGet, la ligne de commande Visual Studio et en la téléchargeant directement depuis la page web de NuGet.

5.1 Utilisation du gestionnaire de paquets NuGet

Le gestionnaire de paquets NuGet est une interface conviviale de Visual Studio qui permet l'installation transparente de bibliothèques et d'outils. Pour installer la bibliothèque IronWord à l'aide de cette méthode, procédez comme suit :

  1. Ouvrez votre projet dans Visual Studio. Cliquez avec le bouton droit de la souris sur le nom du projet dans l'explorateur de solutions et sélectionnez "Manage NuGet Packages..." dans le menu contextuel. Cette action ouvre la fenêtre du gestionnaire de paquets NuGet.

  2. Dans la fenêtre du gestionnaire de paquets NuGet, naviguez jusqu'à l'onglet "Browse". Utilisez la boîte de recherche pour trouver la bibliothèque IronWord en entrant "IronWord" et en appuyant sur Entrée.

    Comparaison entre IronWord et Microsoft.Office.Interop.Word : Figure 7 - Installation d'IronWord à l'aide du gestionnaire de paquets NuGet

  3. Dans les résultats de la recherche, sélectionnez le paquet IronWord. Vous verrez une description détaillée et des informations sur la version. Choisissez la version qui correspond aux exigences de votre projet et cliquez sur le bouton "Installer". Visual Studio se charge alors du téléchargement et de l'installation de la bibliothèque, en mettant à jour les références de votre projet en conséquence.

5.2 Utilisation de la ligne de commande de Visual Studio

Pour ceux qui préfèrent travailler avec des outils de ligne de commande, Visual Studio propose la console Package Manager, une interface PowerShell pour gérer les paquets NuGet.

  1. Dans le menu principal de Visual Studio, sélectionnez "Outils" > "NuGet Package Manager" > "Console du gestionnaire de paquets".

  2. Dans la console, tapez la commande suivante et appuyez sur Entrée :
    :ProductInstall

Cette commande permet de récupérer la dernière version de la bibliothèque IronWord et de l'intégrer à votre projet. Vous pouvez spécifier une version particulière en ajoutant le paramètre -Version suivi du numéro de version.

Comparaison entre IronWord et Microsoft.Office.Interop.Word : Figure 8 - Installation d'IronWord par la ligne de commande VS

5.3 Téléchargement direct à partir de la page Web de NuGet

Comparaison entre IronWord et Microsoft.Office.Interop.Word : Figure 9 - Installation d'IronWord par la page web NuGet

Si vous préférez gérer manuellement les bibliothèques de votre projet, vous pouvez directement télécharger le paquetage IronWord depuis le site NuGet et l'ajouter à votre projet.

  1. Visiternuget.org et rechercher le paquet IronWord. Sur la page du paquet, trouvez l'option "Télécharger"pour obtenir le fichier .nupkg. Enregistrez ce fichier sur votre ordinateur.

  2. Une fois téléchargé, vous pouvez ajouter manuellement le paquet à votre projet. Ce processus implique généralement l'extraction du fichier .nupkg, puis l'ajout de références aux assemblages qu'il contient dans votre projet. Toutefois, il est généralement plus simple et moins sujet aux erreurs d'utiliser le gestionnaire de paquets NuGet ou la ligne de commande Visual Studio, comme décrit ci-dessus.

6. Installer Microsoft.Office.Interop.Word

Cette bibliothèque peut être ajoutée à votre projet par différentes approches, chacune adaptée à des préférences et à des exigences de développement différentes.

6.1 Utilisation du gestionnaire de paquets NuGet

Comparaison entre IronWord et Microsoft.Office.Interop.Word : Figure 10 - Installation de Microsoft.Office.Interop.Word via le gestionnaire de paquets NuGet

Le gestionnaire de paquets NuGet de Visual Studio est la méthode la plus simple pour ajouter la bibliothèque Microsoft.Office.Interop.Word à votre projet. Procédez comme suit :

  1. Ouvrez le gestionnaire de paquets NuGet : Lorsque votre projet est ouvert dans Visual Studio, cliquez avec le bouton droit de la souris sur le nom du projet dans l'explorateur de solutions. Sélectionnez "Manage NuGet Packages..." dans le menu contextuel pour ouvrir la fenêtre NuGet Package Manager.

  2. Recherchez la bibliothèque : Dans la fenêtre NuGet Package Manager, passez à l'onglet "Browse" et tapez "Microsoft.Office.Interop.Word" dans la boîte de recherche. Appuyez sur Entrée pour lancer la recherche.

  3. Installer le paquet : Trouvez le paquet "Microsoft.Office.Interop.Word" dans les résultats de la recherche, un objet qui représente l'ensemble des capacités de manipulation de documents. Examinez les informations et la description de la version fournie pour vous assurer qu'elle répond aux besoins de votre projet. Cliquez sur le bouton "Installer" pour ajouter la bibliothèque à votre projet. Visual Studio se chargera du téléchargement et de l'installation du paquet, en mettant à jour les références de votre projet pour y inclure l'assemblage nécessaire.

6.2 Utilisation de la ligne de commande de Visual Studio

Comparaison entre IronWord et Microsoft.Office.Interop.Word : Figure 11 - Installation de Microsoft.Office.Interop.Word par la ligne de commande VS

La console du gestionnaire de paquets, une interface de ligne de commande dans Visual Studio, offre une autre façon d'installer la bibliothèque Microsoft.Office.Interop.Word.

  1. Accédez à la console du gestionnaire de paquets : Allez dans "Outils" > "NuGet Package Manager" > "Console du gestionnaire de paquets" dans le menu principal de Visual Studio.

  2. Exécuter la commande d'installation : Dans la console, tapez la commande suivante et appuyez sur Entrée :
    Install-Package Microsoft.Office.Interop.Word
  1. Cette commande demande à Visual Studio de récupérer la dernière version de la bibliothèque et de l'intégrer dans votre projet. Si vous avez besoin d'une version spécifique de la bibliothèque, vous pouvez la spécifier en ajoutant le paramètre -Version suivi du numéro de version souhaité.

6.3 Téléchargement direct à partir de la page Web de NuGet

Comparaison entre IronWord et Microsoft.Office.Interop.Word : Figure 12 - Installation de Microsoft.Office.Interop.Word à partir de la page web NuGet

Pour les développeurs qui préfèrent gérer manuellement les dépendances du projet, la bibliothèque Microsoft.Office.Interop.Word peut être téléchargée directement depuis le site NuGet.

  1. Télécharger le paquet : Naviguez versnuget.org et recherchez "Microsoft.Office.Interop.Word". Sur la page du paquet, trouvez la mention "Télécharger"pour obtenir le fichier .nupkg. Enregistrez ce fichier à un endroit connu de votre ordinateur.

  2. Ajouter manuellement le paquetage à votre projet : Après le téléchargement, le fichier .nupkg peut être ajouté manuellement à votre projet. Cela implique généralement d'extraire le fichier et d'ajouter des références aux assemblages extraits dans votre projet. Néanmoins, pour faciliter l'utilisation et minimiser les erreurs potentielles, il est recommandé d'utiliser le gestionnaire de paquets NuGet ou la ligne de commande de Visual Studio.

7. Comparaison des fonctions avancées d'IronWord et de Microsoft.Office.Interop.Word

7.1 Fonctionnalités avancées d'IronWord

7.1.1 Lire et modifier des documents Word

IronWord permet de lire et demodification de documents Word. Il s'agit notamment d'ouvrir des documents existants, d'y apporter des modifications et d'enregistrer ces modifications dans le document d'origine ou dans un nouveau fichier. Cette fonction est essentielle pour les applications qui doivent mettre à jour les documents en fonction des entrées de l'utilisateur ou des données provenant d'autres sources.

using IronWord;
using IronWord.Models;
// Initialize with a new document name
WordDocument document = new WordDocument("my_new_document.docx");
// Insert new text content
document.AddText("This is a demonstration of modifying content with IronWord.");
// Save the document with a new filename
document.SaveAs("updated_document.docx");
using IronWord;
using IronWord.Models;
// Initialize with a new document name
WordDocument document = new WordDocument("my_new_document.docx");
// Insert new text content
document.AddText("This is a demonstration of modifying content with IronWord.");
// Save the document with a new filename
document.SaveAs("updated_document.docx");
Imports IronWord
Imports IronWord.Models
' Initialize with a new document name
Private document As New WordDocument("my_new_document.docx")
' Insert new text content
document.AddText("This is a demonstration of modifying content with IronWord.")
' Save the document with a new filename
document.SaveAs("updated_document.docx")
VB   C#

Comparaison entre IronWord et Microsoft.Office.Interop.Word : Figure 13 - Document de sortie du code précédent

7.1.2 Modifier la configuration de la page

IronWord permet de modifier la taille du papier d'un document, en s'adaptant à diverses normes telles que A4, Letter ou Legal. Vous pouvez régler l'orientation de la page entre le portrait et le paysage, en fonction des besoins du document.

7.1.3 Ajouter des paragraphes

Ajouter des paragraphes de manière programmatique est simple avec IronWord, ce qui permet d'insérer du texte de manière dynamique en fonction de la logique de l'application.

using IronWord;
using IronWord.Models;
// Initialize a new Word document
WordDocument document = new WordDocument();
// Insert text into the document
document.AddText("Exploring IronWord Capabilities");
// Save the document to a new file
document.SaveAs("updated_ironword_document.docx");
using IronWord;
using IronWord.Models;
// Initialize a new Word document
WordDocument document = new WordDocument();
// Insert text into the document
document.AddText("Exploring IronWord Capabilities");
// Save the document to a new file
document.SaveAs("updated_ironword_document.docx");
Imports IronWord
Imports IronWord.Models
' Initialize a new Word document
Private document As New WordDocument()
' Insert text into the document
document.AddText("Exploring IronWord Capabilities")
' Save the document to a new file
document.SaveAs("updated_ironword_document.docx")
VB   C#

Comparaison entre IronWord et Microsoft.Office.Interop.Word : Figure 14 - Document de sortie du code précédent

7.1.4 Ajouter et supprimer des TextRuns

Les TextRuns représentent des sections de texte ayant un ensemble de propriétés communes. IronWord permet d'en ajouter et d'en supprimer, ce qui donne aux développeurs le contrôle de la segmentation et des propriétés du texte.

7.1.5 Ajouter des images

IronWord soutientadding images aux documents, notamment en spécifiant leur position, leur habillage et leur taille, ce qui améliore l'attrait visuel et l'efficacité du document.

using IronWord;
using IronWord.Models;
// Initialize a new Word document
WordDocument document = new WordDocument();
// Setup an image
IronWord.Models.Image img = new IronWord.Models.Image("updated_image.jpg");
img.Width = 250; // Width in pixels
img.Height = 250; // Height in pixels
Paragraph para = new Paragraph();
// Incorporate image into paragraph
para.AddImage(img);
// Integrate paragraph into document
document.AddParagraph(para);
// Save the document with a new name
document.SaveAs("updated_save_document.docx");
using IronWord;
using IronWord.Models;
// Initialize a new Word document
WordDocument document = new WordDocument();
// Setup an image
IronWord.Models.Image img = new IronWord.Models.Image("updated_image.jpg");
img.Width = 250; // Width in pixels
img.Height = 250; // Height in pixels
Paragraph para = new Paragraph();
// Incorporate image into paragraph
para.AddImage(img);
// Integrate paragraph into document
document.AddParagraph(para);
// Save the document with a new name
document.SaveAs("updated_save_document.docx");
Imports IronWord
Imports IronWord.Models
' Initialize a new Word document
Private document As New WordDocument()
' Setup an image
Private img As New IronWord.Models.Image("updated_image.jpg")
img.Width = 250 ' Width in pixels
img.Height = 250 ' Height in pixels
Dim para As New Paragraph()
' Incorporate image into paragraph
para.AddImage(img)
' Integrate paragraph into document
document.AddParagraph(para)
' Save the document with a new name
document.SaveAs("updated_save_document.docx")
VB   C#

Comparaison entre IronWord et Microsoft.Office.Interop.Word : Figure 15 - Document produit avec une image du code précédent

7.1.6 Ajouter des formes

Les formes peuvent être ajoutées aux documents avec IronWord, y compris la définition du type de forme, de la taille, de la position et de la rotation. Cela ajoute une couche d'intérêt visuel et peut être utilisé pour mettre en évidence des informations ou ajouter des éléments décoratifs.

7.1.7 Style de l'ensemble

Options de stylisme dans IronWord sont vastes, couvrant la famille et la taille des polices, la couleur et les décorations de texte comme le gras, l'italique, le barré, le souligné, l'exposant et l'indice. Ce niveau de contrôle est essentiel pour maintenir les normes de la marque et garantir la lisibilité des documents.

using IronSoftware.Drawing;
using IronWord;
using IronWord.Models;
using Color = IronSoftware.Drawing.Color;
// Initialize WordDocument with a file
WordDocument document = new WordDocument("updated_document.docx");
// Create TextRun with modifications
TextRun modifiedTextRun = new TextRun();
modifiedTextRun.Text = "Updated text with IronWord";
modifiedTextRun.Style = new TextStyle()
{
    FontFamily = "Arial",
    FontSize = 48, // Adjusted font size
    TextColor = new IronColor(Color.Blue), 
    IsBold = false, 
    IsItalic = false, 
    IsUnderline = false, 
    IsSuperscript = true, 
    IsStrikethrough = false,
    IsSubscript = true 
};
Paragraph newParagraph = new Paragraph();
// Add modified TextRun to Paragraph
newParagraph.AddTextRun(modifiedTextRun);
// Add new Paragraph to Document
document.AddParagraph(newParagraph);
// Save Document with a new name
document.SaveAs("updated_save_document.docx");
using IronSoftware.Drawing;
using IronWord;
using IronWord.Models;
using Color = IronSoftware.Drawing.Color;
// Initialize WordDocument with a file
WordDocument document = new WordDocument("updated_document.docx");
// Create TextRun with modifications
TextRun modifiedTextRun = new TextRun();
modifiedTextRun.Text = "Updated text with IronWord";
modifiedTextRun.Style = new TextStyle()
{
    FontFamily = "Arial",
    FontSize = 48, // Adjusted font size
    TextColor = new IronColor(Color.Blue), 
    IsBold = false, 
    IsItalic = false, 
    IsUnderline = false, 
    IsSuperscript = true, 
    IsStrikethrough = false,
    IsSubscript = true 
};
Paragraph newParagraph = new Paragraph();
// Add modified TextRun to Paragraph
newParagraph.AddTextRun(modifiedTextRun);
// Add new Paragraph to Document
document.AddParagraph(newParagraph);
// Save Document with a new name
document.SaveAs("updated_save_document.docx");
Imports IronSoftware.Drawing
Imports IronWord
Imports IronWord.Models
Imports Color = IronSoftware.Drawing.Color
' Initialize WordDocument with a file
Private document As New WordDocument("updated_document.docx")
' Create TextRun with modifications
Private modifiedTextRun As New TextRun()
modifiedTextRun.Text = "Updated text with IronWord"
modifiedTextRun.Style = New TextStyle() With {
	.FontFamily = "Arial",
	.FontSize = 48,
	.TextColor = New IronColor(Color.Blue),
	.IsBold = False,
	.IsItalic = False,
	.IsUnderline = False,
	.IsSuperscript = True,
	.IsStrikethrough = False,
	.IsSubscript = True
}
Dim newParagraph As New Paragraph()
' Add modified TextRun to Paragraph
newParagraph.AddTextRun(modifiedTextRun)
' Add new Paragraph to Document
document.AddParagraph(newParagraph)
' Save Document with a new name
document.SaveAs("updated_save_document.docx")
VB   C#

7.1.8 Définir les alignements

IronWord permet de définir l'alignement du texte dans le document, y compris les alignements à gauche, au centre, à droite et justifié. C'est important à la fois pour l'esthétique et la lisibilité.

7.1.10 Ajouter des tableaux

Les tableaux sont un élément essentiel de nombreux documents, utilisés pour organiser les données et les informations. IronWord permet deadding tables et de manipuler leur structure, notamment en ajoutant ou en supprimant des lignes et des colonnes. La manipulation du contenu des cellules des tableaux est simple avec IronWord, qui permet l'insertion dynamique de contenu en fonction des besoins de l'application. IronWord offre la possibilité de fusionner et de diviser les cellules des tableaux, ce qui est utile pour personnaliser les mises en page des tableaux et répondre à des exigences complexes en matière de présentation des données.

using IronWord;
using IronWord.Models;
// Create table cell
TableCell cell = new TableCell();
TextRun textRun = new TextRun();
textRun.Text = "Updated content"; // Changed the text content
// Add TextRun to the cell
cell.AddContent(new Paragraph(textRun));
// Configure border style
BorderStyle borderStyle = new BorderStyle();
borderStyle.BorderColor = new IronColor(IronSoftware.Drawing.Color.Blue); // Changed border color to blue
borderStyle.BorderValue = IronWord.Models.Enums.BorderValues.Double; // Changed border style to double
borderStyle.BorderSize = 3; // Adjusted border size to 3
// Configure table border
TableBorders tableBorders = new TableBorders() {
    TopBorder = borderStyle,
    RightBorder = borderStyle,
    BottomBorder = borderStyle,
    LeftBorder = borderStyle,
};
cell.Borders = tableBorders;
// Create row and add cell
TableRow row = new TableRow();
row.AddCell(cell);
row.AddCell(cell); 
// Create table and add row
Table table = new Table();
table.AddRow(row);
// Create a new Word document from the table
WordDocument doc = new WordDocument(table);
// Export Word document
doc.SaveAs("UpdatedDocument.docx");
using IronWord;
using IronWord.Models;
// Create table cell
TableCell cell = new TableCell();
TextRun textRun = new TextRun();
textRun.Text = "Updated content"; // Changed the text content
// Add TextRun to the cell
cell.AddContent(new Paragraph(textRun));
// Configure border style
BorderStyle borderStyle = new BorderStyle();
borderStyle.BorderColor = new IronColor(IronSoftware.Drawing.Color.Blue); // Changed border color to blue
borderStyle.BorderValue = IronWord.Models.Enums.BorderValues.Double; // Changed border style to double
borderStyle.BorderSize = 3; // Adjusted border size to 3
// Configure table border
TableBorders tableBorders = new TableBorders() {
    TopBorder = borderStyle,
    RightBorder = borderStyle,
    BottomBorder = borderStyle,
    LeftBorder = borderStyle,
};
cell.Borders = tableBorders;
// Create row and add cell
TableRow row = new TableRow();
row.AddCell(cell);
row.AddCell(cell); 
// Create table and add row
Table table = new Table();
table.AddRow(row);
// Create a new Word document from the table
WordDocument doc = new WordDocument(table);
// Export Word document
doc.SaveAs("UpdatedDocument.docx");
Imports IronWord
Imports IronWord.Models
' Create table cell
Private cell As New TableCell()
Private textRun As New TextRun()
textRun.Text = "Updated content" ' Changed the text content
' Add TextRun to the cell
cell.AddContent(New Paragraph(textRun))
' Configure border style
Dim borderStyle As New BorderStyle()
borderStyle.BorderColor = New IronColor(IronSoftware.Drawing.Color.Blue) ' Changed border color to blue
borderStyle.BorderValue = IronWord.Models.Enums.BorderValues.Double ' Changed border style to double
borderStyle.BorderSize = 3 ' Adjusted border size to 3
' Configure table border
Dim tableBorders As New TableBorders() With {
	.TopBorder = borderStyle,
	.RightBorder = borderStyle,
	.BottomBorder = borderStyle,
	.LeftBorder = borderStyle
}
cell.Borders = tableBorders
' Create row and add cell
Dim row As New TableRow()
row.AddCell(cell)
row.AddCell(cell)
' Create table and add row
Dim table As New Table()
table.AddRow(row)
' Create a new Word document from the table
Dim doc As New WordDocument(table)
' Export Word document
doc.SaveAs("UpdatedDocument.docx")
VB   C#

Comparaison entre IronWord et Microsoft.Office.Interop.Word : Figure 16 - Document de sortie avec les tableaux du code précédent

7.2 Fonctionnalités avancées spécifiques de Microsoft.Office.Interop.Word

Microsoft.Office.Interop.Word permet une intégration profonde avec les documents Word, permettant aux développeurs d'exploiter les fonctionnalités étendues de Word de manière programmatique. Vous trouverez ci-dessous des fonctions avancées spécifiques offertes par Microsoft.Office.Interop.Word, distinctes des capacités générales décrites précédemment :

7.2.1 Contrôles du contenu

Microsoft.Office.Interop.Word prend en charge l'ajout et la manipulation des contrôles de contenu, qui comprennent les boîtes de texte enrichi, les boîtes combinées, les sélecteurs de date et les cases à cocher. Ces contrôles peuvent être utilisés pour créer des documents structurés et interactifs dans lesquels les utilisateurs peuvent saisir ou sélectionner des informations à l'intérieur d'un modèle défini.

// Content Controls
var application = new Microsoft.Office.Interop.Word.Application();
var document = application.Documents.Add();
var cc = document.ContentControls.Add(WdContentControlType.wdContentControlComboBox, ref missing);
cc.Title = "Choose an option";
cc.DropdownListEntries.Add("Option 1", "1");
cc.DropdownListEntries.Add("Option 2", "2");
// Content Controls
var application = new Microsoft.Office.Interop.Word.Application();
var document = application.Documents.Add();
var cc = document.ContentControls.Add(WdContentControlType.wdContentControlComboBox, ref missing);
cc.Title = "Choose an option";
cc.DropdownListEntries.Add("Option 1", "1");
cc.DropdownListEntries.Add("Option 2", "2");
' Content Controls
Dim application = New Microsoft.Office.Interop.Word.Application()
Dim document = application.Documents.Add()
Dim cc = document.ContentControls.Add(WdContentControlType.wdContentControlComboBox, missing)
cc.Title = "Choose an option"
cc.DropdownListEntries.Add("Option 1", "1")
cc.DropdownListEntries.Add("Option 2", "2")
VB   C#

Comparaison entre IronWord et Microsoft.Office.Interop.Word : Figure 17 - Document de sortie avec les contrôles de contenu du code précédent

7.2.2 Fusion de courriers

Automatisez le processus de fusion de courrier, qui associe un document Word à une source de données telle qu'une feuille de calcul ou une base de données, afin de produire des lettres, des étiquettes ou des courriers électroniques personnalisés en masse. Cette fonction est inestimable pour générer des communications ou des documents personnalisés en masse.

// Mail Merge
var mailMergeDoc = application.Documents.Add();
mailMergeDoc.MailMerge.OpenDataSource("path\\to\\datasource.xlsx");
mailMergeDoc.MailMerge.Destination = WdMailMergeDestination.wdSendToNewDocument;
mailMergeDoc.MailMerge.Execute(false);
// Mail Merge
var mailMergeDoc = application.Documents.Add();
mailMergeDoc.MailMerge.OpenDataSource("path\\to\\datasource.xlsx");
mailMergeDoc.MailMerge.Destination = WdMailMergeDestination.wdSendToNewDocument;
mailMergeDoc.MailMerge.Execute(false);
' Mail Merge
Dim mailMergeDoc = application.Documents.Add()
mailMergeDoc.MailMerge.OpenDataSource("path\to\datasource.xlsx")
mailMergeDoc.MailMerge.Destination = WdMailMergeDestination.wdSendToNewDocument
mailMergeDoc.MailMerge.Execute(False)
VB   C#

7.2.3 Suivi des modifications et des commentaires

Activer et interagir avec les fonctions de suivi des modifications et de commentaires de Word par le biais du code. Cette fonctionnalité est essentielle pour les applications qui nécessitent une édition collaborative, une révision des documents ou un audit des changements au fil du temps.

// Track Changes and Comments
document.TrackRevisions = true;
document.Comments.Add(document.Paragraphs [1].Range, "This is a comment.");
// Track Changes and Comments
document.TrackRevisions = true;
document.Comments.Add(document.Paragraphs [1].Range, "This is a comment.");
' Track Changes and Comments
document.TrackRevisions = True
document.Comments.Add(document.Paragraphs (1).Range, "This is a comment.")
VB   C#

Comparaison entre IronWord et Microsoft.Office.Interop.Word : Figure 18 - Document de sortie avec suivi des commentaires du code précédent

7.2.4 En-têtes et pieds de page

Manipulez les en-têtes et les pieds de page de manière dynamique, notamment en ajoutant des numéros de page, des dates ou du texte personnalisé. C'est essentiel pour créer des documents professionnels avec une image de marque cohérente et des aides à la navigation.

// Headers and Footers
foreach (Section section in document.Sections)
{
    section.Headers [WdHeaderFooterIndex.wdHeaderFooterPrimary].Range.Text = "Header Text";
    section.Footers [WdHeaderFooterIndex.wdHeaderFooterPrimary].PageNumbers.Add();
}
// Headers and Footers
foreach (Section section in document.Sections)
{
    section.Headers [WdHeaderFooterIndex.wdHeaderFooterPrimary].Range.Text = "Header Text";
    section.Footers [WdHeaderFooterIndex.wdHeaderFooterPrimary].PageNumbers.Add();
}
' Headers and Footers
For Each section As Section In document.Sections
	section.Headers (WdHeaderFooterIndex.wdHeaderFooterPrimary).Range.Text = "Header Text"
	section.Footers (WdHeaderFooterIndex.wdHeaderFooterPrimary).PageNumbers.Add()
Next section
VB   C#

Comparaison entre IronWord et Microsoft.Office.Interop.Word : Figure 19 - Document produit avec les en-têtes et les pieds de page du code précédent

7.2.5 Table des matières et index

Générer et mettre à jour une table des matières ou un index à partir des titres des documents ou des entrées marquées. C'est essentiel pour créer des documents professionnels navigables, en particulier des rapports ou des livres volumineux.

// Table of Contents and Indexes
var toc = document.TablesOfContents.Add(document.Content, UpperHeadingLevel: 1, LowerHeadingLevel: 3, UseHyperlinks: true);
var index = document.Indexes.Add(document.Content);
// Table of Contents and Indexes
var toc = document.TablesOfContents.Add(document.Content, UpperHeadingLevel: 1, LowerHeadingLevel: 3, UseHyperlinks: true);
var index = document.Indexes.Add(document.Content);
' Table of Contents and Indexes
Dim toc = document.TablesOfContents.Add(document.Content, UpperHeadingLevel:= 1, LowerHeadingLevel:= 3, UseHyperlinks:= True)
Dim index = document.Indexes.Add(document.Content)
VB   C#

7.2.6 Intégrer et lier des objets

Incorporer ou lier des objets externes tels que des tableaux Excel, des présentations PowerPoint ou tout autre objet spécifié dans des documents Word. Cette capacité permet d'obtenir un contenu dynamique qui se met à jour en même temps que le fichier source ou d'intégrer des informations directement dans le document.

// Embedding and Linking Specified Objects
object missing = System.Reflection.Missing.Value;
document.InlineShapes.AddOLEObject("Excel.Sheet", "path\\to\\excel.xlsx", false, false, ref missing, ref missing, ref missing, ref missing);
// Embedding and Linking Specified Objects
object missing = System.Reflection.Missing.Value;
document.InlineShapes.AddOLEObject("Excel.Sheet", "path\\to\\excel.xlsx", false, false, ref missing, ref missing, ref missing, ref missing);
' Embedding and Linking Specified Objects
Dim missing As Object = System.Reflection.Missing.Value
document.InlineShapes.AddOLEObject("Excel.Sheet", "path\to\excel.xlsx", False, False, missing, missing, missing, missing)
VB   C#

8. Documentation et assistance

8.1 Documentation et assistance d'IronWord

IronWord offre des services approfondis de documentation et un soutien pour aider les développeurs à exploiter tout son potentiel. La documentation comprend un large éventail de ressources, notamment un guide de démarrage détaillé, des résumés des fonctionnalités, des exemples de démarrage rapide et des références API complètes.

IronWord bénéficie d'une assistance technique solide qui permet aux développeurs de résoudre rapidement tout problème. Le cadre d'assistance comprend une équipe dédiée disponible pour répondre aux questions et résoudre les problèmes.

8.2 Microsoft.Office.Interop.Word Documentation et support

Microsoft.Office.Interop.Word fournit aux développeurs .NET les outils nécessaires pour interagir de manière programmatique avec les documents Word, en s'appuyant sur la documentation et l'assistance étendues de Microsoft. La documentation comprend tout, des guides pour débutants aux exemples avancés, en passant par des informations détaillées sur les API et des cas d'utilisation pratiques.

Pour l'assistance, Microsoft propose plusieurs canaux, notamment une assistance technique directe, des forums communautaires et des plates-formes comme Stack Overflow pour l'assistance par les pairs. GitHub est également essentiel pour signaler les problèmes et suggérer des améliorations. Des mises à jour régulières garantissent que la bibliothèque reste à jour avec les nouvelles versions de Word, reflétant l'engagement permanent de Microsoft envers les besoins des développeurs.

9. Modèles de licences

9.1 Licence IronWord

Comparaison entre IronWord et Microsoft.Office.Interop.Word : Figure 20 - Page de licence d'IronWord

IronWord propose des services gratuits et commerciauxoptions de licence:

  • L License Lite : $749 ; USD

    • Pour 1 développeur

    • 1 emplacement

    • 1 projet
  • Soutien par courrier électronique
  • License Plus : $1,499 ; USD

    • Jusqu'à 3 développeurs

    • 3 emplacements

    • 3 projets

    • Courrier électronique(24/7) et assistance par chat
  • Assistance téléphonique
  • Licence professionnelle : $2,999 ; USD

    • Jusqu'à 10 développeurs

    • 10 emplacements

    • 10 projets

    • Courrier électronique(24/7)assistance en ligne, par chat et par téléphone

    • Support pour le partage d'écran

    Toutes les licences commerciales comprennent une assistance prioritaire et des mises à jour. Il offre également uneessai gratuit pour tester toutes les fonctionnalités dans un environnement de production sans aucun filigrane.

9.2 Licence Microsoft.Office.Interop.Word

La licence de Microsoft.Office.Interop.Word est liée à la suite Microsoft Office. Aucune licence distincte n'est nécessaire pour la bibliothèque Interop elle-même ; il est inclus dans Microsoft Office. L'utilisation de Microsoft.Office.Interop.Word dans les applications nécessite que l'environnement de déploiement dispose d'une licence Microsoft Office valide, qui inclut Word.

Le coût dépend de la version spécifique de la suite Office et de l'accord de licence choisi, allant des licences individuelles aux licences en volume pour les entreprises. Pour connaître les prix exacts, consultez le site officiel de Microsoft ou contactez un représentant de Microsoft.

10. Conclusion

Dans la comparaison entreIronWord et Microsoft.Office.Interop.Word, nous avons examiné divers aspects tels que la fonctionnalité, la facilité d'utilisation, la compatibilité avec les plates-formes et les licences. IronWord apparaît comme un concurrent particulièrement solide pour les développeurs à la recherche d'une solution flexible et multiplateforme pour la manipulation de documents Word.

Pouvant fonctionner indépendamment de Microsoft Office, IronWord offre une approche rationalisée du traitement des documents, ce qui en fait un choix idéal pour les applications fonctionnant dans des environnements divers. Son ensemble complet de fonctionnalités, combiné à la commodité de ne pas nécessiter l'installation de Microsoft Word, donne à IronWord un avantage, en particulier dans les scénarios où la simplicité de déploiement et une large compatibilité sont des considérations clés. Si vous souhaitez acheter IronWord, rendez-vous sur le sitepage de licence.

SUIVANT >
Comparaison entre IronWord et Aspose Words for .NET