Bidang Penomoran (AUTONUM, PAGE, SEQ, dan Lainnya)

Bidang Penomoran (AUTONUM, PAGE, SEQ, dan Lainnya)

Bidang Penomoran (AUTONUM, PAGE, SEQ, dan Lainnya)

Panduan ini menunjukkan cara bekerja dengan bidang penomoran otomatis Word di Aspose.Words FOSS untuk .NET, dan bagaimana mereka berbeda dari penomoran berbasis daftar. Bekerja dengan Daftar covers List, ListFormat, dan ListLevel – model objek di balik paragraf daftar bernomor dan berpoin Word. Word juga memiliki keluarga penomoran terpisah fields yang menghitung nomor pada lokasi bidang dalam teks, bukan melalui pemformatan daftar paragraf: penomoran otomatis legal dan outline, penghitung halaman dan bagian, penomoran terhubung-daftar, dan urutan bernama. Itu memodelkan masing-masing sebagai sebuah Field subkelas dalam the Aspose.Words.Fields namespace, plus yang NumberStyle enum yang dibagikan oleh tingkat daftar, catatan kaki dan catatan akhir, serta nomor halaman untuk memilih bagaimana sebuah angka ditampilkan.


Bidang Penomoran Otomatis: AUTONUM, AUTONUMLGL, AUTONUMOUT

FieldAutoNum mengimplementasikan AUTONUM field (penomoran berurutan sederhana) dan mengekspos SeparatorCharacter. FieldAutoNumLgl implements AUTONUMLGL (penomoran gaya legal/outline), menambahkan RemoveTrailingPeriod bersamaan dengan miliknya sendiri SeparatorCharacter. FieldAutoNumOut implements AUTONUMOUT (penomoran outline) dan tidak memiliki properti apa pun selain basis Field anggota yang dijelaskan dalam Bekerja dengan Fields.


Penomoran Terhubung Daftar dengan FieldListNum

FieldListNum mengimplementasikan bidang LISTNUM: ListName memberi nama definisi penomoran abstrak yang akan digunakan, dan HasListName melaporkan apakah kode bidang sebenarnya menyediakan nama. ListLevel mengganti level daftar default tempat bidang menomori, dan StartingNumber menetapkan nilai awal penomoran bidang.


Penghitung Halaman dan Seksi: FieldPage, FieldSection, FieldSectionPages

FieldPage mengimplementasikan PAGE field dan FieldSectionPages implements SECTIONPAGES. Keduanya bergantung pada tata letak halaman yang dihitung untuk menghasilkan hasil; seperti halnya NUMPAGES field yang dijelaskan dalam Bekerja dengan Field, nilai field yang bergantung pada tata letak tidak dihitung dalam edisi ini karena tidak menyertakan mesin tata letak/rendering halaman, sehingga field ini mengevaluasi menjadi placeholder 0. FieldSection implements SECTION, mengembalikan nomor bagian dokumen saat ini – tidak bergantung pada paginasi dan tidak terpengaruh oleh batasan tersebut.


Urutan Bernama dengan FieldSeq

FieldSeq mengimplementasikan bidang SEQ untuk urutan yang dinamai dan bernomor secara independen (seperti gambar atau tabel): SequenceIdentifier memberi nama pada urutan, dan BookmarkName secara opsional mengarahkan bidang ke item lain di dalam dokumen alih-alih lokasi bidang itu sendiri. InsertNextNumber menyisipkan nomor berikutnya dalam urutan tanpa menampilkan nilai untuk posisi saat ini, dan ResetNumber / ResetHeadingLevel mengatur ulang penghitung urutan ke nomor tertentu, atau memulainya kembali pada tingkat heading tertentu.


FieldRevNum

FieldRevNum mengimplementasikan bidang REVNUM, dan tidak memiliki properti sendiri selain anggota dasar Field.


Memformat Angka dengan NumberStyle

NumberStyle adalah enum yang digunakan di seluruh tingkat daftar, penomoran catatan kaki/akhir, dan nomor halaman untuk memilih cara sebuah angka ditampilkan. Gaya umum meliputi Arabic, UppercaseRoman / LowercaseRoman, UppercaseLetter / LowercaseLetter, Ordinal, dan OrdinalText, bersama dengan serangkaian besar gaya spesifik lokal (Kanji, Hangul, Hanja, ThaiLetter, HindiLetter1, dan banyak lainnya) serta Bullet, LeadingZero, None, dan Custom untuk format yang disediakan pemanggil.


