Lucrul cu secțiuni
Uneori vrei un document care nu are același formatare pe toate paginile. De exemplu, ai putea avea nevoie să modifici formatele de numărare ale paginilor, să ai dimensiuni și orientări diferite ale paginilor sau să ai prima pagină ca o copertă fără numărare. Poți realiza asta cu secțiuni.
Secțiunile sunt noduri de nivel care controlează antetele și subsolurile, orientarea, coloanele, marginile, formatarea numerotării paginilor și altele.
Aspose.Words vă permite să gestionați secțiuni, să împărțiți un document în secțiuni și să faceți modificări de formatare care se aplică doar unei secțiuni specifice. Aspose.Words stochează informații despre formatarea secțiunilor, cum ar fi antetele și picioarele, setările paginii și setările coloanei în întreruperea secțiunii.
Acest articol explică cum să lucrezi cu secțiuni și întreruperi ale secțiunii.
Ce este Secțiunea și Pauza de secțiune
Secțiunile documentelor sunt reprezentate de clasele Section și SectionCollection. Obiectele de secțiune sunt copii imediate ale nodului Document și pot fi accesate prin proprietatea Sections. Puteţi gestiona acele noduri folosind anumite metode, cum ar fi Remove, Add, IndexOf şi altele.
Break-ul secțiunii este o opțiune care împarte paginile de document în secțiuni cu dispuneri personalizabile.
Tipuri de o Secțiune de Pauză
Aspose.Words vă permite să despărțiți și să formatați documente folosind diferite întreruperi de secțiune din enumerarea BreakType:
- SectionBreakContinuous
- SectionBreakNewColumn
- SectionBreakNewPage *SectionBreakEvenPage *SectionBreakOddPage
De asemenea puteți folosi enumerarea SectionStart pentru a alege un tip de întrerupere care se aplică doar pentru prima secțiune, cum ar fi NewColumn,NewPage,EvenPage și OddPage.
Gestionează o secțiune
Întrucât secțiunea este un nod compus obișnuit, întreaga manipulare de noduri API poate fi folosită pentru a manipula secțiunile: pentru a adăuga, elimina și alte operații pe secțiuni. Poţi citi mai multe despre noduri în articolul Aspose.Words Document Object Model (DOM).
Pe de altă parte, poți folosi și DocumentBuilder
API pentru a lucra cu secțiuni. În acest articol ne vom concentra pe această modalitate specifică de a lucra cu secțiuni.
Introduce sau elimină o întrerupere a secțiunii
Aspose.Words vă permite să introduceți o întrerupere de secțiune în text folosind metoda " InsertBreak.
Exemplul de cod următor arată cum să inserați o întrerupere a secțiunii într-un document:
Folosește metoda Remove pentru a șterge o întrerupere de secțiune. Dacă nu trebuie să eliminați o întrerupere de secțiune specifică și în schimb ștergeți conținutul acelei secțiuni, puteți utiliza metoda ClearContent.
Exemplul următor de cod arată cum să se elimine întreruperi ale secțiunilor:
Mută o secțiune
Dacă vrei să muti un secţion dintr-o poziţie în alta din documentul tău, trebuie să obţii indicele acelei secţiuni. Aspose.Words îţi permite să obţii poziţia unui secţion dintr-un SectionCollection folosind proprietatea Item. Puteți utiliza proprietatea Sections pentru a obține toate secțiunile din documentul dvs. Dar dacă vrei să obții doar prima secțiune, poți folosi proprietatea FirstSection.
Exemplul de cod următor arată cum se poate accesa prima secțiune și iterați prin copiii unui nod compus:
Specificați o Dispoziție a Secțiunii
Uneori vrei ca documentul tău să arate mai bine folosind aranjamente creativă pentru diferite secțiuni de documente. Dacă doriți să specificați tipul grilei secțiunii curente, puteți alege un mod de aspect al secțiunii utilizând enumerarea SectionLayoutMode:"
- Implicit
- Grilă
- LineGrid
- SnapToChars
Exemplul de cod următor arată cum să limiteze numărul de linii pe care fiecare pagină poate să le aibă:
Editează o secțiune
Când adaugi o nouă secțiune în documentul tău, nu va exista nici un corp sau paragrafe pe care să le poți edita. Aspose.Words îți permite să garanțiezi că o secțiune conține un corp cu cel puțin un paragraf folosind metoda EnsureMinimum – va adăuga automat un nod Body (sau HeaderFooter) în document și apoi va adăuga un Paragraf la acesta.
Exemplul următor de cod arată cum să pregătești un nod de secțiune nou folosind EnsureMinimum:
Adăugare sau Încorporare conținut
Dacă vrei să desenezi o formă sau să adaugi text sau imagine la începutul/sfârșitul unei secțiuni poți folosi metodele AppendContent și PrependContent ale clasei Section.
Exemplul de cod următor arată cum se adaugă conținut unei secțiuni existente:
Clonați o secțiune
Aspose.Words vă permite să duplicați o secțiune prin crearea unei copii complete utilizând metoda " Clone “.
Următorul exemplu de cod arată cum să clonăm prima secțiune în documentul tău:
Copiere secțiuni între documente
În unele cazuri, ai putea avea documente mari cu multe secţiuni şi vrei să copiezi conţinutul unei secţiuni dintr-un document în altul.
Aspose.Words vă permite să copiați secțiuni între documente folosind metoda ImportNode.
Exemplul următor de cod arată cum să copiați secțiuni între documente:
Lucrează cu antetul secțiunii și subsolul
Regulile de bază pentru afișarea unui antet sau subsol pentru fiecare secțiune sunt destul de simple:
- Dacă secțiunea nu are propriile anteturi/subiecte de un anumit tip, atunci este luată din secțiunea anterioară.
- Tipul de antet/ subsol afișat pe pagină este controlat de setările secțiunii “Prima pagină diferită” și “Pagini diferite pentru pagini impare și pare” - dacă sunt dezactivate, atunci titlurile secțiunii sunt ignorate.
Exemplul de cod următor arată cum să creezi 2 secțiuni cu anteturi diferite:
Dacă vrei să elimini textul din antet și subsol fără a elimina HeaderFooter obiect în documentul tău, poți folosi metoda ClearHeadersFooters. În plus, puteți folosi metoda DeleteHeaderFooterShapes pentru a elimina toate formele din antetele și subsolurile din documentul dumneavoastră.
Exemplul de cod următor arată cum să goliți conținutul tuturor anteturilor și subsolului dintr-o secțiune:
Exemplul de cod următor arată cum să elimini toate formele din toate antetele și subsolurile dintr-o secțiune:
Personalizați proprietățile paginii într-o secțiune
Înainte de imprimarea unei pagini sau a unui document, s-ar putea să vrei să particularizezi şi să modifici dimensiunea şi dispunerea unei singure pagini sau întregii documente. Cu setările de pagină puteți schimba setările pentru pagina documentului, cum ar fi marginile, orientarea și dimensiunea pentru imprimarea diferitelor pagini inițiale sau a paginilor impare.
Aspose.Words vă permite să particularizați proprietățile paginii și secțiunii folosind clasa PageSetup.
Exemplul următor de cod arată cum să setăm proprietăți precum mărimea paginii și orientarea pentru secțiunea curentă:
Exemplul de cod de mai jos arată cum să modificați proprietățile paginii în toate secțiunile: