番号付けフィールド (AUTONUM、PAGE、SEQ、その他)
番号フィールド(AUTONUM、PAGE、SEQ、その他)
このガイドでは、Word の自動番号付けフィールドの使い方を示します Aspose.Words FOSS for .NET、そしてそれらがリストベースの番号付けとどう異なるか。 リストの操作 covers List, ListFormat、そして ListLevel – Word の番号付きおよび箇条書きリスト段落の背後にあるオブジェクトモデル。Word には別個の番号付けファミリーもあります fields テキスト中のフィールド位置で番号を計算し、段落リストの書式設定を介さないものです:法的およびアウトラインの自動番号付け、ページとセクションのカウンタ、リスト連動番号付け、名前付きシーケンス。これらはそれぞれを Field サブクラスとして Aspose.Words.Fields 名前空間、さらに NumberStyle リストレベル、脚注と文末脚注、そしてページ番号で共有されるenumで、数値の表示方法を選択します。
自動番号付フィールド:AUTONUM、AUTONUMLGL、AUTONUMOUT
FieldAutoNum 実装する AUTONUM フィールド(シンプルな連番)を実装し、公開する SeparatorCharacter. FieldAutoNumLgl implements AUTONUMLGL (legal/outline-style の番号付け)、追加で RemoveTrailingPeriod 独自の SeparatorCharacter. FieldAutoNumOut implements AUTONUMOUT (outline numbering) で、基本以外に独自のプロパティは持ちません Field で記述されたメンバー フィールドの操作.
リスト連動番号付(FieldListNum)
FieldListNum は LISTNUM フィールドを実装します:ListName は使用する抽象的な番号定義の名前を付け、HasListName はフィールドのコードが実際に名前を提供しているかどうかを報告します。ListLevel はフィールドが番号付けするデフォルトのリストレベルを上書きし、StartingNumber は番号付けの開始値を設定します。
ページとセクションのカウンタ:FieldPage、FieldSection、FieldSectionPages
FieldPage は実装します PAGE フィールドと FieldSectionPages implements SECTIONPAGES。 両方とも計算されたページレイアウトに依存して結果を生成します;同様に NUMPAGES で説明されているフィールド フィールドの操作、このエディションではページレイアウト/レンダリングエンジンが含まれていないため、レイアウト依存のフィールド値は計算されず、これらのフィールドはプレースホルダーとして評価されます 0. FieldSection implements SECTION、ドキュメントの現在のセクション番号を返します――ページネーションに依存せず、その制限の影響も受けません.
FieldSeq を使用した名前付きシーケンス
FieldSeq は、名前付きで独立した番号付けされたシーケンス(図や表など)用の SEQ フィールドを実装します:SequenceIdentifier はシーケンスに名前を付け、BookmarkName はオプションでフィールド自身の位置ではなく、文書内の別の項目を指すことができます。InsertNextNumber は現在の位置の値を表示せずにシーケンスの次の番号を挿入し、ResetNumber / ResetHeadingLevel はシーケンスのカウンタを特定の番号にリセットするか、特定の見出しレベルで再開します。
FieldRevNum
FieldRevNum は REVNUM フィールドを実装し、基本の Field メンバー以外に独自のプロパティは持ちません。
NumberStyle を使用した数値の書式設定
NumberStyle は、リストレベル、脚注/文末脚注の番号付け、ページ番号などで、数値の表示形式を選択するために使用される列挙型です。一般的なスタイルには Arabic、UppercaseRoman / LowercaseRoman、UppercaseLetter / LowercaseLetter、Ordinal、および OrdinalText があり、さらに多数のロケール固有スタイル(Kanji、Hangul、Hanja、ThaiLetter、HindiLetter1 など)と、呼び出し側が提供するフォーマット用の Bullet、LeadingZero、None、Custom があります。
ヒントとベストプラクティス
- 番号が既存のリスト定義名を参照する必要がある場合は
FieldListNumを使用します;特定のListに結びつかない番号付けにはFieldAutoNum/FieldAutoNumLgl/FieldAutoNumOutを使用してください。 FieldPageとFieldSectionPagesはレイアウト依存であり、NUMPAGESと同様です――この版ではそれらのResultが実際に計算されたページ数を示すと期待しないでください。- SEQ フィールドがフィールド位置で自分のカウンタを増やすのではなく、文書内の別の場所で定義された番号を参照する必要がある場合は
FieldSeq.BookmarkNameを使用します。 - 番号付けされたシーケンス(例:図番号)が各章やセクションの見出しごとにリセットされるべき場合は
FieldSeq.ResetHeadingLevelを設定します。
一般的な問題
| 問題 | 原因 | 修正 |
|---|---|---|
FieldPage または FieldSectionPages は常に 0 を表示します | これらのフィールドは計算されたページレイアウトに依存しますが、今回のエディションには含まれていません | 期待される動作 – 商用版を使用してください Aspose.Words(.NET 用) 計算されたページ数が必要な場合 |
FieldListNum は期待されるリスト書式を使用していません | ListName は文書内に存在する抽象番号定義と一致しません | 正確なリスト名を確認するか、HasListName をチェックしてフィールドのコードがそもそも名前を提供しているかどうかを確認してください |
FieldSeq の番号が期待通りに再開されません | ResetNumber または ResetHeadingLevel がシーケンスを再開すべきフィールドに設定されていませんでした | その FieldSeq インスタンスに適切なリセットプロパティを設定してください |
FAQ
リスト番号付けとこれらの番号フィールドの違いは何ですか?
リスト番号付け (List, ListFormat, ListLevel、カバーされている リストの操作) は段落全体をリスト項目としてフォーマットします。このページのフィールドは、テキスト内の特定の位置で番号を計算します――シーケンス、ページ/セクションカウンタ、または法的スタイルの自動番号付けのために――段落のリストフォーマットとは独立しています。
PAGE フィールドが常に 0 と評価されるのはなぜですか?
FieldPage は計算されたページレイアウトに依存しており、このエディションにはページレイアウト/レンダリングエンジンが含まれていません — 同じ理由で NUMPAGES はプレースホルダー値として評価されます。
「Figure 1」「Figure 2」のような、名前付きで独立した番号付けシーケンスを作成するにはどうすればよいですか?
各フィールドインスタンス全体で一貫した SequenceIdentifier(例: "Figure")とともに FieldSeq を使用します;それぞれがそのシーケンスの次の番号を表示します。
数字がどのような数字または文字スタイルで表示されるかを制御するにはどうすればよいですか?
NumberStyle 列挙体を使用します — Arabic、UppercaseRoman、LowercaseLetter、OrdinalText などの値でレンダリングスタイルを選択し、Bullet、None、Custom は数値以外または呼び出し元が提供する形式に使用します。
API Reference の概要
| クラス / 列挙型 | 説明 |
|---|---|
FieldAutoNum | AUTONUM field; SeparatorCharacter |
FieldAutoNumLgl | AUTONUMLGL field; RemoveTrailingPeriod, SeparatorCharacter |
FieldAutoNumOut | AUTONUMOUT フィールド |
FieldListNum | LISTNUM フィールド; ListName, HasListName, ListLevel, StartingNumber |
FieldPage | PAGE フィールド(レイアウト依存; この版では 0 に評価されます) |
FieldSection | SECTION フィールド |
FieldSectionPages | SECTIONPAGES フィールド(レイアウト依存; この版では 0 に評価されます) |
FieldSeq | SEQ フィールド; SequenceIdentifier, BookmarkName, InsertNextNumber, ResetNumber, ResetHeadingLevel |
FieldRevNum | REVNUM フィールド |
NumberStyle | リストレベル、脚注/文末注、ページ番号で使用される番号表示スタイルのEnum |