Tips dan Praktik Terbaik

  • Gunakan FieldListNum ketika sebuah angka perlu merujuk pada definisi daftar yang sudah ada dengan nama; gunakan FieldAutoNum/FieldAutoNumLgl/FieldAutoNumOut untuk penomoran yang tidak terikat pada List tertentu.
  • Ingat bahwa FieldPage dan FieldSectionPages bergantung pada tata letak, sama seperti NUMPAGES — jangan mengandalkan Result mereka mencerminkan jumlah halaman yang dihitung secara nyata dalam edisi ini.
  • Gunakan FieldSeq.BookmarkName ketika bidang SEQ perlu merujuk pada angka yang didefinisikan di tempat lain dalam dokumen, bukan meningkatkan penghitungnya sendiri pada lokasi bidang tersebut.
  • Atur FieldSeq.ResetHeadingLevel ketika urutan bernomor (misalnya nomor gambar) harus dimulai kembali pada setiap bab atau judul seksi baru.

Masalah Umum

MasalahPenyebabPerbaikan
FieldPage atau FieldSectionPages selalu menampilkan 0Bidang-bidang ini bergantung pada tata letak halaman yang dihitung, yang bukan bagian dari edisi iniPerilaku yang diharapkan – gunakan versi komersial Aspose.Words untuk .NET jika jumlah halaman yang dihitung diperlukan
FieldListNum tidak menggunakan format daftar yang diharapkanListName tidak cocok dengan definisi penomoran abstrak yang ada dalam dokumenKonfirmasikan nama daftar yang tepat, atau periksa HasListName untuk melihat apakah kode bidang menyediakan satu sama sekali
Nomor FieldSeq tidak dimulai kembali di tempat yang diharapkanResetNumber atau ResetHeadingLevel tidak disetel pada field yang seharusnya memulai ulang urutanSetel properti reset yang tepat pada instance FieldSeq tersebut

FAQ

Apa perbedaan antara penomoran daftar dan bidang penomoran ini?

Penomoran daftar (List, ListFormat, ListLevel, tercakup dalam Bekerja dengan Daftar) memformat seluruh paragraf sebagai item daftar. Field pada halaman ini menghitung sebuah nomor pada titik tertentu dalam teks – untuk urutan, penghitung halaman/bagian, atau penomoran otomatis gaya hukum – terlepas dari format daftar paragraf.

Mengapa bidang PAGE selalu dievaluasi menjadi 0?

FieldPage tergantung pada tata letak halaman yang dihitung, dan edisi ini tidak menyertakan mesin page-layout/rendering – alasan yang sama NUMPAGES dievaluasi menjadi nilai placeholder.

Bagaimana cara membuat urutan bernama dengan penomoran independen seperti “Figure 1”, “Figure 2”?

Gunakan FieldSeq dengan SequenceIdentifier yang konsisten (seperti "Figure") di setiap instance bidang; masing-masing menampilkan nomor berikutnya dalam urutan tersebut.

Bagaimana cara mengontrol gaya angka atau huruf yang digunakan saat nomor ditampilkan?

Gunakan enum NumberStyle – nilai seperti Arabic, UppercaseRoman, LowercaseLetter, dan OrdinalText memilih gaya rendering, bersama dengan Bullet, None, dan Custom untuk format non-numerik atau format yang disediakan pemanggil.


API Reference Ringkasan

Kelas / EnumDeskripsi
FieldAutoNumAUTONUM field; SeparatorCharacter
FieldAutoNumLglAUTONUMLGL field; RemoveTrailingPeriod, SeparatorCharacter
FieldAutoNumOutAUTONUMOUT bidang
FieldListNumLISTNUM bidang; ListName, HasListName, ListLevel, StartingNumber
FieldPagePAGE bidang (tergantung tata letak; dievaluasi menjadi 0 dalam edisi ini)
FieldSectionSECTION bidang
FieldSectionPagesSECTIONPAGES field (tergantung tata letak; menghasilkan 0 pada edisi ini)
FieldSeqSEQ field; SequenceIdentifier, BookmarkName, InsertNextNumber, ResetNumber, ResetHeadingLevel
FieldRevNumREVNUM field
NumberStyleEnum gaya penampilan nomor yang digunakan oleh tingkat daftar, catatan kaki/catatan akhir, dan nomor halaman

Lihat Juga

 Bahasa Indonesia