Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
De obicei, un câmp, atunci când este inserat în Microsoft Word, conține deja o valoare actualizată. De exemplu, dacă câmpul este o formulă sau un număr de pagină, acesta va conține o valoare calculată corectă pentru versiunea dată a documentului. Dar dacă aveți o aplicație care generează sau Modifică un document cu câmpuri (de exemplu, combină două documente sau populează cu date), atunci pentru ca documentul să fie util, toate câmpurile ar trebui să fie actualizate în mod ideal.
Un câmp este format din:

Iată o vizualizare a modului în care un câmp este stocat în Aspose.Words folosind exemplul " DocumentExplorer" care poate fi găsit pe Github.

Aspose.Words este o bibliotecă de clase concepută pentru procesarea pe partea de server a documentelor Microsoft Word și acceptă câmpuri în următoarele moduri:
Câmpurile din documentele Microsoft Word sunt complexe. Există peste 50 tipuri de câmpuri (fiecare are nevoie de propria procedură de calcul a rezultatelor), formule și expresii, marcaje și referințe, funcții și diverse comutatoare. Câmpurile pot fi, de asemenea, imbricate. În mod normal, atunci când un document este deschis, rezultatul câmpului (valoarea câmpului) este afișat pentru toate câmpurile din document. Puteți comuta afișarea rezultatelor câmpului sau a codurilor de câmp în Microsoft Word Pentru toate câmpurile apăsând ALT+F9.
| Codul Câmpului | Rezultatul Câmpului |
|---|---|
![]() |
![]() |
Pentru a insera un câmp în Microsoft Word:




