Πεδία Αυτοματοποίησης Εγγράφων (IF, COMPARE, MACROBUTTON, και Περισσότερα)

Πεδία Αυτοματοποίησης Εγγράφων (IF, COMPARE, MACROBUTTON, και Περισσότερα)

Πεδία Αυτοματοποίησης Εγγράφου (IF, COMPARE, και Άλλα)

Αυτός ο οδηγός δείχνει πώς να εργαστείτε με την οικογένεια πεδίων αυτοματοποίησης εγγράφων του Word στο Aspose.Words FOSS για .NET – πεδία που καθοδηγούν υπό όρους κείμενο, αποθηκεύουν μεταβλητές σε επίπεδο εγγράφου και συνδέουν μακροεντολές, πλοήγηση και συμπεριφορά εκτύπωσης, αντί να εμφανίζουν απλώς μια υπολογισμένη τιμή. Κάθε ένα είναι ένα Field υποκατηγορία στο Aspose.Words.Fields χώρο ονομάτων: FieldIf, FieldCompare, FieldDocVariable, FieldGoToButton, FieldMacroButton, και FieldPrint. Όλα αυτά κληρονομούν τον πυρήνα Field μέλη που περιγράφονται στο Εργασία με Πεδία – GetFieldCode(), Update(), Remove(), Unlink(), Start/Separator/End, Result, και Format – αυτή η σελίδα καλύπτει τι είναι συγκεκριμένο για το καθένα.


Κειμένο υπό όρους με FieldIf

FieldIf υλοποιεί το IF πεδίο. LeftExpression, ComparisonOperator, και RightExpression περιγράφει την κατάσταση – το ίδιο τριμερές σχήμα που χρησιμοποιείται από IComparisonExpressionEvaluator (δείτε Εργασία με Πεδία) – και TrueText / FalseText κρατήστε τα δύο πιθανά αποτελέσματα. Καλέστε EvaluateCondition() για να αξιολογήσετε την κατάσταση απευθείας; επιστρέφει ένα FieldIfComparisonResult τιμή: True, False, ή Error.


Σύγκριση Τιμών με FieldCompare

FieldCompare υλοποιεί το πεδίο COMPARE. Όπως το FieldIf, εκθέτει τα LeftExpression, ComparisonOperator και RightExpression για να περιγράψει τη σύγκριση, αλλά παράγει αποτέλεσμα τύπου boolean αντί να εναλλάσσει μεταξύ δύο εναλλακτικών κειμένων.


Μεταβλητές Εγγράφου με FieldDocVariable

FieldDocVariable υλοποιεί το πεδίο DOCVARIABLE, διαβάζοντας μια ονομασμένη μεταβλητή περιορισμένη σε έγγραφο μέσω της ιδιότητας VariableName.


Κουμπιά: FieldGoToButton και FieldMacroButton

FieldGoToButton υλοποιεί το πεδίο GOTOBUTTON: το Location ονομάζει το σελιδοδείκτη, τη σελίδα ή άλλη προορισμό προς άλμα, και το DisplayText είναι η ετικέτα που εμφανίζεται στο έγγραφο. FieldMacroButton υλοποιεί το πεδίο MACROBUTTON: το MacroName ονομάζει τη μακροεντολή που θα εκτελεστεί και το DisplayText είναι η ετικέτα. Και τα FieldIf και FieldMacroButton υλοποιούν επιπλέον το IMergeFieldSurrogate, τη διεπαφή που τα πεδία του Word που υποστηρίζουν συγχώνευση αλληλογραφίας χρησιμοποιούν για να σημειώσουν ότι είναι αντικαταστάσιο περιεχόμενο.


Οδηγίες εκτύπωσης με FieldPrint

