Les en-têtes et les pieds de page sont couramment utilisés en travaillant avec des documents de mots. Ils donnent une vue claire du thème principal du document ainsi que de toute information supplémentaire qui doit être placée devant les lecteurs. Microsoft Word vous permet d’ajouter des informations d’en-tête et de pied de page à votre document avec personnalisation. Si vous êtes un développeur d’applications .NET qui souhaite développer (ou a développé) une application pour le traitement des documents Word, l’ajout de la fonctionnalité d’insertion d’en-têtes et de pieds de page aux documents Word de votre application peut être une fonctionnalité bénéfique. Dans cet article, nous allons passer par les étapes pour ajouter de l’en-tête et du pied de page à un document Word à partir d’une application .NET. Nous utiliserons l’API NPOI pour .NET dans C # à cet effet.

Comment insérer l’en-tête et le pied de page vers le document Word à l’aide de Microsoft Word?

Avant de pouvoir commencer à étudier comment ajouter des informations d’en-tête et de pied de page à un document Word à partir d’une application .NET, examinons d’abord comment nous pouvons faire de même en utilisant Microsoft Word.

Étapes pour insérer l’en-tête et le pied de page dans un document à l’aide de Microsoft Word

Vous pouvez utiliser les étapes suivantes pour insérer l’en-tête et le pied de page dans un document DOCX à l’aide de Microsoft Word.

  1. Sélectionnez Insérer > En-tête ou pied de page .
  2. Sélectionnez l’une des conceptions intégrées.
  3. Tapez le texte que vous souhaitez dans l’en-tête ou le pied de page.
  4. Sélectionnez Fermez l’en-tête et le pied de page Lorsque vous avez terminé.

Comment insérer l’en-tête et le pied de page à l’aide de NPOI dans C

Maintenant que nous avons vu comment insérer l’en-tête et le pied de page dans un document Word à l’aide de Microsoft Word, jetons un coup d’œil à faire la même chose en utilisant l’API NPOI pour .NET dans notre application C #. Juste au cas où vous n’auriez pas beaucoup d’idées sur NPOI, vous pouvez passer par notre guide complet pour NPOI et ses directives d’installation.

Étapes pour insérer l’en-tête et le pied de page dans le document Word en utilisant C

À ce stade, nous nous attendons à ce que vous ayez créé une simple application C # Console et ajouté API NPOI. Utilisez les étapes suivantes pour ajouter un en-tête et un pied de page dans un document Word à l’aide de l’API NPOI en C #.

  1. Créez une instance de la classe xwpfDocument
  2. Ajoutez des instances de xwpfParagraph et xwpfrun pour créer un paragraphe avec le texte requis
  3. Créez un en-tête en utilisant CT_HDR et définissez ses propriétés et son texte comme indiqué dans le code
  4. Créez un pied de page en utilisant CT_FTR et définissez ses propriétés et son texte comme indiqué dans le code
  5. Créez des relations uniques de l’en-tête et du pied de page en utilisant xwpfrelation
  6. Enregistrez le fichier sur disque à l’aide de l’objet xwpfDocument
//Create document
XWPFDocument doc = new XWPFDocument();
XWPFParagraph para = doc.CreateParagraph();
XWPFRun run = para.CreateRun();
run.SetText("FileFomrat.com");

doc.Document.body.sectPr = new CT_SectPr();
CT_SectPr secPr = doc.Document.body.sectPr;

//Create header and set its text
CT_Hdr header = new CT_Hdr();
//header.AddNewP().AddNewR().AddNewT().Value = "FileFormat.com";
var headerParagraph = header.AddNewP();
var paragraphRun = headerParagraph.AddNewR();
var paragraphText = paragraphRun.AddNewT();
paragraphText.Value = "FileFormat.com - An Open-source File Format API Guide For Developers";
CT_PPr headerPPR = headerParagraph.AddNewPPr();
CT_Jc headerAlign = headerPPR.AddNewJc();
headerAlign.val = ST_Jc.center;

//Create footer and set its text
CT_Ftr footer = new CT_Ftr();
CT_P footerParagraph = footer.AddNewP();
CT_R ctr = footerParagraph.AddNewR();
CT_Text ctt = ctr.AddNewT();
ctt.Value = "CopyRight (C) 2023";
CT_PPr ppr = footerParagraph.AddNewPPr();
CT_Jc align = ppr.AddNewJc();
align.val = ST_Jc.center;
            
//Create the relation of header
XWPFRelation relation1 = XWPFRelation.HEADER;
XWPFHeader myHeader = (XWPFHeader)doc.CreateRelationship(relation1, XWPFFactory.GetInstance(), doc.HeaderList.Count + 1);

//Create the relation of footer
XWPFRelation relation2 = XWPFRelation.FOOTER;
XWPFFooter myFooter = (XWPFFooter)doc.CreateRelationship(relation2, XWPFFactory.GetInstance(), doc.FooterList.Count + 1);

//Set the header
myHeader.SetHeaderFooter(header);
CT_HdrFtrRef myHeaderRef = secPr.AddNewHeaderReference();
myHeaderRef.type = ST_HdrFtr.@default;
myHeaderRef.id = myHeader.GetXWPFDocument().GetRelationId(myHeader); // = myHeader.GetPackageRelationship().Id;

//Set the footer
myFooter.SetHeaderFooter(footer);
CT_HdrFtrRef myFooterRef = secPr.AddNewFooterReference();
myFooterRef.type = ST_HdrFtr.@default;
myFooterRef.id = myFooter.GetXWPFDocument().GetRelationId(myFooter);//myFooter.GetPackageRelationship().Id;

//Save the file
using (FileStream stream = File.Create("HeaderAndFooter.docx"))
{
    doc.Write(stream);
}

Conclusion

Dans cet article, nous avons vu comment ajouter un en-tête et un pied de page à un document Word à l’aide de l’API NPOI en C #. Nous ajouterons plus d’exemples comme ceux-ci à nos futurs articles pour travailler avec l’API NPOI en C # pour le traitement des documents. Alors restez à l’écoute.