Πεδία Αρίθμησης (AUTONUM, PAGE, SEQ, και Περισσότερα)

Πεδία Αρίθμησης (AUTONUM, PAGE, SEQ, και Περισσότερα)

Πεδία Αρίθμησης (AUTONUM, PAGE, SEQ, και Περισσότερα)

Αυτός ο οδηγός δείχνει πώς να εργαστείτε με τα αυτόματα πεδία αρίθμησης του Word στο Aspose.Words FOSS για .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 είναι η απαρίθμηση (enum) που χρησιμοποιείται σε επίπεδα λιστών, αρίθμηση υποσημειώσεων/τελικών σημειώσεων και αριθμούς σελίδων για να επιλέγει πώς αποδίδεται ένας αριθμός. Συνηθισμένα στυλ περιλαμβάνουν Arabic, UppercaseRoman / LowercaseRoman, UppercaseLetter / LowercaseLetter, Ordinal, και OrdinalText, μαζί με ένα μεγάλο σύνολο τοπικών στυλ (Kanji, Hangul, Hanja, ThaiLetter, HindiLetter1, και πολλά άλλα) καθώς και Bullet, LeadingZero, None, και Custom για μορφή που παρέχεται από τον καλούντα.


Συμβουλές και βέλτιστες πρακτικές

  • Χρησιμοποιήστε το FieldListNum όταν ένας αριθμός πρέπει να αναφερθεί σε υπάρχον ορισμό λίστας με όνομα· χρησιμοποιήστε FieldAutoNum/FieldAutoNumLgl/FieldAutoNumOut για αρίθμηση που δεν είναι συνδεδεμένη με κάποιο συγκεκριμένο List.
  • Θυμηθείτε ότι τα FieldPage και FieldSectionPages εξαρτώνται από τη διάταξη, όπως και το NUMPAGES — μην βασίζεστε στο ότι το Result τους αντικατοπτρίζει έναν πραγματικό υπολογιζόμενο αριθμό σελίδων σε αυτήν την έκδοση.
  • Χρησιμοποιήστε το FieldSeq.BookmarkName όταν ένα πεδίο SEQ χρειάζεται να αναφερθεί σε αριθμό που ορίζεται αλλού στο έγγραφο αντί να αυξάνει το δικό του μετρητή στη θέση του πεδίου.
  • Ορίστε το FieldSeq.ResetHeadingLevel όταν μια ακολουθία αρίθμησης (όπως οι αριθμοί εικόνων) πρέπει να επανεκκινείται σε κάθε νέο κεφάλαιο ή επικεφαλίδα ενότητας.

Κοινά Προβλήματα

ΠρόβλημαΑιτίαΔιόρθωση
FieldPage ή FieldSectionPages εμφανίζει πάντα 0Αυτά τα πεδία εξαρτώνται από τη υπολογισμένη διάταξη σελίδας, η οποία δεν αποτελεί μέρος αυτής της έκδοσηςΑναμενόμενη συμπεριφορά — χρησιμοποιήστε το εμπορικό Aspose.Words για .NET εάν απαιτείται υπολογισμένος αριθμός σελίδων
FieldListNum δεν χρησιμοποιεί τη αναμενόμενη μορφοποίηση λίσταςListName δεν ταιριάζει με έναν αφηρημένο ορισμό αρίθμησης που υπάρχει στο έγγραφοΕπιβεβαιώστε το ακριβές όνομα λίστας ή ελέγξτε το HasListName για να δείτε αν ο κώδικας του πεδίου παρέχει κάποιο καθόλου
Οι αριθμοί του FieldSeq δεν επανεκκινούν όπου αναμένεταιResetNumber ή ResetHeadingLevel δεν ορίστηκε στο πεδίο που πρέπει να επανεκκινήσει τη σειράΟρίστε την κατάλληλη ιδιότητα επαναφοράς σε αυτήν την περίπτωση FieldSeq

FAQ

Ποια είναι η διαφορά μεταξύ της αρίθμησης λίστας και αυτών των πεδίων αρίθμησης;

Αρίθμηση λίστας (List, ListFormat, ListLevel, καλύπτεται στο Εργασία με λίστες) μορφοποιεί ολόκληρες παραγράφους ως στοιχεία λίστας. Τα πεδία σε αυτή τη σελίδα υπολογίζουν έναν αριθμό σε συγκεκριμένο σημείο του κειμένου – για ακολουθίες, μετρητές σελίδας/ενότητας ή αυτόματη αρίθμηση σε νομικό στυλ – ανεξάρτητα από τη μορφοποίηση λίστας παραγράφων.

Γιατί ένα πεδίο PAGE αξιολογείται πάντα ως 0;

FieldPage εξαρτάται από την υπολογισμένη διάταξη σελίδας, και αυτή η έκδοση δεν περιλαμβάνει page-layout/rendering engine – ο ίδιος λόγος που το NUMPAGES αξιολογείται ως placeholder value.

Πώς μπορώ να δημιουργήσω μια ονομαστική, ανεξάρτητα αριθμημένη ακολουθία όπως “Figure 1”, “Figure 2”?

Χρησιμοποιήστε το FieldSeq με ένα συνεπές SequenceIdentifier (όπως το "Figure") σε κάθε παρουσία πεδίου· κάθε ένα εμφανίζει τον επόμενο αριθμό σε αυτή τη σειρά.

Πώς μπορώ να ελέγξω σε ποιο στυλ αριθμού ή γράμματος εμφανίζεται ένας αριθμός;

Χρησιμοποιήστε το enum NumberStyle – τιμές όπως Arabic, UppercaseRoman, LowercaseLetter και OrdinalText επιλέγουν το στυλ απόδοσης, μαζί με Bullet, None και Custom για μη-αριθμητικές ή παρεχόμενες από τον κάλεστη μορφές.


API Reference Σύνοψη

Κλάση / EnumΠεριγραφή
FieldAutoNumAUTONUM πεδίο; SeparatorCharacter
FieldAutoNumLglAUTONUMLGL πεδίο; RemoveTrailingPeriod, SeparatorCharacter
FieldAutoNumOutAUTONUMOUT πεδίο
FieldListNumLISTNUM πεδίο; ListName, HasListName, ListLevel, StartingNumber
FieldPagePAGE πεδίο (εξαρτάται από τη διάταξη· αξιολογείται ως 0 σε αυτήν την έκδοση)
FieldSectionSECTION πεδίο
FieldSectionPagesSECTIONPAGES πεδίο (εξαρτάται από τη διάταξη· αξιολογείται σε 0 σε αυτήν την έκδοση)
FieldSeqSEQ πεδίο· SequenceIdentifier, BookmarkName, InsertNextNumber, ResetNumber, ResetHeadingLevel
FieldRevNumREVNUM πεδίο
NumberStyleΑπαρίθμηση των στυλ απόδοσης αριθμών που χρησιμοποιούνται από τα επίπεδα λιστών, τις υποσημειώσεις/υποσημειώσεις τέλους και τους αριθμούς σελίδας

Δείτε επίσης

 Ελληνικά