FieldPrint υλοποιεί το πεδίο PRINT: τα PrinterInstructions και PostScriptGroup περιέχουν οδηγίες ειδικές για τον εκτυπωτή ενσωματωμένες άμεσα στο έγγραφο.


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

  • Χρησιμοποιήστε το FieldIf.EvaluateCondition() για να διαβάσετε το αποτέλεσμα μιας συνθήκης (FieldIfComparisonResult) χωρίς να χρειάζεται να αναλύσετε μόνοι σας τα TrueText/FalseText.
  • FieldCompare και FieldIf μοιράζονται την ίδια μορφή LeftExpression/ComparisonOperator/ RightExpression – ο κώδικας που δημιουργεί ή εξετάζει μια έκφραση σύγκρισης μπορεί να επαναχρησιμοποιηθεί και στους δύο τύπους πεδίων.
  • Θυμηθείτε ότι όλα αυτά είναι Field υποκλάσεις: GetFieldCode(), Update(), Remove(), και Unlink() from Εργασία με Πεδία εφαρμόζεται ακριβώς με τον ίδιο τρόπο εδώ.

Συνηθισμένα Προβλήματα

ΠρόβλημαΑιτίαΔιόρθωση
FieldIf.EvaluateCondition() επιστρέφει ErrorΟι τελεστές ή ο τελεστής της συνθήκης δεν μπορούσαν να αξιολογηθούν όπως γράφτηκεΕλέγξτε το LeftExpression, το ComparisonOperator και το RightExpression για έγκυρες τιμές
Το αποτέλεσμα του FieldDocVariable δεν αντανακλά την αναμενόμενη τιμή μεταβλητήςΤο VariableName δεν ταιριάζει με κάποιο όνομα μεταβλητής που υπάρχει πραγματικά στο έγγραφοΕπιβεβαιώστε το ακριβές όνομα μεταβλητής και ότι υπάρχει πριν την ανάγνωση του Result
Το κείμενο εμφάνισης του FieldGoToButton/FieldMacroButton δεν ταιριάζει με αυτό που εμφανίζει το WordΤο DisplayText διαβάστηκε πριν ενημερωθεί το πεδίο, ή ορίστηκε χωρίς την αντίστοιχη κλήση του Update()Καλέστε το Update() στο πεδίο, ή ξαναδιαβάστε το DisplayText μετά από οποιαδήποτε αλλαγή σε αυτό

FAQ

Πώς μπορώ να διαβάσω το αποτέλεσμα ενός υπό συνθήκη πεδίου IF;

Καλέστε το FieldIf.EvaluateCondition() για το ακατέργαστο FieldIfComparisonResult, ή διαβάστε το TrueText / FalseText για τις δύο κυριολεκτικές εναλλακτικές κειμένου μεταξύ των οποίων εναλλάσσεται το πεδίο.

Ποια είναι η διαφορά μεταξύ του FieldIf και του FieldCompare;

FieldIf (το πεδίο IF) εναλλάσσεται μεταξύ TrueText και FalseText βάσει της συνθήκης του. FieldCompare (το πεδίο COMPARE) μοιράζεται το ίδιο σχήμα σύγκρισης αλλά παράγει αποτέλεσμα τύπου boolean αντί για εναλλακτικό κείμενο.

Πώς μπορώ να διαβάσω το όνομα μιας μεταβλητής εγγράφου από ένα πεδίο DOCVARIABLE;

Διαβάστε FieldDocVariable.VariableName.

Πώς μπορώ να βρω τον προορισμό ενός πεδίου GOTOBUTTON;

Διαβάστε FieldGoToButton.Location; DisplayText παρέχει την ετικέτα που εμφανίζεται για το κουμπί στο έγγραφο.


API Reference Περίληψη

Κλάση / EnumΠεριγραφή
FieldIfIF πεδίο; LeftExpression, ComparisonOperator, RightExpression, TrueText, FalseText, EvaluateCondition()
FieldIfComparisonResultΑποτέλεσμα Enum του FieldIf.EvaluateCondition(): True, False, Error
FieldCompareCOMPARE πεδίο; LeftExpression, ComparisonOperator, RightExpression
FieldDocVariableDOCVARIABLE πεδίο; VariableName
FieldGoToButtonGOTOBUTTON field; Location, DisplayText
FieldMacroButtonMACROBUTTON field; MacroName, DisplayText
FieldPrintPRINT field; PrinterInstructions, PostScriptGroup

Δείτε επίσης

 Ελληνικά