この例では、C++を使用して**ヘッダーとフッターをDOCX**に挿入する方法を説明します。ヘッダーとフッターは、Word文書ページの上部と下部にそれぞれ追加されます。これらは、日時、作成者情報、ページ番号など、すべてのページで繰り返すことを目的とした重要で有用な情報を保持します。C++を使用してWord文書にヘッダーとフッターの情報を追加するには、非常にシンプルなAPIインターフェイスを使用します。
C++を使用してDOCXにヘッダーとフッターを追加する手順
- NuGetパッケージマネージャーを使用してAspose.Words.Cppをダウンロードします
- Aspose::Words名前空間への参照を含める
- Document Classオブジェクトをインスタンス化して、ヘッダー/フッターを追加するためのドキュメントを読み込みます
- DocumentBuilder Classを使用して、DOCX内のヘッダー/フッター設定を管理します
- 異なるヘッダー/フッタープロパティを設定する
- Saveメソッドを使用して、ヘッダー/フッター情報を含むDOCXをC++で保存します
次の例を使用して、既存のMS Wordファイルをロードするか、新しいファイルを作成して、C++を使用してヘッダーとフッターの情報を追加できます。ドキュメントをロードし、DOCXでヘッダーとフッターの設定を有効にするためにC++で必要なAPI呼び出しはわずかです。
C++を使用してDOCXにヘッダーとフッターを追加するコード
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#pragma once | |
#include <cstdint> | |
#include <iostream> | |
#include <Aspose.Words.Cpp/Body.h> | |
#include <Aspose.Words.Cpp/Document.h> | |
#include <Aspose.Words.Cpp/PageSetup.h> | |
#include <Aspose.Words.Cpp/DocumentBuilder.h> | |
#include <Aspose.Words.Cpp/Paragraph.h> | |
#include <Aspose.Words.Cpp/ParagraphCollection.h> | |
#include <Aspose.Words.Cpp/SaveFormat.h> | |
#include <Aspose.Words.Cpp/Saving/SaveOutputParameters.h> | |
#include <Aspose.Words.Cpp/Section.h> | |
#include <system/convert.h> | |
#include <system/enumerator_adapter.h> | |
#include <system/exceptions.h> | |
#include <Aspose.Words.Cpp/License.h> | |
using System::ArrayPtr; | |
using System::MakeArray; | |
using System::MakeObject; | |
using System::SharedPtr; | |
using System::String; | |
using namespace Aspose::Words; | |
using namespace System; | |
void InsertHeaderFooter() | |
{ | |
// Apply Aspose.Words License | |
System::String WordsLicenseFile = u"Aspose.Total.NET.lic"; | |
SharedPtr<License> LicenseForHeader = System::MakeObject<License>(); | |
LicenseForHeader->SetLicense(WordsLicenseFile); | |
// Load the documet for adding Header/Footer | |
SharedPtr<Document> AddHeaderFooterToDOC = MakeObject<Document>(u"TestWordDocument.docx"); | |
// Use DocumentBuilder class to manage document Header/Footer settings | |
SharedPtr<DocumentBuilder> HeaderBuilder = MakeObject<DocumentBuilder>(AddHeaderFooterToDOC); | |
//Set different types of headers and footers for first even and odd pages | |
HeaderBuilder->get_PageSetup()->set_DifferentFirstPageHeaderFooter(true); | |
HeaderBuilder->get_PageSetup()->set_OddAndEvenPagesHeaderFooter(true); | |
// Bring the cursor to the beginning of header and add some text into it | |
HeaderBuilder->MoveToHeaderFooter(HeaderFooterType::HeaderPrimary); | |
HeaderBuilder->Write(u"<<<<<<< HeaderPrimary >>>>>>>"); | |
HeaderBuilder->MoveToHeaderFooter(HeaderFooterType::HeaderFirst); | |
HeaderBuilder->Write(u"<<<<<<< HeaderFirst >>>>>>>"); | |
HeaderBuilder->MoveToHeaderFooter(HeaderFooterType::HeaderEven); | |
HeaderBuilder->Write(u"<<<<<<< HeaderEven >>>>>>>"); | |
// Bring the cursor to the beginning of footer and add some text into it | |
HeaderBuilder->MoveToHeaderFooter(HeaderFooterType::FooterPrimary); | |
HeaderBuilder->Write(u"<<<<<<< FooterPrimary >>>>>>>"); | |
HeaderBuilder->MoveToHeaderFooter(HeaderFooterType::FooterFirst); | |
HeaderBuilder->Write(u"<<<<<<< FooterFirst >>>>>>>"); | |
HeaderBuilder->MoveToHeaderFooter(HeaderFooterType::FooterEven); | |
HeaderBuilder->Write(u"<<<<<<< FooterEven >>>>>>>"); | |
// Bring the cursor to the beginning of body in first section | |
HeaderBuilder->MoveToSection(0); | |
HeaderBuilder->Writeln(u"Page1"); | |
HeaderBuilder->InsertBreak(BreakType::PageBreak); | |
HeaderBuilder->Writeln(u"Page2"); | |
HeaderBuilder->InsertBreak(BreakType::PageBreak); | |
HeaderBuilder->Writeln(u"Page3"); | |
// Save the document with Header and Footer to DOCX file format | |
AddHeaderFooterToDOC->Save(u"output.docx", SaveFormat::Docx); | |
} | |
前の例では、C++を使用してDOCXでテーブルを作成する方法を調べました。この例では、C++でのWord文書のヘッダーとフッターの処理に焦点を当てています。