Pentru a actualiza un singur câmp în Microsoft Word:
Pentru a actualiza toate câmpurile din Microsoft Word:
Pentru a comuta codurile de câmp ale unui singur câmp în Microsoft Word:
Pentru a comuta codurile de câmp ale tuturor câmpurilor din Microsoft Word:
Pentru a converti un câmp dinamic în text static în Microsoft Word:
Pentru a elimina un câmp din Microsoft Word:
Când un document este încărcat în Aspose.Words, câmpurile documentului sunt încărcate în modelul obiectului document Aspose.Words ca un set de componente separate (noduri). Un singur câmp este încărcat ca o colecție de noduri FieldStart, FieldSeparator și FieldEnd împreună cu conținutul dintre aceste noduri. Dacă un câmp nu are un rezultat de câmp, atunci nu va exista un nod FieldSeparator. Toate aceste noduri sunt întotdeauna găsite în linie (ca copii ai Paragraph sau SmartTag.
Conținutul care alcătuiește codul câmpului este stocat ca Run noduri între FieldStart și FieldSeparator. Rezultatul câmpului este stocat între nodurile FieldSeparator și FieldEnd și poate fi alcătuit din diferite tipuri de conținut. În mod normal, rezultatul câmpului conține doar text format din Run noduri, cu toate acestea este posibil ca nodul FieldEnd să fie localizat într-un paragraf complet diferit și, astfel, rezultatul câmpului să fie format din noduri la nivel de bloc, cum ar fi Table și Paragraph noduri de asemenea.
În Aspose.Words fiecare dintre nodurile FieldXXX derivă din FieldChar. Această clasă oferă o proprietate pentru a verifica tipul de câmp reprezentat de nodul specificat prin proprietatea FieldChar.field_type. De exemplu, FieldType.FIELD_MERGE_FIELD reprezintă un câmp de îmbinare în document.
Există unele câmpuri particulare care există într-un document Word care nu sunt importate în Aspose.Words ca o colecție de noduri FieldXXX. De exemplu, câmpul LINK și câmpul INCLUDEPICTURE sunt importate în Aspose.Words ca obiect Shape. Acest obiect oferă proprietăți pentru a lucra cu datele de imagine stocate în mod normal în aceste câmpuri.
Câmpurile de formular sunt, de asemenea, importate în Aspose.Words ca clasă specială proprie. Clasa FormField reprezintă un câmp de formular într-un document Word și oferă metode suplimentare care sunt specifice unui câmp de formular.
Calculul următoarelor câmpuri este acceptat în versiunea curentă a Aspose.Words:
ADDRESSBLOCKAUTHORCOMPARECREATEDATEDATEDOCPROPERTYDOCVARIABLEGREETINGLINEIFINCLUDETEXTMERGEFIELDMERGERECMERGESEQNEXTNEXTIFNUMPAGESPAGEPAGEREFREFSECTIONSECTIONPAGESSEQSETSTYLEREFTIMETITLETOATOC (including TOT and TOF)Aspose.Words urmează modul în care Microsoft Word procesează câmpurile și, ca rezultat, gestionează corect:
: IF { =OR({ COMPARE { =2.5 +PRODUCT(3,5 ,8.4) } > 4}, { =2/2 }) } = 1 "Credit not acceptable" "Credit acceptable"MERGEFIELD \f"Text after""Field \n\ame with \" and \\\ and \\\*"\bTextBefor\eAspose.Words oferă o implementare foarte serioasă a motorului de formule și suportă următoarele:
=(54+4*(6-77)-(5))+(-6-5)/4/5=ABS(-01.4)+2.645/(5.6^3.5)+776457 \\\# "#,##0"=IF(C>4, 5,ABS(A)*.76) +3.85=00000000 \\\# "$#,##0.00;($#,##0.00)"Următoarele funcții în expresii sunt acceptate: ABS, AND, AVERAGE, COUNT, DEFINED, FALSE, IF, INT, MAX, MIN, MOD, NOT, OR, PRODUCT, ROUND, SIGN, SUM, TRUE.
IF and COMPARE FieldsDoar câteva dintre expresiile IF pe care Aspose.Words le pot calcula cu ușurință ar trebui să vă ofere o idee despre cât de puternică este această caracteristică:
IF 3 > 5.7^4+MAX(4,3) True FalseIF "abcd" > "abc" True FalseIF "?ab*" = "1abdsg" True FalseIF 4 = "2*2" True FalseCOMPARE 3+5/34 < 4.6/3/2DATE and TIME FieldsAspose.Words acceptă toate comutatoarele de formatare a datei și orei disponibile în Microsoft Word, câteva exemple sunt:
DATE @ "d-MMM-yy"DATE @ "d/MM/yyyy h:mm am/pmAspose.Words nu impune nicio limită complexității câmpurilor Mail Merge din documentele dvs. și acceptă câmpurile imbricate IF și formula și poate chiar calcula numele câmpului de îmbinare folosind o formulă.
Câteva exemple de câmpuri Mail Merge pe care Aspose.Words le acceptă:
MERGEFIELD FirstName \\\\\\\\* FirstCap \b "Mr. "IF { MERGEFIELDValue1 } >= {MERGEFIELD Value2 } True FalseMERGEFIELD { IF{MERGEFIELDValue1 } >= {MERGEFIELD Value2 } FirstName"LastName" }NEXTIF { MERGEFIELDValue1 } <= { =IF(-2.45 >= 6*{MERGEFIELD Value2 }, 2, -.45) }Un câmp dintr-un document poate avea comutatoare de formatare care specifică modul în care trebuie formatată valoarea rezultată. Aspose.Words suportă următoarele comutatoare de format:
Când Aspose.Words calculează un rezultat de câmp, adesea trebuie să analizeze un șir într - un număr sau o valoare de dată și, de asemenea, să-l formateze înapoi la un string.By implicit Aspose.Words utilizează cultura firului curent pentru a efectua parsarea și formatarea la calcularea valorilor câmpului în timpul actualizării câmpului și mail merge. Există, de asemenea, opțiuni furnizate sub forma clasei FieldOptions, care permite un control suplimentar asupra culturii utilizate în timpul actualizării câmpului.
Pentru a controla cultura utilizată în timpul calculului câmpului, trebuie doar să utilizați metoda locale.setlocale pentru a seta cultura la alegere înainte de a invoca calculul câmpului. Exemplul de mai jos arată cum să modificați cultura utilizată în câmpurile de formatare în timpul actualizării.
Utilizarea culturii curente pentru formatarea câmpurilor permite unui sistem să controleze cu ușurință și în mod consecvent modul în care toate câmpurile din document sunt formatate în timpul actualizării câmpului.
Pe de altă parte, Microsoft Word formatează fiecare câmp individual bazat pe limba textului găsit în câmp (în special, rulările din Codul câmpului). Uneori, în timpul actualizării câmpului, acesta poate fi comportamentul dorit, de exemplu dacă aveți documente globalizate care conțin conținut format din mai multe limbi diferite și doriți ca fiecare câmp să onoreze localizarea utilizată din text. Aspose.Words acceptă, de asemenea, această funcționalitate.
Clasa Document oferă o proprietate field_options care conține membri care pot fi utilizați pentru a controla modul în care câmpurile sunt actualizate în document. Exemplul de mai jos arată cum să specificați unde este aleasă cultura utilizată pentru formatarea datei în timpul actualizării câmpului și mail merge.
Un câmp care este inserat folosind DocumentBuilder.insert_field returnează un obiect Field. Aceasta este o clasă fa care oferă metode utile pentru a găsi rapid astfel de proprietăți ale unui câmp. Notă Dacă căutați doar numele câmpurilor de îmbinare din document, puteți utiliza în schimb metoda încorporată MailMerge.get_field_names. Exemplul de mai jos arată cum să obțineți numele tuturor câmpurilor de îmbinare dintr-un document.
Exemplul de mai jos arată cum să redenumiți câmpurile de îmbinare într-un document Word.
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.