Fusionner des documents Word

MS Word est un outil puissant qui vous permet de personnaliser et de formater vos documents professionnels avec un ensemble fantastique de fonctionnalités. Vous pouvez vous retrouver dans des situations où vous souhaitez fusionner plusieurs documents Word, comme combiner tous les reçus dans un seul fichier ou combiner les différents documents d’exigences logicielles pour une gestion plus facile. De plus, la combinaison des fichiers simplifie le processus de partage. Dans cet article, vous apprendrez à fusionner plusieurs documents MS Word à l’aide de C++.

API C++ pour fusionner des documents Word

Aspose.Words for C++ est une bibliothèque C++ native qui vous permet de créer, modifier et convertir des documents Microsoft Word. En outre, il prend également en charge la combinaison de plusieurs documents Word en un seul fichier. Vous pouvez soit installer l’API via NuGet ou la télécharger directement à partir de la section Téléchargements.

PM> Install-Package Aspose.Words.Cpp

Fusionner des documents Word en C++

Fusionner des documents Word avec Aspose.Words for C++ est un jeu d’enfant. Vous pouvez les charger et les fusionner avec seulement quelques lignes de code. Voici l’image montrant les deux exemples de fichiers Word que nous combinerons dans cet article.

Documents Word à fusionner

Voici les étapes pour fusionner des documents Word à l’aide de C++.

Voici l’exemple de code pour fusionner des documents Word.

// Exemples de documents Word à fusionner
System::String sampleFile1 = u"SourceDirectory\\Sample 1.docx";
System::String sampleFile2 = u"SourceDirectory\\Sample 2.docx";

// Charger les documents Word à fusionner
System::SharedPtr<Aspose::Words::Document> document1 = System::MakeObject<Aspose::Words::Document>(sampleFile1);
System::SharedPtr<Aspose::Words::Document> document2 = System::MakeObject<Aspose::Words::Document>(sampleFile2);

// Fusionner des documents en conservant le formatage du fichier source
document1->AppendDocument(document2, Aspose::Words::ImportFormatMode::KeepSourceFormatting);

// Chemin du fichier de sortie
System::String outputPath = u"OutputDirectory\\merged-doc-out.docx";

// Enregistrer le document fusionné en tant que fichier DOCX
document1->Save(outputPath, Aspose::Words::SaveFormat::Docx);

Les images suivantes comparent les documents fusionnés générés à l’aide de ImportFormatMode::KeepSourceFormatting et [ImportFormatMode](https://apireference. aspose.com/words/cpp/namespace/aspose.words#aafaa52cbf0baa49c3225787c23a8c949)::Modes UseDestinationStyles.

Document Word fusionné généré à l'aide de ImportFormatOptions :: KeepSourceFormatting

Sortie générée à l’aide de ImportFormatMode :: KeepSourceFormatting

Document Word fusionné généré à l'aide de ImportFormatOptions :: UseDestinationStyles

Sortie générée à l’aide de ImportFormatMode :: UseDestinationStyles

Fusionner des documents Word avec des options supplémentaires

L’API Aspose.Words for C++ fournit la classe ImportFormatOptions pour personnaliser la fusion de fichiers Word. Voici les options fournies par la classe ImportFormatOptions.

  • IgnoreHeaderFooter : spécifie s’il faut ignorer le formatage du contenu des en-têtes/pieds de page lorsque le mode ImportFormatMode ::KeepSourceFormatting est utilisé.
  • IgnoreTextBoxes: Specifies whether to ignore the source formatting of textboxes when the ImportFormatMode::KeepSourceFormatting mode is used.
  • KeepSourceNumbering: Specifies how to import the numbering when it conflicts in source and destination documents.
  • SmartStyleBehavior: Specifies how to import styles when they have the same names in source and destination documents.

Voici les étapes pour fusionner plusieurs documents Word avec des options supplémentaires :

Voici l’exemple de code pour fusionner des documents Word avec des options supplémentaires.

// Exemples de documents Word à fusionner
System::String sampleFile1 = u"SourceDirectory\\Sample 1.docx";
System::String sampleFile2 = u"SourceDirectory\\Sample 2.docx";

// Charger les documents Word à fusionner
System::SharedPtr<Aspose::Words::Document> document1 = System::MakeObject<Aspose::Words::Document>(sampleFile1);
System::SharedPtr<Aspose::Words::Document> document2 = System::MakeObject<Aspose::Words::Document>(sampleFile2);

// Définir les options
auto options = MakeObject<Aspose::Words::ImportFormatOptions>();
options->set_IgnoreHeaderFooter(false);

// Fusionner des documents en conservant le formatage du fichier source
document1->AppendDocument(document2, Aspose::Words::ImportFormatMode::KeepSourceFormatting, options);

// Chemin du fichier de sortie
System::String outputPath = u"OutputDirectory\\merged-doc-out.docx";

// Enregistrer le document fusionné en tant que fichier DOCX
document1->Save(outputPath, Aspose::Words::SaveFormat::Docx);

Les images suivantes comparent les documents fusionnés générés en définissant l’option IgnoreHeaderFooter sur true et false.

Document Word fusionné généré en définissant l'option IgnoreHeaderFooter sur true

Sortie générée en définissant l’option IgnoreHeaderFooter sur true

Document Word fusionné généré en définissant l'option IgnoreHeaderFooter sur false

Sortie générée en définissant l’option IgnoreHeaderFooter sur false

Obtenez une licence gratuite

Vous pouvez essayer l’API sans limitation d’évaluation en demandant une licence temporaire gratuite.

Conclusion

Dans cet article, vous avez appris à fusionner plusieurs documents Word à l’aide de C++. De plus, vous avez appris à utiliser des options supplémentaires pour personnaliser la fusion de fichiers Word. L’API Aspose.Words for C++ fournit un ensemble de fonctionnalités pour travailler avec des fichiers Word. Vous pouvez explorer l’API en détail en utilisant la documentation officielle. Si vous avez des questions, n’hésitez pas à nous contacter sur le forum.

Voir également