ヘッダーは、ドキュメントの上部余白に表示されるセクションで、通常はページ番号、日付、ドキュメント名などの情報が含まれます。Aspose.Words REST API を使用すると、Word ドキュメントにページ番号とページ ヘッダーを挿入できます。既定では、ヘッダーは各ページで同じですが、奇数ページと偶数ページで異なるヘッダーを作成できます。
この投稿の目的は、最初のページのヘッダーが他のページと異なる、次のようなドキュメントのレイアウトを実現することです。
Aspose REST API を呼び出す前に、Aspose Cloud アカウント を作成し、アプリ キーとアプリ SID を取得する必要があります。はじめに の記事では、これらの手順を実行する方法について説明しています。
さらに、ドキュメントに対するすべての操作はクラウドで実行されるため、サンプルドキュメントをクラウドストレージにアップロードする必要があります。
// 完全な例とデータ ファイルについては、https://github.com/aspose-words-cloud/aspose-words-cloud-dotnet/blob/master/Examples/Aspose.Words.Cloud.Sdk.Examples/HeaderFooter/InsertHeadersAndPageNumbersToAWordDocument.cs をご覧ください。
string MyAppKey = ""; // Get AppKey and AppSID from https://dashboard.aspose.cloud/
string MyAppSid = ""; // Get AppKey and AppSID from https://dashboard.aspose.cloud/
StorageApi storageApi = new StorageApi(MyAppKey, MyAppSid);
string fileName = "Sample-Document.docx";
// ソースドキュメントをクラウドストレージにアップロードする
PutCreateRequest request = new PutCreateRequest(fileName, File.OpenRead(@"c:\Data\" + fileName), null, null);
storageApi.PutCreate(request);
Word文書にヘッダーを挿入する
ヘッダー フッターの挿入 API はドキュメントにヘッダーを追加し、その headerFooterType パラメータは次の 6 つの値のいずれかを取ることができます。
- HeaderFirst - セクションの最初のページのヘッダー。
- HeaderPrimary - プライマリ ヘッダー。奇数ページにも使用されます。
- HeaderEven - 偶数ページのヘッダー。
- FooterFirst - セクションの最初のページのフッター。
- FooterPrimary - プライマリ フッター。奇数ページにも使用されます。
- FooterEven - 偶数ページのフッター。
最初のページにヘッダーを挿入するには、HeaderFirst 値を使用してください。
// 完全な例とデータ ファイルについては、https://github.com/aspose-words-cloud/aspose-words-cloud-dotnet/blob/master/Examples/Aspose.Words.Cloud.Sdk.Examples/HeaderFooter/InsertHeadersAndPageNumbersToAWordDocument.cs をご覧ください。
string MyAppKey = ""; // Get AppKey and AppSID from https://dashboard.aspose.cloud/
string MyAppSid = ""; // Get AppKey and AppSID from https://dashboard.aspose.cloud/
WordsApi wordsApi = new WordsApi(MyAppKey, MyAppSid);
string fileName = "Sample-Document.docx";
string folder = null; // File exists at the root of the storage
// 最初のページのヘッダーを挿入
var putHeaderFooterRequest = new PutHeaderFooterRequest(fileName, "HeaderFirst", folder);
var actual = wordsApi.PutHeaderFooter(putHeaderFooterRequest);
残りのページにヘッダーを挿入するための HeaderPrimary 値:
// 完全な例とデータ ファイルについては、https://github.com/aspose-words-cloud/aspose-words-cloud-dotnet/blob/master/Examples/Aspose.Words.Cloud.Sdk.Examples/HeaderFooter/InsertHeadersAndPageNumbersToAWordDocument.cs をご覧ください。
// 他のすべてのページにヘッダーを挿入
var putHeaderFooterRequest = new PutHeaderFooterRequest(fileName, "HeaderPrimary", folder);
var actual = wordsApi.PutHeaderFooter(putHeaderFooterRequest);
最初のヘッダーは他のヘッダーと異なるため、以下に示すように DifferentFirstPageHeaderFooter パラメータの値を true に設定します。
// 完全な例とデータ ファイルについては、https://github.com/aspose-words-cloud/aspose-words-cloud-dotnet/blob/master/Examples/Aspose.Words.Cloud.Sdk.Examples/HeaderFooter/InsertHeadersAndPageNumbersToAWordDocument.cs をご覧ください。
var sectionIndex = 0;
var body = new PageSetup
{
DifferentFirstPageHeaderFooter = true
};
var pageSetupRequest = new UpdateSectionPageSetupRequest(fileName, sectionIndex, body);
var actual = wordsApi.UpdateSectionPageSetup(pageSetupRequest);
上記のコード スニペットを実行すると、ドキュメントのヘッダーに空の段落が追加されます。次に、これらのヘッダーにテキストを追加するには、段落の挿入 API を使用します。以下に示すコードは、最初のヘッダーに「Aspose」テキストを追加し、他のすべてのヘッダーに「Cloud File Format APIs」テキストを追加します。
// 完全な例とデータ ファイルについては、https://github.com/aspose-words-cloud/aspose-words-cloud-dotnet/blob/master/Examples/Aspose.Words.Cloud.Sdk.Examples/HeaderFooter/InsertHeadersAndPageNumbersToAWordDocument.cs をご覧ください。
var run = new Run { Text = "ASPOSE" };
var runRequest = new PutRunRequest(fileName, "sections/0/headersfooters/1/paragraphs/0", run);
var actual = wordsApi.PutRun(runRequest);
ヘッダーのテキストに書式を適用する
Update Run Font API を使用して、ヘッダーのテキストに書式を適用できます。API は本体で fontDto オブジェクトを受け入れます。そのリソース プロパティの詳細については、Word 文書内のテキストのフォント プロパティを更新する の記事を参照してください。次のコードは、ヘッダー テキストのフォント ファミリを Verdana、テキスト サイズを 14、テキストの色を黒に設定しています。
// 完全な例とデータ ファイルについては、https://github.com/aspose-words-cloud/aspose-words-cloud-dotnet/blob/master/Examples/Aspose.Words.Cloud.Sdk.Examples/HeaderFooter/InsertHeadersAndPageNumbersToAWordDocument.cs をご覧ください。
var runIndex = 0;
var fontDto = new Font { Bold = true, Name = "Verdana", Size = 14, Color = new XmlColor { Web = "#000000" } };
// 最初のページのヘッダーに書式を適用する
var documentParagraphRunFontRequest = new PostDocumentParagraphRunFontRequest(fileName, fontDto, "sections/0/headersfooters/1/paragraphs/0", runIndex);
var actual = wordsApi.PostDocumentParagraphRunFont(documentParagraphRunFontRequest);
// 他のすべてのページのヘッダーに書式を適用する
documentParagraphRunFontRequest = new PostDocumentParagraphRunFontRequest(fileName, fontDto, "sections/0/headersfooters/0/paragraphs/0", runIndex);
actual = wordsApi.PostDocumentParagraphRunFont(documentParagraphRunFontRequest);
上記の API 呼び出しを行うと、入力ドキュメントは次のようになります。
Word 文書にページ番号を挿入する
InsertPageNumbers API は、Word 文書にページ番号を挿入するために使用されます。API は、本体に次の JSON オブジェクトを受け入れます。
{
"Format": "string",
"Alignment": "string",
"IsTop": true,
"SetPageNumberOnFirstPage": true
}
ヘッダーにページ番号を追加するため、IsTop パラメータの値を true に設定します。ただし、フッターにページ番号を追加するには、値を false に設定します。
// 完全な例とデータ ファイルについては、https://github.com/aspose-words-cloud/aspose-words-cloud-dotnet/blob/master/Examples/Aspose.Words.Cloud.Sdk.Examples/HeaderFooter/InsertHeadersAndPageNumbersToAWordDocument.cs をご覧ください。
var body = new PageNumber { Alignment = "right", Format = "{PAGE} of {NUMPAGES}", IsTop = true, SetPageNumberOnFirstPage = true };
var insertPageNumbersRequest = new PostInsertPageNumbersRequest(fileName, body);
var actual = wordsApi.PostInsertPageNumbers(insertPageNumbersRequest);
最後に、ドキュメントにヘッダーとページ番号を追加しました。
おすすめの投稿:
詳細については、次のブログ投稿を確認することをお勧めします。