114
Capitolul 2 INTRODUCERE ÎN LIMBAJUL LaTeX 2.1 INTRODUCERE O lucrare este predată editorului care, după verificarea semantică de către un grup de recenzori, va accepta lucrarea. O lucrare acceptată pentru publicare va trebui aranjată în pagină, operaţie făcută de către tehnoredactor, care hotărăşte dimensiunile paginii, fonturile, aspectul general etc. Aceste informaţii formează layout-ul lucrării ce va trebui publicată. Zeţarul culege textul, urmând acest model şi scoate o primă copie, ce va fi supusă corecturilor gramaticale. După corectură, lucrarea se tipăreşte în numărul dorit de exemplare. Dacă recenzia este făcută de oameni, celelalte operaţii pot fi efectuate cu ajutorul calculatorului, pe baza unor reguli simple şi fixe. Pentru aceasta, este necesară utilizarea unui procesor de texte, iar din motive legate de răspândire şi disponibilitate, am ales LaTeX. În scenariul de mai sus, LaTeX este tehnoredactorul şi TeX este zeţarul. TeX este un program elaborat de Donald E. Knuth [Knuth 1984], care se foloseşte la culegerea şi tipărirea de texte şi formule matematice. LaTeX (se pronuntă la-tehi) este construit de Leslie Lamport [Lamport 1994], are la bază TeX şi permite definirea de layout-uri pentru cărţi, articole, rapoarte şi scrisori. LaTeX este un pachet de macrodefiniţii pentru TeX, iar TeX este un sistem de prelucrare a textelor. Nici LaTeX şi nici TeX nu sunt editoare de texte. În general, layout-ul paginilor realizate în MS Word (i.e. poziţia figurilor, a tabelelor, etc.) poate să varieze dramatic, atunci când textul este portat la un calculator ce are instalat alt driver de imprimantă. Dependenţa de

Capitol Latex

Embed Size (px)

DESCRIPTION

latex

Citation preview

  • Capitolul 2 INTRODUCERE N LIMBAJUL LaTeX

    2.1 INTRODUCERE

    O lucrare este predat editorului care, dup verificarea semantic de ctre un grup de recenzori, va accepta lucrarea. O lucrare acceptat pentru publicare va trebui aranjat n pagin, operaie fcut de ctre tehnoredactor, care hotrte dimensiunile paginii, fonturile, aspectul general etc. Aceste informaii formeaz layout-ul lucrrii ce va trebui publicat. Zearul culege textul, urmnd acest model i scoate o prim copie, ce va fi supus corecturilor gramaticale. Dup corectur, lucrarea se tiprete n numrul dorit de exemplare.

    Dac recenzia este fcut de oameni, celelalte operaii pot fi efectuate cu ajutorul calculatorului, pe baza unor reguli simple i fixe. Pentru aceasta, este necesar utilizarea unui procesor de texte, iar din motive legate de rspndire i disponibilitate, am ales LaTeX.

    n scenariul de mai sus, LaTeX este tehnoredactorul i TeX este zearul. TeX este un program elaborat de Donald E. Knuth [Knuth 1984], care se folosete la culegerea i tiprirea de texte i formule matematice. LaTeX (se pronunt la-tehi) este construit de Leslie Lamport [Lamport 1994], are la baz TeX i permite definirea de layout-uri pentru cri, articole, rapoarte i scrisori.

    LaTeX este un pachet de macrodefiniii pentru TeX, iar TeX este un sistem de prelucrare a textelor. Nici LaTeX i nici TeX nu sunt editoare de texte.

    n general, layout-ul paginilor realizate n MS Word (i.e. poziia figurilor, a tabelelor, etc.) poate s varieze dramatic, atunci cnd textul este portat la un calculator ce are instalat alt driver de imprimant. Dependena de

  • 12 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    imprimant este neplcut i este necesar un procesor independent. Acest fenomen nu apare n cazul procesrii textelor n LaTeX i constituie, printre altele, unul din principalele motive ale utilizrii sale, pe scar din ce n ce mai larg, de ctre editorii i autorii de texte. Pe de alt parte, existena LaTeX, pe diferite platforme, face din el un procesor de texte cu larg utilizare n mediile tiinifice.

    2.1.1 Un exemplu simplu Cnd tehnoredactorul lucreaz la layout, el recunoate, n text, inteniile

    autorului privind titlul de capitol, titlul de paragraf, citat, list etc. Pentru ca LaTeX s recunoasc aceste detalii, este necesar ca autorul s-i furnizeze informaii suplimentare despre textul scris i forma de prezentare a acestuia.

    Un program surs n LaTeX se poate edita cu orice editor ASCII, de exemplu n Notepad. Comenzile LaTeX ncep cu caracterul \ i nu vor aprea n documentul final. De la caracterul % pn la finalul unei linii LaTeX, toat informaia este ignorat, fiind similar cu un comentariu n scrierea unui program.

    Structura standard a unui document este, pe scurt, urmtoarea: Preambulul - ncepe cu o comand \documentclass; el poate

    conine comenzi \usepackage, declaraii globale i definiii de cadre i comenzi;

    \begin{document} textul documentului \end{document} LaTeX nu este un sistem What You See Is What You Get, adic autorul

    nu vede pe monitor efectul comenzilor asupra documentului. n mod normal, autorul poate ntrerupe editarea n orice moment, pentru a vizualiza fiierul rezultat dup procesarea n LaTeX.

    O caracteristic a LaTeX este aceea c autorul este lsat s se concentreze, n primul rnd, asupra organizrii logice a lucrrii, fr a consuma efort pentru formatarea textului.

    n organizarea materialului unei cri este necesar respectarea ctorva principii, pentru a asigura o bun lizibilitate a textului, comoditate la citirea unei pagini precum i organizarea logic a documentului. De multe ori, se dorete ca anumite pri ale textului s ias n eviden, dei nu este indiferent modul n care acest lucru este realizat. LaTeX permite specificarea acelor pri

  • 2.1. INTRODUCERE 13 ____________________________________________________________________________

    i el va alege forma portrivit pentru tiprire. Muli autori utilizeaz fonturi multiple, fapt ce duce la o ngreunare a citirii textului. Aceste aspecte sunt importante atunci cnd se proiecteaz un layout. n general, LaTeX permite modificarea unui layout de o manier destul de greoaie, ns integreaz o serie de concepte ce au rezultat n urma experienei privind tehnoredactarea. Aceste concepte respect conveniile, valabile n S.U.A., de realizare a crilor, articolelor i revistelor. Adaptarea la conveniile europene de tehnoredactare se poate realiza relativ uor, prin comenzi speciale.

    Trebuie subliniat faptul c orice text (sub form de carte, articol, raport etc.) este scris pentru a fi citit i pentru ca impactul coninutului asupra cititorului s fie maxim. Din acest motiv, pe baza unei analize riguroase a situaiilor specifice privind coninutul unui text, n LaTeX documentele sunt mprite n clase sau categorii, iar lizibilitatea este obiectivul principal.

    n fig. 2.1 este descris un exemplu simplu de fiier LaTeX minimal, n care se evideniaz principalele seciuni i cteva dintre comenzile LaTeX de baz. Exemplul 2.1 \documentclass{article} % clasa articol %Titlul cuprinsului este implicit "Contents" dar %poate fi schimbat dupa dorinta \renewcommand{\contentsname}{Cuprins} %Se specifica titlul, autorul si data \title{Gestiunea documentelor} \author{Ion Popescu} \date{17.03.2000} \begin{document} %inceputul documentului \maketitle %tiparire titlu, autor, data \tableofcontents %tiparire cuprins \section{Introducere} %sectiune paragraf Paragraf specificand necesitatea procesorului LaTeX. Textul este formatat automat.

    Trecerea la un nou alineat se face prin inserarea unei linii goale. \section{Titlul capitolului 1} %inceputul altui paragraf Acesta este alt paragraf. Toate paragrafele se numeroteaza automat. \end{document} %sfarsitul articolului

    Fig. 2.1 Un exemplu simplu de articol scris n LaTeX. Rezultatul procesrii este redat n fig. 2.2.

  • 14 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    Fig. 2.2 Rezultatul procesrii fiierului surs din fig. 2.1 (setup-ul paginii n LaTeX este diferit).

  • 2.1. INTRODUCERE 15 ____________________________________________________________________________

    2.1.2 Realizarea documentelor n LaTeX TeX i LaTeX sunt produse shareware, adic au preuri sczute sau

    sunt gratuite, dac nu se folosesc n scopuri comerciale. Ele au o larg rspndire i au implementri sub toate sistemele de operare (Unix, OS/2, Windows etc.), asigurnd portabilitatea documentelor realizate. Un produs de acest tip este nsoit de o bogat colecie de fonturi, utilitare i fiiere ce conin documentaia aferent.

    Folosind un editor de texte obinuit, de exemplu Norton Editor sub DOS sau Notepad sub Windows, se construiete un fiier cu extensia .tex. Aceast extensie nu este obligatorie, dar prezena sa permite un mod de lucru mai comod i organizat. De exemplu, fiierul din fig.2.1 este salvat cu numele ex1.tex. Pentru procesare se va lansa LaTeX, avnd ca parametru numele fiierului cu extensia .tex. Dac se folosete versiunea LaTeX pentru Win95 (a se vedea URL-ul www.stat.uiowa.edu/resources/help/win95/latex.html), atunci comanda este:

    >c:/texmf/miktex/bin/latex ex1

    Ca urmare, pe ecran apar mesajele:

    This is TeX,Version 3.14159 (MiKTeX 1.20) (ex1.tex LaTeX2e patch level 1 Babel loaded. (C:\texmf\tex\latex\base\article.cls Document Class: article 1999/01/07 v1.4a Standard LaTeX document class Output written on ex1.dvi (1 page, 944 bytes) Transcript written on ex1.log.

    Zona marcat cu caracterele semnific informaii dependente de versiunea de instalare. n funcie de coninut, un fiier .tex parcurge mai multe etape. Dup procesarea fiierului ex1.tex, informaia se pstreaz n mai multe fiiere, care au urmtoarele denumiri i semnificaii: ex1.aux - conine informaii auxiliare despre entitile logice din fiierul

    surs i despre etichete (\label i \bibitem). Fiierul este utilizat de LaTeX la a doua procesare, pentru a rezolva referine ncruciate (\cite, \ref).

  • 16 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    ex1.toc - conine informaii necesare alctuirii cuprinsului i este generat doar dac n fiierul surs apare comanda \tableofcontents. Cuprinsul apare doar la a doua procesare a fiierului.

    ex1.log - conine raportul despre procesarea fiierului cu extensia tex, eventualele erori de procesare i informaii statistice despre resursele hardware utilizate.

    ex1.dvi - fiier de ieire ce conine rezultatele procesrii ntr-un cod independent de perifericul de tiprire (DeVice Independent). Observaie. n funcie de clasa sau categoria din care face parte documentul, mai apar

    i alte fiiere auxiliare: *.lof creat dac apare comanda \listoffigures (List of Figures), pentru generarea

    automat a listei figurilor; *.lot creat dac apare comanda \listoftable (List of Tables), pentru generarea

    automat a listei tabelelor; *.idx creat dac apare comanda \makeindex n combinaie cu \index i va conine

    comenzile \indexentry aferente; *.gb creat dac apare comanda \makeofglossary.

    Imaginea documentului poate fi vizualizat sub DOS cu ajutorul

    comenzii v numefiier. Sub X WINDOWS, vizualizarea se poate realiza uitiliznd comanda xdvi numefiier. Tiprirea se va realiza cu ajutorul unui utilitar ce poate accesa imprimanta. Pentru DOS, tiprirea la o imprimant cu ace implic utilizarea utilitarului dvidot, cu o serie de parametri. De aceea, n general, pentru fiecare tip de imprimant exist o comand distinct. De exemplu pentru EPSON FX80 comanda este prtfx numefiier, iar pentru o imprimant HEWLETT PACKARD LJ comanda este dvihplj numefiier. Pentru Windows95, vizualizarea i tiprirea se realizeaz cu utilitarul Yap. Sub sistemul de operare Unix se utilizeaz o procedur asemntoare. Cnd se dispune de o imprimant PostScript, utilitarul dvi2ps transform fiierul *.dvi ntr-un fiier *.ps (i.e. PostScript).

    Observaie. La referine ncruciate sau la generarea cuprinsului, a listei de figuri, a indexului, este necesar procesarea de mai multe ori a sursei *.tex, pentru c este nevoie de fiiere care la prima procesare nu au fost create nc.

  • 2.2. NOIUNI FUNDAMENTALE PRIVIND LaTeX 17 ___________________________________________________________________________

    2.2 NOIUNI FUNDAMENTALE PRIVIND LaTeX Putem privi LaTeX ca un limbaj de programare n care instruciunile au

    anumite efecte. O serie de caractere au semnificaie special:

    $ & % # _ { } ~ ^ \ | < >

    Cu unele excepii, aceste caractere nu pot fi folosite n textul surs. Unele dintre ele se pot utiliza n text cu ajutorul secvenelor de control listate mai jos, pe coloana din dreapta:

    $ & % # _ { } |$ |& \% \# \_ \{ \}

    De multe ori, caracterul blank (spaiu) are acelai efect dac apare o singur dat sau ca un ir de blank-uri.

    Caracterul newline (linie nou) este echivalent cu blank, atunci cnd apare o singur dat. Mai mult de dou astfel de caractere succesive semnific terminarea unui paragraf i nceputul unuia nou.

    2.2.1 Preliminarii privind secvene de control i fonturi Secvenele de control sunt iruri de caractere ce reprezint comenzi

    LaTeX. De exemplu, trecerea la un alt paragraf se face cu secvena de control \par.

    O secven de control, i.e. o comand n LaTeX, este compus fie dintr-un caracter backslash (adic \) urmat de o succesiune de litere, fie dintr-un caracter backslash urmat de un caracter diferit de liter. De exemplu, \today are ca efect scrierea datei mainii, iar \% produce caracterul %. Comenzile din prima categorie sunt valabile doar pentru primul ir pn la caracterul blank.

    Orice comand poate avea argumente obligatorii i/sau opionale. Un argument obligatoriu este cuprins ntre acolade { i }, iar unul opional ntre paranteze drepte [ i ].

    O comand \LaTeX ignor spaiile ce o urmeaz.

  • 18 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    Exemplul 2.2 Execuia fiierului surs urmtor

    \documentclass{report} \begin{document} \LaTeX este un program de tehnoredactare \end{document} are drept rezultat textul

    Dup cum se observ, era necesar un blank dup cuvntul LaTeX, iar

    un caracter backslash plasat la sfritul comenzii rezolv problema. Exemplul 2.3 \LaTeX\ este un program de tehnoredactare are ca rezultat textul

    Observaie. n cele ce urmeaz, n cadrul exemplelor prezentate, dac acestea apar pe

    dou coloane, fiierul surs *.tex apare n dreapta, iar textul rezultat este inserat pe coloana din stnga. Dac ele sunt prezentate grupate orizontal, atunci fiierul *.tex apare primul. n primele exemple a fost folosit mai ales clasa report dar, dac nu se specific altfel, comenzile din fiierul *.tex respectiv sunt valabile pentru toate clasele de documente.

    Caracterul rnd nou este echivalent cu spaiu i, ca urmare, paragrafele

    se vor separa printr-un rnd gol sau utiliznd comanda \par. Exemplul 2.4

    \documentclass{report} \begin{document} Paragraf1. Tot el.

    Paragraf2. \par Paragraf3. \end{document}

    LaTeX dispune de un set bogat de fonturi. Scrierea textului se face

    implicit cu un font numit Roman, ns se pot selecta alte fonturi cu o secven

  • 2.2. NOIUNI FUNDAMENTALE PRIVIND LaTeX 19 ___________________________________________________________________________

    de control \tt pentru fontul typewriter sau \bf pentru bold face (subseciunea 2.6.1).

    Dac numai cteva cuvinte se tipresc cu alt font, atunci nu este necesar schimbarea fontului activ, ci se poate folosi comanda \bf. Exemplul 2.5

    \documentclass{report} \begin{document} font curent oarecare {\bf doresc bold} revin la fontul curent. \end{document}

    O pereche de paranteze acolade formeaz un grup, deci o comand are

    efect doar asupra acelui grup. Pentru transmiterea parametrilor la secvenele de control cu parametri, se vor utiliza tot paranteze acolade. Prin parametru se nelege orice ir de caractere ntre acolade sau un caracter, dac acoladele lipsesc. De exemplu, comanda

    \haspace {4cm} indic inserarea unui spaiu orizontal de 4 cm.

    Observaie. Acoladele ce delimiteaz un parametru nu pot forma un grup. Ca urmare, dac se dorete refacerea valorii unei variabile LaTeX, dup modificarea sa prin executarea unei comenzi corespunztoare, atunci chiar comanda trebuie inclus n grup.

    2.2.2 Faciliti matematice Formulele matematice sunt culese diferit fa de textele obinuite. n

    LaTeX se pot identifica dou moduri de lucru: modul text n care se culege textul; modul matematic n care se culeg formulele. Exist comenzi ce specific trecerea de la un mod la altul i comenzi ce

    sunt valabile doar ntr-un singur mod. Intrarea n modul matematic se poate realiza n mai multe variante. n

    cadrul paragrafului, formulele se delimiteaz prin dou caractere $ .

  • 20 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    Exemplul 2.6

    \documentclass{report} \begin{document} Pentru $x=y$ rezulta ... \end(document)

    n mod matematic, caracterele _ i ^ indic indici inferiori, respectiv

    superiori, iar o formul pus pe rnduri separate se delimiteaz cu cte o pereche de secvene de caractere $$. Exemplul 2.7

    \documentclass{report} \begin{document} Pentru $x_1,x_2,...,x_{n+1}$ rezulta ca $$x_i=x_{i-1}+x_{i-2}$$. \end(document)

    Pentru caractere speciale se vor utiliza secvenele de control \alpha,

    \beta sau \frac cu parametrii afereni. Exemplul 2.8

    \documentclass{report} \begin{document} Scriem:$$\frac12+\alpha=\frac{2\alpha+1}2$$ \end(document)

    n formule pot s apar operatori, cum ar fi: \sum pentru , \prod

    pentru sau \int pentru . Indicii operaiilor sunt poziionai diferit la formulele plasate n text, fa de cele separate. Exemplul 2.9

    \documentclass{report} \begin{document} ...$\sum_{i=1}^ny_i=0$ $$\sum_{i=1}^ny_i=0$$... \end(document)

  • 2.2. NOIUNI FUNDAMENTALE PRIVIND LaTeX 21 ___________________________________________________________________________

    Exist operatori la care nu se face aceast difereniere (de exemplu ), ns limitele pot s apar sau nu, prin plasarea comenzilor \limits, respectiv \nolimits.

    Secvenele de control \left i \right se pot aplica asupra parantezelor, pentru ajustarea automat a dimensiunii acestora n funcie de coninut. Ele apar n perechi. Exemplul 2.10

    \documentclass{report} \begin{document} $x+2\left(\frac{ \sinx}x+ \cos\left(x+1\right)\right)=0$ \end(document)

    2.2.3 Adaptarea la diacritice i desprirea n silabe Diacriticele se pot obine, n LaTeX, prin folosirea accentelor, ca

    opiune oferit de o serie de secvene de control ce accept orice tip de caracter, avnd la baz alfabetul latin. Exemplul 2.11

    \documentclass{report} \begin{document} \^A, \^a, \u A, \u a, \^I, \^\i, \c S, \c s, \c T, \c t. \par Aten\c tie: NU \^i. Accentul se aplic\u a semnului\par \i (i f\u ar\u a punct). \end(document)

    O alt variant ce uureaz editarea este cea de creare a unui fiier cu

    extensia .sty, cu rolul de a defini diacriticele [Pusztai 1994]. Acest fiier va fi creat n funcie de limba n care se editeaz i va fi nglobat n sursa LaTeX.

    Pentru desprirea n silabe, se poate utiliza un set de abloane ce sunt alese la iniializarea LaTeX. Pentru a specifica o anumit limb, se va utiliza comanda \language cu un parametru numeric. Noi reguli pot fi introduse

  • 22 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    prin comenzile \- , care are efect local, sau \hyphenation, cu efect global. De exemplu, comanda \hyphenation{ma-ma}are ca efect desprirea n silabe a cuvntului mama, oriunde este ntlnit n text. Scrierea cuvntului concesie n forma con\-ce\-si\-e are ca efect desprirea n silabe a sa doar n locul indicat.

    Detalii suplimentare privind comenzile de generare a accentelor sunt prezentate n subseciunea 2.6.2.

    2.2.4 Titluri redactate n diverse limbi Anumite comenzi LaTeX produc un text predefinit, reprezentnd, n

    general, titlul unei uniti secionale. De exemplu, comanda \chaptername are ca efect scrierea titlului capitolului, precedat de Chapter. Aceast scriere trebuie modificat, dac textul este redactat n alte limbi. Pentru aceasta, n preambulul fiierului surs *.tex se va folosi comanda

    \renewcommand{\chaptername}{nume_capitol} unde nume_capitol este numele capitolului n limba respectiv (a se vedea i seciunea 2.5). n mod obinuit, secvena de control \chaptername este o comand LaTeX care este apelat de \chapter i are ca efect implicit tiprirea irului de caractere Chapter.

    Comenzile ale cror definiii trebuie modificate pentru adaptarea la limba n care este redactat textul lucrrii sunt urmtoarele (cu precizarea, n paranteze i ntre apostroafe, a textului generat implicit): \partname numele dat unei pri, n clasele de documente book i

    report; \chaptername - numele dat capitolului, n clasele de documente book i

    report (Chapter); \bibname - numele dat bibliografiei, n clasele de documente book i

    report (Bibliography); \refname numele dat bibliografiei n clasa de documente article

    (References); \appendixname - numele dat anexelor (Appendix); \abstractname numele dat rezumatului (Abstract); \indexname numele dat indexului (Index); \contentsname - numele dat cuprinsului (Contents);

  • 2.2. NOIUNI FUNDAMENTALE PRIVIND LaTeX 23 ___________________________________________________________________________

    \figurename - numele dat figurilor (Figure); \listfigurename numele dat listei figurilor (List of Figures); \tablename numele dat tabelelor (Table); \listtablename numele dat listei tabelelor (List of Tables).

    n continuare se prezint sintaxa ctorva comenzi \renewcommand, utile pentru redactarea unui text n limba romn. \renewcommand{\contentsname}{Cuprins} \renewcommand{\listfigurename}{Lista figurilor} \renewcommand{\listtablename}{Lista tabelelor} \renewcommand{\figurename}{Figura} \renewcommand{\tablename}{Tabelul} \renewcommand{\chaptername}{Capitolul} \renewcommand{\bibname}{Bibliografie} \renewcommand{\refname}{Bibliografie} \renewcommand{\appendixname}{Anexa}

    2.2.5 Organizarea fiierului de intrare

    2.2.5.1 Categorii de documente

    Un fiier LaTeX ncepe cu o comand \documentclass, avnd sintaxa:

    \documentclass[options]{class} n care options este lista de una sau mai multe opiuni, separate prin virgul i fr spaii suplimentare, iar class este categoria sau clasa documentului.

    Printre categoriile de documente valabile n LaTeX se numr: book report article letter slides.

    Clasa book specific organizarea documentului sub form de carte, avnd urmtoarele caracteristici:

  • 24 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    - culegerea difereniat a textului pe pagini pare i impare; - organizarea pe pri, seciuni i subseciuni; - dac nu se specific prin comanda \pagestyle, antetul

    (header-ul) paginii pare conine titlul capitolului curent, iar cel al paginii impare conine titlul seciunii curente i fiecare capitol ncepe pe o pagin impar;

    Clasa report permite editarea documentului sub form de raport, asemntoare cu book, dar culegerea se face nedifereniat pentru pagini pare i impare, iar capitolele pot ncepe pe pagini att pare ct i impare.

    Clasa article nseamn forma de articol, fr pri i capitole. Antetele sunt implicit goale i culegerea este nedifereniat de paritatea paginii.

    Clasa letter permite redactarea unei scrisori oficiale. Clasa slides este recomandat pentru pregtirea documentelor ce vor

    fi prezentate pe folii expuse la retroproiector. Toate clasele standard de documente, cu excepia slides, accept

    urmtoarele opiuni pentru selectarea mrimii literei tiprite (10 pt implicit): 10pt, 11pt, 12pt.

    Toate clasele de documente accept urmtoarele opiuni pentru setarea mrimii paginii (implicit letter):

    a4paper, a5paper, b5paper, letterpaper, legalpaper, executivepaper.

    Alte opiuni mixte sunt: - landscape selecteaz formatul lanscape, dar implicit este portrait; - titlepage, notitlepage specific dac trebuie s apar o pagin

    separat de titlu; - leqno numrul ecuaiei este plasat la stnga, dar implicit el este la

    dreapta; - fleqn nseamn FlushLeft EquatioN i determin alinierea la stnga a

    ecuaiei, care implicit este centrat; - german pune la dispoziie comenzi utile pentru realizarea textelor n

    limba german; - makeidx este util la documentele n care se dorete obinerea

    (semi)automat a unui index. Urmtoarele opiuni nu sunt valabile pentru clasa slides:

  • 2.2. NOIUNI FUNDAMENTALE PRIVIND LaTeX 25 ___________________________________________________________________________

    - oneside, twoside selecteaz afiarea pe o fa sau pe ambele ale unei coli. Valoarea implicit este oneside, cu excepia clasei book.

    - openright, openany determin dac un capitol ncepe pe pagina din dreapta. Valoarea implicit este openright, pentru clasa book.

    - onecolumn, twocolumn permite tiprirea pe una sau, respectiv, dou coloane. Valoarea implicit este onecolumn.

    2.2.5.2 Principalele comenzi utile la crearea unui document n continuare, sunt descrise principalele comenzi utile la crearea unui

    document.

    \begin{document} este comanda de nceput de document. ntre \documentclass i \begin{document} nu se poate insera text, dar pot aprea alte comenzi LaTeX, care nu au ca efect generarea de text. Aceast zon se numete preambul (seciunea 2.1). Aici poate aprea comanda \title, ce stabilete titlul, dar nu i comanda \maketitle, ce pune titlul n pagin.

    \end{document} marcheaz sfritul documentului i tot ce urmeaz dup aceast comand este ignorat la procesare.

    \title specific titlul documentului. Dac acesta nu ncape ntr-un singur rnd, atunci LaTeX nu mparte automat titlul pe rnduri, lsnd aceasta la latitudinea autorului, prin comanda \\ acolo unde se trece la rnd nou. Acest lucru prentmpin desprirea unui titlu n rnduri, ceea ce ar putea s altereze semnificaia dat de autor. Sintaxa comenzii este \title{text} i, pentru a fi operaional, ea trebuie s apar nainte de comanda \maketitle.

    \author permite specificarea numelui autorului. Ca i la \title, trecerea pe mai multe rnduri trebuie marcat cu aceeai comand \\. Dac sunt mai muli autori, separarea numelor lor pe rnduri se face prin comanda \and.

    \date seteaz data producerii documentului, iar dac nu exist, atunci la \maketitle se va lua automat data sistemului.

  • 26 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    \maketitle pune n pagin titlul, autorul i data realizrii documentului. Comanda apare prima dup \begin{document} i efectul su este diferit n funcie de clasa documentului: - pentru book i report, titlul, autorul i data apar pe o pagin

    separat, numerotat cu 0; - pentru article, informaiile apar la nceput de pagin, urmate de

    text (a se vedea i exemplul 2.1, subseciunea 2.1.1). Notele de subsol se pot insera ntr-unul din urmtoarele moduri: 1) se folosete doar comanda \footnote ; 2) se utilizeaz comenzile \footnotemark i \footnotetext. Comanda \footnote avnd sintaxa: \footnote[number]{text}

    plaseaz textul text, numerotat, la subsolul paginii. Argumentul opional number este necesar dac se dorete schimbarea numrului implicit al notei. Aceast comand poate fi folosit doar n afara modulului paragraph, i.e. nu poate fi folosit n secionarea unor comenzi precum \chapter, n figuri, n tabele sau ntr-un mediu tabular.

    Comanda \footnotemark pune numrul notei de subsol n text. Ea poate fi utilizat n interiorul modului paragraph, iar textul notei de subsol este specificat prin comanda \footnotetext, avnd sintaxa

    \footnotetext[number]{text} \footnotetext poate s apar, oriunde, dup comanda

    \footnotemark, n afara modului paragraph. Argumentul opional number este utilizat cnd se dorete schimbarea numrului implicit al notei. Se pot produce mai multe marcaje consecutive ale unei note prin comanda

    \footnotemark[\value{footnote}] dup prima comand \footnote.

    Comanda

    \thanks{text} are ca efect o not de subsol ataat titlului, cu un simbol distinct de cele generate prin comanda \footnote.

  • 2.2. NOIUNI FUNDAMENTALE PRIVIND LaTeX 27 ___________________________________________________________________________

    Exemplul 2.12

    \documentclass[11pt]{article} \title{Un titlu\\lung} \author{Ionescu\footnote {adresa Ionescu}\\Popescu} \date{1.11.1999} \begin{document} \maketitle .....................

    ........

    Textul articolului... \end{document}

    2.2.5.3 Secionarea unui document n uniti O lucrare se poate mpri n pri, capitole, seciuni, subseciuni i

    subsubseciuni, iar apoi n paragrafe i subparagrafe. Pentru manevrarea i aranjarea n pagin a acestora, LaTeX permite utilizarea unor comenzi de secionare, a cror list este prezentat n continuare:

    \part (doar pentru clasele report i book) \chapter (doar pentru clasele report i book) \section \subsection \subsubsection \paragraph \subparagraph

  • 28 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    Toate comenzile de secionare au aceeai form general. De exemplu, pentru capitol, forma comenzii este:

    \chapter[titlu_scurt]{title} n afar de locul unde se secioneaz textul documentului, argumentul

    title al comenzii poate s apar n dou alte locuri, i anume: (1) n cuprins i (2) n antetul (header-ul) paginii curente. Dac nu se dorete ca title s apar n text la fel ca n poziiile specificate la (1) i (2), atunci se seteaz argumentul titlu_scurt. Ca urmare, parametrul title va fi afiat n text, iar parametrul titlu_scurt este utilizat pentru cuprins i antet, unde poate avea semnificaia unui titlu scurt.

    Comenzile de secionare suport i forma cu * la sfrit. De exemplu: \chapter*{title}

    care are ca rezultat tiprirea argumentului title, nenumerotat i neinclus n cuprins. La clasele book i report, seciunea se numeroteaz cu dou cifre i.e. capitol.seciune, iar la clasa article numerotarea conine doar o cifr. De exemplu, n clasa article, 4.7 nseamn a 7-a subseciune a Seciunii 4, iar n clasa report acceai subseciune se poate numerota 5.4.1, unde 5 este numrul capitolului. n felul acesta, un document article poate fi inclus, ca un capitol, ntr-un document report.

    Comanda \appendix

    permite schimbarea modului de numerotare a anexelor (de exemplu A.1, A.1.1) i folosete aceleai comenzi de secionare ca i documentul principal. Comanda \appendix nu genereaz text. n fiierul *.tex, o posibil secven de instruciuni este urmtoarea:

    \chapter{titlul_primului_capitol}

    \appendix \chapter{titlul_primului_appendix}

    2.2.5.4 Etichete i referiri LaTeX numeroteaz singur entitile din text, dei aceste numere nu se

    cunosc n momentul editrii fiierului *.tex. Cnd este necesar referirea unor capitole, seciuni, figuri, ecuaii sau tabele, se folosesc comenzile

  • 2.2. NOIUNI FUNDAMENTALE PRIVIND LaTeX 29 ___________________________________________________________________________

    \label{key} \ref{key}

    unde key este un nume simbolic pentru entitatea respectiv, ce const dintr-o secven oarecare de litere, cifre sau semne de punctuaie. Literele mari i mici sunt interpretate distinct. Comanda \label, plasat n textul uzual, asigneaz numrul unitii curente prin parametrul key; dac ea apare n interiorul unui mediu numerotat, atunci acel numr este asignat argumentului key.

    Pentru a evita crearea accidental a dou etichete cu acelai nume, se utilizeaz etichete constnd dintr-un prefix i un sufix, separate prin caracterul :. Prefixele convenionale utilizate sunt:

    cha pentru chapters sec pentru sections fig pentru figures tab pentru tables eq pentru equations

    Astfel, o etichet pentru o figur are forma fig:nume. Comanda \ref produce numrul unitii secionale, numrul ecuaiei

    etc., din comanda \label corespunztoare. Deosebit de util este i comanda \pageref{key}

    care permite referirea la pagina unde este plasat entitatea etichetat de \label, ca n exemplul urmtor. Exemplul 2.13 \documentclass{report} \renewcommand{\chaptername}{Capitolul} \begin{document} \chapter{Introducere} \section{\^Inceputul}\label{inceput} text 1 \section{Dezvoltare} \^In sec\c tiunea \ref{inceput} de la pagina \pageref{inceput}este vorba despre... \end{document}

  • 30 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    Observaie. Reamintim c, dac se folosesc referiri etichetate, atunci fiierul *.tex trebuie procesat de dou ori, pentru rezolvarea referinelor ncruciate, deoarece la prima procesare se scriu, n fiierul *.aux, doar informaii despre entitile etichetate. Abia la a doua procesare aceste informaii sunt preluate pentru a fi folosite de comenzile \ref i \pageref.

    2.2.5.5 Generarea cuprinsului, a listei figurilor i a listei tabelelor Generarea automat a cuprinsului, a listei figurilor i a listei tabelelor se

    realizeaz, respectiv, utiliznd comenzile:

  • 2.2. NOIUNI FUNDAMENTALE PRIVIND LaTeX 31 ___________________________________________________________________________

    \tableofcontents \listoffigures \listoftables Fiecare din aceste comenzi se pune n locul n care se dorete s apar

    lista respectiv. Ca rezultat, este generat un fiier (header), dar nu se ncepe automat o nou pagin. Dac se dorete o pagin nou dup cuprins, respectiv dup lista de figuri sau de tabele, atunci se include comanda \newpage dup comanda \tableofcontents, respectiv dup \listoffigures sau dup \listoftables. Fiierul are acelai nume cu fiierul rdcin i, respectiv, extensia

    .toc pentru \ tableofcontents,

    .lof pentru \listoffigures sau

    .lot pentru \listoftables. Scrierea altor fiiere, n afar de cele cu extensia .dvi i respectiv

    .log, poate fi inhibat prin comanda \nofiles. Adugarea de noi linii, n oricare din cele trei fiiere, se poate realiza

    prin comenzile

    \addcontentsline{file}{sec_unit}{entry} \addtocontents{file}{text}

    unde: file este o extensie a fiierul n care trebuie scris informaia i poate fi

    toc, lof, sau lot; sec_unit poate fi:

    - nume de unitate de document (part, section, chapter, etc.), dac fiierul are extensia .toc,

    - figure, dac fiierul are extensia .lof sau - table, dac fiierul are extensia .lot;

    entry reprezint textul inserat.

  • 32 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    2.3 CADRE

    LaTeX pune la dispoziie mai multe tipuri de cadre (n englez environments), cu scopul delimitrii unor entiti, cum ar fi ecuaii, tabele, figuri, iruri, liste sau, n general, paragrafe cu diverse caracteristici distincte de ale textului ordinar.

    Orice cadru ncepe i se sfrete n acelai mod: \begin{environment_name} text \end{environment_name}

    unde environment_name este numele cadrului, iar text este coninutul cadrului. Numele cadrului poate fi unul din urmtoarele:

    array (iruri i tabele cu simboluri matematice) center (linii centrate) description (liste etichetate) enumerate (liste numerotate) eqnarray (secvene de ecuaii aliniate) equation (ecuaie) figure (figuri) flushleft (paragraf aliniat la stnga) flushright (paragraf aliniat la dreapta) itemize (list marcat cu bullets) letter (scrisoare) list (list generic) minipage (pagin miniatural) picture (figur cu text, sgei, linii i cercuri) quotation (paragraf indentat cu prima linie indentat) quote (paragraf indentat cu prima linie neindentat) tabbing (aliniere oarecare a textului) table (tabele flotante) tabular (alinierea textului n coloane) thebibliography (bibliografie) titlepage (pagin special de titlu, fr numerotare) verbatim (lucrul n regim main de scris)

  • 2.3. CADRE 33 ____________________________________________________________________________

    verse (pentru versuri etc.)

    n plus fa de cadrele listate mai sus, se numr cadrele document i abstract.

    Cadrele sunt similare cu alte structuri de control din limbajele de programare, delimitate de deschideri i nchideri corespunztoare.

    Cadrul obligatoriu pentru orice fiier LaTeX este document. Cadrul abstract permite aezarea n pagin a rezumatului i este

    opional pentru clasele article i report i nedefinit pentru clasele book, letter i slides.

    Iat un exemplu simplu.

    Exemplul 2.14

    \documentclass{article} \title{A Title} \author{Ionescu} \date{1.11.1999} \begin{document} \maketitle \begin{abstract} ............

    ...........

    ...............

    This is the abstract... \end{abstract} .......

    .................

    ..................

    ......

    This is the text...... \end{document}

    n continuare sunt prezentate succint, n ordine alfabetic, cadrele

    listate, cu accent pe acele faciliti ce permit crearea n LaTeX a textelor tiinifice.

  • 34 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    2.3.1 Cadrul array

    \begin{array}[pos]{cols} col1 & col2 & ... & coln \\ .

    .

    \end{array} irurile i tabelele matematice de tip matriceal se construiesc utiliznd

    cadrul array. Argumentul cols (similar cu cel al cadrului tabular, a se vedea subseciunea 2.3.19) descrie numrul de coloane i alinierea elementelor n interiorul lor i este compus, de regul, din secvene de caractere (cte unul pentru fiecare coloan), prin care se indic poziia elementelor n coloan:

    - c (centred) centrat; - l (left) - aliniat la stnga; - r (right) - aliniat la dreapta.

    pos este un argument opional, care specific poziionarea vertical n cadru; poziionarea implicit este centrat, iar opiunile sunt:

    - t (top) - aliniere la marginea de sus a liniei; - b (bottom) - aliniere la marginea de jos a liniei

    Coninutul unei coloane este separat, de urmtoarea coloan, prin simbolul &. Acest coninut poate include alte comenzi LaTeX. Fiecare linie a tabelului matriceal trebuie terminat cu secvena de simboluri \\.

    Cadrul array poate fi utilizat doar n modul matematic (seciunea 2.7), astfel nct, n general, el este deschis i nchis n interiorul unui cadru equation sau apare ntre dou simboluri $ .

    Exemplul 2.15

    \documentclass{report} \begin{document} $A(x)=\left( \begin{array}{ccc} x & 0 & 0\\ 1 & 0 & x \end{array}\right)$ \end{document}

  • 2.3. CADRE 35 ____________________________________________________________________________

    2.3.2 Cadrul center i comanda \centering \begin{center} Text linia 1 \\ Text linia 2 \\ .

    .

    .

    \end{center} Cadrul center permite crearea unui paragraf, care const din linii

    centrate ntre marginea din stnga i marginea din dreapta, pe pagina curent. Fiecare linie trebuie terminat cu irul \\, ce delimiteaz coninutul unui rnd.

    Comanda \centering

    corespunde cadrului center i poate fi utilizat n interiorul unor cadre precum quote sau ntr-un parbox. Figurile sau tabelele pot fi centrate n pagin, dac se d comanda \centering la nceputul cadrelor ce definesc entitile respective.

    Spre deosebire de cadrul center, comanda \centering nu ncepe un nou paragraf, ci schimb doar modul n care LaTeX formateaz unitatea de paragraf respectiv.

    Exemplul 2.16

    \documentclass{report} \begin{document} \begin{center} un paragraf centrat\\ se pune \^\i ntr-un cadru\\ center \end{center} \end{document}

  • 36 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    2.3.3 Cadrul description

    \begin{description} \item [label] Primul element \item [label] Al doilea element .

    .

    .

    \end{description} Cadrul description este utilizat pentru crearea listelor etichetate.

    Eticheta este un ir de caractere i apare aliniat la dreapta i tiprit cu caractere bold. n descrierea de mai sus, comenzile \item definesc lista, iar argumentul label definete eticheta. Exemplul 2.17

    \documentclass{report} \begin{document} \begin{description} \item[List 1] este lista 1 \item[List 2] este lista 2 \end{description} \end{document}

    2.3.4 Cadrul enumerate

    \begin{enumerate} \item Primul element \item Al doilea element .

    .

    .

    \end{enumerate} Cadrul enumerate genereaz o list numerotat. Numerotrile pot fi

    ncuibate, pn la o adncime de patru niveluri. De asemenea, ele pot fi ncuibate ntr-un alt cadru.

    Fiecare entitate a unei liste numerotate ncepe de la comanda \item.

  • 2.3. CADRE 37 ____________________________________________________________________________

    n interiorul cadrului trebuie s existe cel puin o comand \item. Cadrul enumerate folosete contorii enumi pn la enumiv

    (subseciunea 2.4.1), iar tipul de numerotare se poate modifica, redefinind \theenumi. Exemplul 2.18

    \documentclass{report} \begin{document} The steps are: \begin{enumerate} \item for i=1:n do \item i:=i+1 \begin{enumerate} \item j:=i \end{enumerate} \item end \end{enumerate} \end{document}

    2.3.5 Cadrul eqnarray i cadrul eqnarray* \begin{eqnarray} formula matematic 1 \\ formula matematic 2 \\ .

    .

    .

    \end{eqnarray} Cadrul eqnarray este folosit pentru a scrie o secven de ecuaii sau

    de inegaliti. Seamn, oarecum, cu un cadru array cu trei coloane, avnd coloanele consecutive separate prin irul \\, iar elementele consecutive dintr-o linie separate prin &. Formulele se pot alinia dup simbolul cuprins, pe fiecare linie, ntre semnele & (de exemplu dup semnul =, scriind &=&). Fiecare linie este numerotat, cu excepia cazului n care se ntlnete comanda \nonumber.

    Comanda \lefteqn este folosit pentru a scrie o formul lung pe mai multe linii. Argumentul su este tiprit aliniat la stnga fa de restul

  • 38 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    liniilor ce cuprind formula. Cadrul eqnarray* acioneaz la fel ca eqnarray, cu excepia

    faptului c nu genereaz numerotarea liniilor. Exemplul 2.19

    \documentclass{report} \begin{document} \begin{eqnarray} x_n&=&x_{n-1}+x_{n-2}\\ f(x)&=&x^2\\ \lefteqn{g(x)=x^2+y^2} \nonumber\\& &+z^2 \end{eqnarray} \end{document}

    2.3.6 Cadrul equation

    \begin{equation} formula matematica \end{equation} Cadrul equation centreaz ecuaia pe pagin i plaseaz numrul

    ecuaiei n marginea din dreapta. Clasa documentului determin modul cum sunt numerotate ecuaiile (subsubseciunile 2.2.5.3 i 2.2.5.4). Exemplul 2.20.

    \documentclass{report} \begin{document} \begin{equation} \lim_{n\rightarrow \infty} \left(1+\frac{1}{n} \right)^{n}=e \end{equation} \begin{equation} F(s)=\int_{0}^{\infty} f(t) e^{-st}dt \end{equation} \end{document}

  • 2.3. CADRE 39 ____________________________________________________________________________

    2.3.7 Cadrul figure

    \begin{figure}[placement] corpul figurii \caption{titlul figurii} \end{figure} Figurile sunt obiecte care nu fac parte din textul propriu-zis i sunt

    deplasate, n mod normal, n locuri convenabile, de exemplu la nceputul sau la sfritul paginii. O figur nu este tiprit pe pagini separate.

    Argumentul opional placement determin locul n care LaTeX va ncerca s plaseze figura, i anume:

    h (here) n locul din text n care apare cadrul figure; t (top) la nceputul paginii; b (bottom) la sfritul paginii; p (page of floats) pe o pagin separat, care nu conine text, ci

    numai obiecte din figura plasat de LaTeX. Clasele standard report i article utilizeaz, ca amplasament

    default, tbp, astfel nct figura poate fi aezat la nceputul paginii, la sfritul paginii sau pe o pagin separat.

    Corpul figurii este compus, n general, dintr-un cadru picture centrat (subseciunea 2.3.14). Comanda \caption permite scrierea legendei figurii. Un exemplu de creare a unui desen va fi dat dup discutarea cadrului picture.

    2.3.8 Cadrul flushleft i comanda \raggedright \begin{flushleft} Text linia 1 \\ Text linia 2 \\ .

    .

    \end{flushleft} Cadrul flushleft permite crearea de paragrafe aliniate la stnga.

    Fiecare linie trebuie s se termine cu secvena \\. Comanda

  • 40 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    \raggedright corespunde cadrului flushleft i poate fi folosit n interiorul unui cadru cum ar fi quote sau ntr-un parbox. Spre deosebire de cadrul flushleft, comanda \raggedright nu ncepe un nou paragraf, ci doar schimb formatul paragrafului curent, cuprins ntre \begin{} i \end{}. Exemplu 2.21

    \documentclass{report} \begin{document} \begin{flushleft} Ne aliniem la st\^anga, \^\i ntr-un \\cadru flushleft. Acesta este\\ cunoscut drept un\\ text "ragged-right". \end{flushleft} Sf\^ar\c situl altui paragraf. \begin{quote} \raggedright Aici este un cadru quote,\\ ale c\u arui linii sunt\\ aliniate la st\^anga. \end{quote} \end{document}

    2.3.9 Cadrul flushright i comanda \raggedleft \begin{flushright} Text linia 1 \\ Text linia 2 \\ .

    .

    \end{flushright} Cadrul flushright permite crearea de paragrafe aliniate la dreapta.

    Fiecare linie trebuie s se termine cu secvena \\. Comanda \raggedleft

  • 2.3. CADRE 41 ____________________________________________________________________________

    corespunde cadrului flushright i poate fi folosit n interiorul unui cadru cum ar fi quote sau parbox. Spre deosebire de cadrul flushleft, comanda \raggedright nu ncepe un nou paragraf, ci doar schimb formatul paragrafului curent, cuprins ntre \begin{} i \end{}.

    2.3.10 Cadrul itemize

    \begin{itemize} \item Primul element \item Al doilea element .

    .

    \end{itemize} Cadrul itemize genereaz o list cu bullets. Itemizarea poate fi

    ncuibat una ntr-alta, pn la patru niveluri n adncime. De asemenea, aceste liste pot fi incorporate ntr-un paragraf creat cu alt cadru.

    Fiecare element dintr-o list ncepe cu comanda \item. n cadrul itemize trebuie s existe cel puin o comand \item.

    Cadrul itemize poate utiliza cinci contori, de la itemii la itemv (subseciunea 2.4.1). Tipul de numerotare poate fi modificat redefinind \theitemi. Exemplul 2.22

    Ex22

    \documentclass{report} \begin{document} \begin{itemize} \item Fiecare item bullet. \item Listele \^\i ncuibate. \begin{enumerate} \item Etichetele sau litere. \item O list\u a 2item-uri. \end{enumerate} \LaTeX\ permite \^\i ncuibare. \item O linie goal\u a dup\u a \par un item nu are efect. \end{itemize} \end{document}

  • 42 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    2.3.11 Cadrul letter Acest cadru este folosit pentru documente de tip scrisori i este tratat n

    Anexa A.

    2.3.12 Cadrul list

    \begin{list}{label}{spacing} \item 1: Primul element \item 2: Al doilea element .

    .

    \end{list} Cadrul list este un cadru generic, utilizat pentru a defini alte cadre

    specifice. n general, nu este folosit dect arareori n documente, dar n mod frecvent apare n macrodefiniii (seciunea 2.5).

    Argumentul label specific modul cum sunt etichetate elementele listei (items). Argumentul este un text, inclus ntr-un box pentru a forma o etichet. Acest argument poate conine alte comenzi LaTeX.

    Argumentul spacing conine comenzi care seteaz parametrii de spaiere ai listei. Acest argument este, n general, nul, i.e. {}. n acest caz, sunt selectai parametrii de spaiere implicii (default), ceea ce este satisfctor pentru majoritatea aplicaiilor.

    n afara acestor dimensiuni, urmtoarele comenzi controleaz formatarea.

    \makelabel{label} este comanda care poziioneaz eticheta transmis ca parametru opional al comenzii \item. Poate fi redefinit de utilizator, cu ajutorul comenzii \renewcommand, n seciunea de declaraii.

    \usecounter{ctr} pune la dispoziie contorul ctr (care trebuie mai nti creat, conform subseciunii 2.4.1), pentru numerotarea intern a elementelor. Acest contor este automat iniializat la zero, iar la fiecare comand \item fr parametru el va fi incrementat cu \refstepcounter, valoarea lui devenind valoarea curent (subseciunea 2.4.1).

  • 2.3. CADRE 43 ____________________________________________________________________________

    Exemplu 2.23 \documentclass{report} \begin{document} \newcounter{bean} Textul ce precede lista. \begin{list} {B--\arabic{bean}} { \usecounter{bean} \setlength{\rightmargin}{20mm} \setlength{\leftmargin}{\rightmargin} } \item Acesta este primul element sunt egale cu 20mm. \item Acesta este al doilea element. \end{list} \^Incepe un nou paragraf doar \^\i n cazul \^\i n care cadrul list este urmat de o linie goal\u a.

    Un nou paragraf. \end{document}

  • 44 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    \rightmargin

    \leftmargin

    \labelwidth \itemindent

    Textul precedent

    Label

    \topsep + \parskip [+ \partopsep]

    Elementul 1Paragraful 1

    \parsep\listparindent

    Elementul 1Paragraful 2

    Elementul 2Label

    \topsep + \parskip [+ \partopsep]

    Text ce urmeaza listei

    \itemsep + \parsep

    Fig. 2.3 - Semnificaia parameterilor din cadrul list (a se vedea i subseciunea 2.4.2).

    2.3.13 Cadrul minipage i comanda \parbox \begin{minipage}[pos]{width} text \end{minipage} Parbox este o cutie (box) al crei coninut este n modul paragraf,

    iar TeX genereaz o serie de linii ca n textul uzual. Cadrele figure i table creeaz parbox-uri. Exist dou modaliti de a crea un parbox ntr-un

  • 2.3. CADRE 45 ____________________________________________________________________________

    anumit loc din text: 1) cu ajutorul cadrului minipage i, respectiv, 2) prin comanda \parbox. Ele pot fi folosite pentru a include unul sau mai multe paragrafe de tip text, n interiorul unei figuri sau al unui tabel.

    Cadrul minipage are un argument opional pos i un argument width ce specific limea box-ului. Argumentul opional pos poate fi:

    t (top) linia de sus a parbox-ului este aliniat la linia de text uzual sau

    b (bottom) linia de jos a parbox-ului este aliniat la linia de text uzual.

    n interiorul unui cadru minipage, se pot utiliza alte comenzi de tip cadru, ce creeaz paragrafe.

    O comand \footnote sau \footnotetext creeaz o not de subsol n partea de jos a minipaginii i nu n subsolul paginii i utilizeaz contorul mpfootnote n locul contorului obinuit pentru notele de subsol (subseciunea 2.4.1).

    Observaie. Dac se utilizeaz note de subsol, atunci nu se include o minipagin n alta deoarece ele pot ajunge n subsolul altei minipagini dect cea corect.

    Exemplul 2.24

    \documentclass{report} \begin{document} \begin{minipage}[t]{0.5in} {\em vrabia} este o pas\u are \end{minipage} \ IAR \ \begin{minipage}[t]{1in} {\em iepurele} este un roz\u ator\footnote{vezi mamifere}. \end{minipage} \end{document}

    Comanda \parbox

    este similar cu cadrul minipage, are acelai argument opional pos i un argument width. Este utilizat, n general, pentru un parbox cu un volum redus de text, ce nu conine alte paragrafe create cu cadre.

  • 46 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    Exemplul 2.25

    \documentclass{report} \begin{document} \parbox[b]{0.5in}{Parbox cu linia de JOS aliniat\u a cu linia TEXT.} \ TEXT \ \parbox[t]{1in}{Parbox cu linia de SUS aliniat\u a cu linia TEXT.} \end{document}

    Un control mai fin al poziionrii verticale se realizeaz cu comanda

    \raisebox (subseciunea 2.8).

    2.3.14 Cadrul picture i folosirea sa n cadrul figure \begin{picture}(width,height)(x_offset,y_offset) comenzi picture \end{picture} Cadrul picture permite crearea de desene ce conin text, linii, sgei

    i cercuri. n principiu, se comunic LaTeX locul unde se pun aceste obiecte prin specificarea coordonatelor lor.

    O coordonat este un numr care poate avea zecimale i semn de exemplu 5 sau 2.3. O coordonat specific lungimea, n multipli de unitatea \unitlength, astfel nct, dac \unitlength a fost setat la 1cm, atunci coordonta 2.5 specific o lungime de 2.5cm de la origine. Valoarea \unitlength poate fi modificat oricnd, cu ajutorul comenzii \setlength. Aceast schimbare nu trebuie fcut ns n interiorul cadrului picture, deoarece efectul este imprevizibil.

    O poziie este o pereche de coordonate de exemplu, (2.4,-5), care specific punctul cu coordonata 2.4 pe axa x i respectiv 5 pe axa y. Coordonatele sunt specificate, n mod uzual, n raport cu originea care este situat, de regul, n colul stnga-jos al desenului. Cnd o poziie apare ca argument, ea nu este inclus ntre paranteze, acestea servind doar la delimitare.

  • 2.3. CADRE 47 ____________________________________________________________________________

    1(-2.1,1)

    unitate delungime

    (2,2)

    x

    y

    originea

    2

    2

    -2.1

    Fig.2.4 Puncte i coordonatele lor Cadrul picture are un argument obligatoriu dimensional. Cadrul

    genereaz o cutie (box) dreptunghiular, cu lungimea width i limea height, reprezente, respectiv, de coordonatele x i y ale argumentului.

    Cadrul picture mai are i un argument opional, ce urmeaz argumentului dimensional i care poate modifica originea. Spre deosebire de argumentele opionale uzuale, acesta nu este inclus ntre paranteze drepte. Acest argument opional furnizeaz coordonatele noii origini, n raport cu colul din stnga-jos al figurii. De exemplu, dac \unitlength a fost setat la 1mm, comanda

    \begin{picture}(100,200)(10,20) genereaz o figur cu limea 100mm i lungimea 200mm, al crei col din stnga-jos este punctul (10,20) i al crei col dreapta-sus este, n consecin, (110,220). Cnd se deseneaz o figur, mai nti se omite acest argument opional, lsndu-se originea n colul stnga-jos. Dac apoi se dorete o deplasare a desenului, se adaug argumentul opional corespunztor.

    Argumentul obligatoriu al cadrului determin mrimea nominal a desenului, dar desenul propriu-zis poate s depeasc aceste dimensiuni.

    Grosimea liniei cu care se deseneaz se selecteaz prin comenzile: \thinlines selecteaz linia subire; \thicklines selecteaz linia groas;

  • 48 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    \linethickness{gros} selecteaz penia groas, iar argumentul gros specific grosimea liniei.

    Desenul este alctuit cu comenzile: \put(coord_x,coord_y){obj} pune obiectul obj n punctul de coordonate

    coord_x, coord_y; \multiput(coord_x,coord_y)(dx,dy){nr}{obj} pune de nr ori obiectul

    obj, ncepnd cu punctul de coordonate coord_x, coord_y, iar la fiecare pas coordonatele sunt incrementate cu dx, respectiv dy. Ca urmare, la a treia repetare a obiectului specificat prin obj, coordonatele sale vor fi coord_x*3*dx, respectiv coord_y*3*dy.

    Comanda \put creeaz o cutie LR (seciunea 2.8). Obiectele reprezentate de argumentul obj pot fi text uzual sau desene

    create de comenzile descrise n continuare.

    \circle[*]{diam} genereaz un cerc cu un diametru ct mai apropiat posibil de cel specificat prin diam; dac este utilizat versiunea cu * a comenzii, atunci LaTeX genereaz un cerc plin (cu interiorul nnegrit).

    \dashbox{dash_length}(width,height)[pos]{text} genereaz un box dreptunghiular, cu conturul punctat, ce conine textul text; argumentul opional pos specific poziia n care apare textul (implicit centrat pe orizontal i vertical) i care poate fi selectat prin una sau dou din valorile: t (top) plasare n partea de sus a dreptunghiului; b (bottom) plasare n partea de jos a dreptunghiului; l (left) plasare la stnga; r (right) plasare la dreapta; c (center) centrat. Comanda are argumentul suplimentar dash_length, care specific lungimea unei liniue, iar aspectul desenului este optim cnd parametrii width i heigth sunt multipli de dash_length.

    \frame{obj}creeaz un contur dreptunghiular n jurul obiectului specificat de argumentul obj; punctul de referin este colul stnga-jos i nu se las spaiu suplimentar ntre contur i obiect.

  • 2.3. CADRE 49 ____________________________________________________________________________

    \framebox(width,height)[pos]{text} este similar cu comanda \dashbox, cu excepia faptului c genereaz un contur cu linie continu, plasat n exterior, n jurul cutiei pe care o creeaz.

    \line(x_slope,y_slope){length} este comanda ce genereaz o linie cu lungimea length i panta (slope) x_slope/y_slope, unde x_slope i y_slope pot avea valori ntregi cuprinse ntre 6 i 6.

    \makebox(width,height)[pos]{text} este similar cu comanda \dashbox, cu excepia faptului c marginile box-ului sunt invizible.

    \oval(width,height)[portion] produce un oval (dreptunghi cu vrfurile rotunjite); argumentul opional portion permite selectarea, pentru tiprire, doar a unei zone a ovalului, specificat prin una din valorile: t (partea de sus), b (partea de jos), r (partea din dreapta) sau l (partea din stnga. Trebuie menionat c vrfurile ovalului sunt realizate cu cercuri cu raza maxim de 20 pt, astfel nct un oval mare va avea, mai degrab, aspectul unui box cu colurile rotunjite.

    \shortstack[pos]{obj1\\obj2\\...} genereaz o stiv de obiecte; ultimul obiect este la baza stivei iar valorile argumentului opional pos pot fi: r (right) plasarea obiectului la dreapta stivei l (left) plasarea obiectului la stnga stivei; c (center) plasarea obiectului n centrul stivei (implicit).

    \vector(x_slope,y_slope){length}deseneaz o linie cu o sgeat, de lungimea specificat prin length i cu panta x_slope/y_slope.

    n continuare sunt date cteva exemplu de utilizare a cadrului

    picture.

  • 50 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    Exemplu 2.26

    \documentclass{report} \begin{document} \begin{figure} \begin{picture}(100,100) \setlength{\unitlength}{1pt} \put(120,20){\dashbox{.5} (50,50)[b]{TEXT}} \end{picture} \caption{Un prim exemplu} \end{figure} \end{document}

    Exemplul 2.27

    \documentclass{report} \begin{document} \begin{picture}(100,100) \setlength{\unitlength}{1pt} \put(1.4,5){\vector(1,2){20}} \put(1.4,2.6){\line(3,-1){50}} \end{picture} \end{document}

    Exemplul 2.28

    \documentclass{report} \begin{document} \begin{picture}(100,100) \setlength{\unitlength}{1pt} \put(20,0){\circle{20}} \put(20,0){\vector(0,1){10}} \put(50,0){\circle*{10}} \end{picture} \end{document}

  • 2.3. CADRE 51 ____________________________________________________________________________

    Exemplul 2.29

    \documentclass{report} \begin{document} \begin{picture}(100,100)\setlength{\unitlength}{1pt} \put(10,70){\shortstack{Acesta \\ este \\ un obiect}} \put(10,50){\oval(50,30)} \end{picture} \end{document}

    Exemplul 2.30

    \documentclass{report} \begin{document} \begin{picture}(100,100) \setlength{\unitlength}{1pt} \multiput(3,3)(5,-3){3}{\oval(40,20)} \end{picture} \end{document}

    Exemplul 2.31

    \documentclass{report} \begin{document} \begin{picture}(100,100) \setlength{\unitlength}{0.2cm} \put(5,4){\line(0,-1){2}} \put(6,2){\oval(2,2)[bl]} \put(6,1){\vector(1,0){6}} \end{picture} \end{document}

    Observaie. Pentru a realiza transformri geometrice i a include fiiere de tip .eps, care conin grafic realizat n alte medii, se folosete pachetul graphics. Includerea graficii se realizeaz cu comanda \includegraphics (care suport i forma cu *). Detalii privind pachetul graphics se gsesc n [Lamport 1994].

  • 52 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    2.3.15 Cadrul quotation

    \begin{quotation} text \end{quotation} Cadrul quotation se utilizeaz pentru evidenierea unui citat mai

    lung, compus din mai multe paragrafe. Marginile cadrului quotation sunt indentate la stnga i la dreapta. Textul este aliniat (justified) la aceste margini i paragrafele sunt indentate. O linie goal n text genereaz un nou paragraf. Exemplul 2.32 \documentclass{report} \begin{document} Iat\u a c\^ateva sfaturi. \begin{quotation} Cadrele pentru realizarea citatelor pot fi folosite \c si \^\i n alte scopuri. Este bine s\u a citi\c ti cu aten\c tie manualul.

    Multe probleme pot fi rezolvate prin folosirea cadrelor din \LaTeX. Pentru aceasta ave\c ti nevoie de experien\c t\u a. \end{quotation} Acestea au fost unele din sfaturile ce v-ar fi necesare. Restul le ve\c ti g\u asi \^\i n paginile acestei c\u ar\c ti sau \^\i n alte lucr\u ari. \end{document}

  • 2.3. CADRE 53 ____________________________________________________________________________

    2.3.16 Cadrul quote

    \begin{quote} text \end{quote} Cadrul quote este similar cadrului quotation, dar este destinat

    evidenierii unor citate mai scurte, ce cuprind doar un singur paragraf sau unor secvene de citate scurte, separate prin linii goale. Marginile din stnga i din dreapta sunt indentate, iar textul este aliniat la ambele margini.

    Exemplul 2.33 \documentclass{report} \begin{document} Motto-ul \begin{quote} "\TeX\ este un sistem de culegere de texte, destinat cre\u arii unor c\u ar\c ti frumoase - \c si, \^\i n special, a celor care con\c tin mult\u a matematic\u a."

    \emph{- D.E Knuth, The \TeX book (1983)-} \end{quote} este un adev\u ar recunoscut, din ce \^\i n ce mai mult, de editori din \^\i ntreaga lume. \end{document}

  • 54 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    2.3.17 Cadrul tabbing

    \begin{tabbing} text \= text \= text \= text \\ a doua linie \> \> ultimul text \\ .

    .

    \end{tabbing} Cadrul tabbing permite alinierea textului pe coloane i poate fi

    utilizat doar n modul paragraf (seciunea 2.6). El ofer un mecanism pentru setarea i folosirea tabulatorilor, similar cu cel de la o main de scris. Este adecvat situaiilor n care limea fiecrei coloane este constant i cunoscut dinainte. Spre deosebire de cadrul tabular, acest cadru poate trece de la pagin la alta. Opririle tab-ului sunt numerotate 0, 1, 2, etc. Oprirea cu numrul i a tab-ului este setat, dac i se asociaz o poziie pe orizontal n pagin.

    n interiorul unui cadru tabbing pot fi folosite urmtoarele comenzi: \= seteaz un tab n poziia curent; \> salt orizontal la urmtorul tab; \< decrementeaz valoarea numrului curent de opriri ale tab-ului,

    permind inserarea unui text la stnga marginii locale, fr a o modifica; poate fi folosit doar la nceput de linie, unde anuleaz (pe linia respectiv) efectul unei comenzi \+ precedente ;

    \+ mut marginea din stnga a liniei urmtoare cu un tab, iar mai multe astfel de comenzi au efect cumulativ; iniial, tabulatorul marginii din stnga este setat la 0;

    \- decrementeaz cu 1 tabulatorul marginii din stnga a liniei urmtoare (care trebuie s fie pozitiv), anulnd efectul unei comeni \+; mai multe astfel de comenzi au efect cumulativ;

    \ mut textul din coloana curent, situat naintea comenzii, n coloana precedent i l aliniaz la dreapta;

    \ produce alinierea la dreapta tabelului a textului ce urmeaz dup comand; dup aceast comand, nu mai sunt acceptate comenzile \>, \=, \ sau \ ;

  • 2.3. CADRE 55 ____________________________________________________________________________

    \kill nu tiprete rndul curent; \pushtabs salveaz poziia curent a tuturor tabulatorilor ce pot fi

    restaurai cu comanda \poptabs; \poptabs restaureaz poziiile tabulatorilor salvai la ultima comand

    \pushtab; \a, \a, \a produc accentele pe care le-ar genera, n mod normal, respectiv

    comenzile \=, \, \ (i care, aici, sunt redefinite).

    Exemplul 2.34

    \documentclass{report} \begin{document} \begin{tabbing} function \= fact(n : integer) : integer;\\ \> begin \= \+ \\ \> if \= n $>$ 1 then \+ \\ fact := n * fact(n-1) \- \\ else \+ \\ fact := 1; \-\- \\ end;\\ \end{tabbing} \end{document}

    Exemplul 2.35

    \documentclass{report} \begin{document} \begin{tabbing} O coloan\u a \=\^\i ngust\u a.\\ Acest r\^ and este prea lung. \>///////////////// \end{tabbing} \end{document}

  • 56 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    Exemplul 2.36

    \documentclass{report} \begin{document} \begin{tabbing} Coloana veche 1 \=Coloana veche 2\\ Col.1\>Col.2\\ Col. nou\u a 1 \=Col. nou\u a 2\\ Col.1\>Col.2 \end{tabbing} \end{document}

    Exemplul 2.37

    \documentclass{report} \begin{document} \begin{tabbing} Eminescu\=Creang\u a\=\kill Mihai \>Ion \>Ion Luca \\ Eminescu \>Creang\u a \>Caragiale \end{tabbing} \end{document}

    2.3.18 Cadrul table

    \begin{table}[placement] corpul tabelului \caption{titlul tabelului} \end{table} Tabelele, la fel ca i figurile, sunt obiecte al cror coninut trebuie s

    apar doar pe o singur pagin i ele pot fi deplasate (floated) n text, - de exemplu, la nceputul paginii urmtoare - astfel nct s nu existe pagini umplute parial.

    Argumentul opional placement determin locul n care LaTeX va ncerca s plaseze tabelul. Aceste poziii sunt specificate cu ajutorul unor caractere cu urmtoarea semnificaie :

  • 2.3. CADRE 57 ____________________________________________________________________________

    h (here) n locul n care apare cadrul table n text; t (top) n captul de sus al unei pagini de text; b (bottom) la baza unei pagini de text; p (page of floats) pe o pagin separat ce nu conine text, ci doar

    obiecte deplasate.

    Poziia default este tpb. Corpul tabelului este compus din text, comenzi LaTeX etc. Includerea comenzii \caption permite etichetarea i scrierea unei legende asociate tabelului.

    Un exemplu de utilizare a cadrului table va fi dat n seciunea ce trateaz cadrul tabular.

    2.3.19 Cadrul tabular

    \begin{tabular}[pos]{cols} linia 1 :col.1 & col.2 ... & col.n\\ .

    .

    linia m :col.1 & col.2 ... & col.n\\ \end{tabular}

    sau

    \begin{tabular*}{width}[pos]{cols} linia 1 :col.1 & col.2 ... & col.n\\ .

    .

    linia m :col.1 & col.2 ... & col.n\\ \end{tabular*} Aceste cadre produc un box, constnd dintr-o secven de linii de

    elemente, aliniate vertical n coloane. Argumentele obligatorii i respectiv opionale sunt descrise n continuare. width specific limea cadrului tabular*. pos specific poziia pe vertical, default nseamn alinierea centrat n

    cadru, iar valorile pot fi: t aliniere n captul de sus al liniei; b aliniere n captul de jos al liniei.

  • 58 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    cols specific formatul coloanei i const dintr-o secven alctuit cu simbolurile de mai jos.

    l o coloan de elemente aliniate la stnga r o coloan de elemente aliniate la dreapta c o coloan de elemente centrate | separator de coloane, reprezentat de o linie vertical mrginit de

    spaii @{text} separator de coloane ce specific o @-expresie. Se

    insereaz textul text n fiecare linie, ntre coloanele ntre care apare @-expresie. O @-expresie suprim spaiul dintre coloane, inserat n mod normal i orice spaiu dorit ntre textul propriu-zis i celelalte elemente trebuie s fie inclus n text. O comand \extracolsep{wd}, ntr-o @-expresie, genereaz un spaiu suplimentar, de lime wd, la stnga tuturor coloanelor urmtoare, pn la urmtoarea comand \extracolsep. Spre deosebire de spaiul uzual dintre coloane, acest spaiu suplimentar nu poate fi suprimat printr-o @-expresie. O comand \extracolsep poate fi folosit doar n argumentul cols, ntr-o @-expresie.

    p{wd} genereaz o coloan, cu fiecare element plasat ntr-o cutie cu limea wd, ca i cum ar fi argumentul unei comenzi \parbox[t]{wd}. Cu toate acestea, secvena \\ nu este permis dect n urmtoarele situaii: - n interiorul unui cadru de tip array, minipage sau

    tabular, - n interiorul unui \parbox explicit sau - n sfera de aciune a unei comenzi \centering,

    \raggedright sau \raggedleft. Ultimele dou comenzi trebuie s apar ntre paranteze sau ntr-un cadru, atunci cnd sunt folosite ntr-un element coloan p .

    *{num}{cols} echivalent cu num cpii ale coloanelor, unde num este orice ntreg pozitiv iar cols este orice list de specificatori de coloan, care pot conine i o @-expresie.

    Fiecare linie este separat, de urmtoarea, prin comanda \\ i const dintr-o secven de elemente, separate prin caracterul &. O linie trebuie s conin acelai numr de elemente ca cel specificat de argumentul cols. Fiecare element este procesat ca i cum ar fi ntre paranteze, astfel nct cmpul de

  • 2.3. CADRE 59 ____________________________________________________________________________

    aciune al fiecrei declaraii dintr-un element i.e. efectul declaraiei - se limiteaz la acel element. Urmtoarele comenzi pot fi folosite n specificarea unui element al unei linii:

    \multicolumn{n}{pos}{item} face elementul item s se extind pe n coloane, n poziia pos, care poate conine una din valorile: r (right), c (centred), l (left) i una sau mai multe @expresii i caractere |; aceast comand fie ncepe o linie a tabelului, fie urmeaz imediat dup caracterul &;

    \vline cnd este utilizat n interiorul unui element l, c sau r, produce o linie vertical, pe toat nlimea liniei respective de elemente ale tabelului; o comand \hfill poate fi utilizat pentru a muta linia la marginea coloanei; comanda poate fi utilizat ntr-o @-expresie.

    Comenzile descrise n continuare pot genera linii orizontale, ntre dou linii succesive de elemente ale tabelului. Ele trebuie s apar fie naintea primei linii de elemente, fie imediat dup o comand \\. O linie orizontal, dup ultima linie de elemente, este produs de comanda \\, urmat de una din comenzile descrise mai jos.

    Comanda

    \cline{i-j} subliniaz elementele tabelului, ncepnd de la coloana i pn la coloana j.

    Comanda \hline

    plasat dup o secven \\ sau la nceputul cadrului, traseaz o linie orizontal sub toate coloanele. Dou comenzi \hline succesive las un spaiu ntre linii; delimitrile generate de caracterul |, din argumentul cols, nu apar n acest spaiu.

  • 60 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    Exemplul 2.38

    \documentclass{report} \begin{document} \begin{table}[htbp] \begin{center} \begin{tabular}{cc} \multicolumn{2}{c}{\emph{Some real values}}\\ \hline $x=0.1$&$y=2.2$\\ $r=10$&$z=100$\\ \end{tabular} \end{center} \caption{Exemple 38} \end{table} \end{document}

    Exemplul 2.39 \documentclass{report} \begin{document} \begin{tabular}{|r||r@{--}l|p{1.25in}|}\hline \multicolumn{4}{|c|}{\emph{Firma Paradis}}\\ \hline\hline &\multicolumn{2}{c|}{Pre\c t}&\\ \cline{2-3} \multicolumn{1}{|c||} {An}&\multicolumn{1}{r@{\,\vline\,}}{min}&max &\multicolumn{1}{c|}{Observa\c tii} \\ \hline 1971&97&245&An slab.\\ \hline 72&245&245&Iarn\u a grea.\\ \hline 73&245&2001&Un an ciudat. Prognoz\u a bun\u a.\\\hline \end{tabular} \end{document}

  • 2.3. CADRE 61 ____________________________________________________________________________

    Exemplul 2.40

    \documentclass{report} \begin{document} \begin{tabular*}{40mm}{@{}r@{.}l% @{\extracolsep{\fill}}cr% @{\extracolsep{0pt}::}l@{}} \multicolumn{5}{c}{\underline{Tabel}}\\ 1&22&obiect 1 &clasa&st\^ ang\u a\\ 50&7 &obiectul 2 &clasa&ro\c sie\\ 9&99&obiecte &clase&diverse \end{tabular*} \end{document}

    2.3.19.1 Observaii importante privind cadrul tabular i cadrul array Urmtoarele proprieti ale cadrelor tabular i array (seciunea

    2.3.1), dei au fost menionate, sunt adesea ignorate de utilizatorii nceptori. Aceste cadre creeaz o cutie (box) (a se vedea i seciunea 2.3.13). Cutia creat cu aceste comenzi poate avea un spaiu alb, nainte de prima

    coloan i respectiv dup ultima coloan, spaiu ce poate fi eliminat cu o @-expresie.

    Orice declaraie ntr-o linie a tabelului (vezi linia 1, , linia m) aparine unui element al tabelului, iar cmpul su de aciune este elementul respectiv (i.e. efectul se exercit doar asupra elementului).

    O @-expresie, n argumentul cols, suprim spaiul implicit dintre coloane.

  • 62 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    2.3.19.2 Parametrii de stil privind cadrul array i cadrul tabular Formatul cadrelor array i tabular poate fi respectiv controlat cu

    urmtoarele comenzi, reprezentnd parametrii de stil privind lungimile:

    \arraycolsep reprezint jumtate din limea specificat, prin argumentul width, a spaiului orizontal implicit dintre coloane, ntr-un cadru array;

    \tabcolsep reprezint jumtate din limea specificat, prin argumentul width, a spaiului orizontal implicit dintre coloane, ntr-un cadru tabular sau tabular*;

    \arrayrulewidth reprezint limea unei linii create, cu ajutorul caracterului |, n argumentul cols sau cu una din comenzile \hline, \cline sau \vline;

    \doublerulesep reprezint limea spaiului dintre linii, creat cu dou caractere | succesive, n argumentul cols, sau cu dou comenzi \hline succesive;

    \arraystretch controleaz spaierea dintre liniile tabelului; spaiul normal este multiplicat cu numrul generat de \arraystretch, astfel nct modificarea sa, de la valoarea implicit 1 la 1.5, crete spaiul dintre linii de 1.5 ori, n parte; valoarea sa poate fi modificat, din nou, cu o comand \renewcommand (subseciunea 2.2.4 i seciunea 2.5)

    Parametrii de stil de mai sus pot fi schimbai, oricnd, n afara unui cadru array, respectiv tabular. Ei pot fi, de asemenea, schimbai local, n interiorul unui element, dar cmpul de aciune al modificrii respective trebuie delimitat prin paranteze de grupare sau printr-un cadru.

  • 2.3. CADRE 63 ____________________________________________________________________________

    2.3.20 Cadrul thebibliography i programul BibTeX

    2.3.20.1 Cadrul thebibliography i generarea manual a bibliografiei \begin{thebibliography}{widest_label} \bibitem[label]{cite_key} .

    .

    \end{thebibliography} Cadrul thebibliography permite crearea manual a unei liste de

    referine bibliografice. n clasa article, lista de referine este intitulat References, iar n clasa report, Bibliography. Parametrul widest_label specific un text care, tiprit, este aproximativ tot att de lat ct elementul de lime maxim, generat de comenzile \bibitem.

    Comanda

    \bibitem[label]{cite_key} genereaz o nregistrare cu eticheta label. Dac argumentul label lipsete, se genereaz un numr cu rolul etichetei, utiliznd contorul enumi (subseciunea 2.4.1). Parametrul cite_key este orice secven de litere, numere sau semne de punctuaie diferite de virgul ,. Aceast comand scrie, n fiierul cu extensia .aux, o nregistrare coninnd cite_key i eticheta label a elementului. Cnd acest fiier *.aux este citit, la comanda \begin{document}, eticheta elementului este asociat cu cite_key, astfel nct, prin comanda \cite, referina respectiv genereaz eticheta label asociat.

    Comanda

    \cite[text]{key_list} genereaz citarea, n text, a referinelor asociate cu etichetele din lista key_list, prin nregistrri din fiierul *.aux, citit la comanda \begin{document}. Argumentul key_list este o list de etichete de citare. Argumentul opional text va aprea dup citare, i.e. comanda \cite[p. 2]{knuth} va genera [Knuth, p. 2].

    Comanda

  • 64 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    \nocite{key_list} nu genereaz nici un text, dar scrie key_list, care este o list de una sau mai multe citri, n fiierul *.aux. Exemplul 2.41 \documentclass{report} \begin{document} Leslie Lamport \cite{LL:LaT} shows that\par .....

    \begin{thebibliography}{99} \bibitem{LL:LaT} Leslie Lamport. {\em (1994) }\LaTeX\ A Document Preparation System. User's Guide and Reference Manual. Addison-Wesley Publ. Co. \end{thebibliography} \end{document}

    Observaie. De remarcat c, n clasa report, bibliografia este tiprit pe o pagin separat, dup textul documentului propriu-zis, pe cnd la documentele de tip article referinele apar la sfritul documentului, fr a se genera o nou pagin.

  • 2.3. CADRE 65 ____________________________________________________________________________

    Exemplul 2.42 \documentclass{article} \begin{document} Leslie Lamport \cite{LL:LaT} shows that...\par..... \begin{thebibliography}{Alexander 95} \bibitem[Alexander 95]{Al:Mat}John Alexander. {\em (1995) } Mathematical Analysis. Ed. MIR, Moscow. \bibitem[Lamport 94]{LL:LaT} Leslie Lamport.{\em (1994) } \LaTeX\ A Document Preparation System. User's Guide and Reference Manual. Addison-Wesley Publ. Co. \end{thebibliography} \end{document}

    n acest exemplu, parametrul widest_label este Alexander 95.

    Observaie. Atenie, pentru rezolvarea referinelor ncruciate, fiecare fiier *.tex,

    din exemplele 2.41 i respectiv 2.42, a fost procesat, n LaTeX, de dou ori; reamintim c, la prima trecere, se marcheaz referinele i abia la a doua trecere acestea sunt alocate.

    Exemplul urmtor arat cum se poate redacta textul din exemplul 2.42 n limba romn, prin redefinirea numelor seciunilor (conform subseciunii 2.2.4).

  • 66 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    Exemplul 2.43 \documentclass{article} \renewcommand{\refname}{Bibliografie} \begin{document} Leslie Lamport \cite{LL:LaT} arat\u a c\u a ...\par .....

    \begin{thebibliography}{Alexander 95} \bibitem[Alexander 95]{Al:Mat} John Alexander. {\em (1995) } Mathematical Analysis. Ed. MIR, Moscow. \bibitem[Lamport 94]{LL:LaT} Leslie Lamport. {\em (1994) } \LaTeX\ A Document Preparation System. User's Guide and Reference Manual. Addison-Wesley. \end{thebibliography} \end{document}

    2.3.20.2 Programul BibTeX i generarea automat a bibliografiei Dac, pentru ntreinerea listei bibliografice, utilizai programul

    BibTeX, creat de Oren Patashnik (recomandat, n special, n cazul unei bibliografii bogate, care conine mai mult de cteva titluri), atunci nu se folosete cadrul thebibliography. n schimb, se introduc urmtoarele linii:

    \bibliographystyle{style} \bibliography{bibfile}

  • 2.3. CADRE 67 ____________________________________________________________________________

    unde style se refer la fiierul style.bst, care definete felul cum vor arta citatele. Stilurile standard, distribuite de BibTeX ,sunt urmtoarele: alpha sortare n ordine alfabetic, cu etichete constituite din numele

    autorului i anul apariiei publicaiei; plain sortare n ordine alfabetic, cu etichete numerice; unsrt similar cu plain, dar elementele apar n ordinea citrii, fr

    sortare;

    abbrv - similar cu plain, dar etichetele sunt mult mai compacte.

    n plus, pot fi activate numeroase alte fiiere style pentru BibTeX, conform cerinelor diverselor edituri i conform layout-urilor specifice pentru diverse reviste.

    Argumentul comenzii \bibliography se refer la fiierul bibfile.bib, care ar trebui s conin baza Dvs. de date, n format BibTeX. Detalii privind organizarea bazei de date se gsesc n [Lamport 1994] i n fiierul btxdoc.dvi, ce nsoete documentaia MiKTeX (disponibil la adresa www.stat.uiowa.edu/resources/help/win95/latex.html) care conine i lucrarea BibTeXing, scris de Oren Patashnik [Patashnik 1988]. Cteva elemente din aceast lucrare sunt prezentate, succint, n Anexa B.

    2.3.21 Cadrul titlepage

    \begin{titlepage} text \end{titlepage} Cadrul titlepage creeaz o pagin de titlu, i.e. o pagin

    nenumerotat i fr header, iar pagina imediat urmtoare devine prima pagin, din punctul de vedere al numerotrii. Formatarea paginii de titlu este lsat, n ntregime, la latitudinea autorului. Adesea, este folosit una din comenzile \today (pentru generarea datei curente) sau \date (pentru specificarea unei anumite date sau a celei curente). Pentru a produce o pagin de titlu standard, se folosete comanda \maketitle (subsubseciunea 2.2.5.2).

    Sunt utile, de asemenea, urmtoarele cadre i comenzi: cadrul center, descris n subseciunea 2.3.2, comenzile de schimbare de stil precum i cele de schimbare a dimensiunii fontului, descrise n seciunea 2.6.

  • 68 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    2.3.22 Cadrul verbatim i comanda \verb \begin{verbatim} text \end{verbatim} Cadrul verbatim genereaz un paragraf, n care LaTeX tiprete

    exact ceea ce se introduce de la tastatur. Cu alte cuvinte, LaTeX devine o main de scris, care proceseaz spaiile (blank-urile) i comenzile enter de la tastatur. Exemplul 2.44 \documentclass{report} \begin{document} Urmeaz\u a un un text scris \^\i n cadrul \texttt{verbatim}. \begin{verbatim} Text scris \^\i n cadrul \texttt{verbatim} \end{verbatim} \end{document}

    Comanda \verb, cu sintaxa \verb char literal_text char ,

    suport i forma cu *, avnd sintaxa \verb*char literal_text char .

    literal_text semnific textul tiprit, n stilul typewriter (\texttt, seciunea 2.6), exact cum este introdus de la tastatur, inclusiv caracterele speciale i spaiile. char este un caracter diferit de liter (de exemplu + sau |), ce delimiteaz, n cadrul paragrafului curent, textul literal_text. Se admite s nu fie nici un blank ntre char i \verb, respectiv \verb*. n forma cu *, spaiile sunt tiprite ca un caracter special.

  • 2.3. CADRE 69 ____________________________________________________________________________

    Exemplul 2.45 \documentclass{report}

    \begin{document} Se poate scrie:\\ \verb+$x=y$+ sau \verb?$x = y$?. \end{document}

    Exemplul 2.46 \documentclass{report}

    \begin{document} Se poate scrie:\\\verb*+$x=y$+ sau \verb*?$x = y$?. \end{document}

    2.3.23 Cadrul verse

    \begin{verse} text \end{verse} Cadrul verse este destinat tipririi de versuri, dei se poate folosi i n

    alte scopuri. Marginile textului sunt indentate, la stnga i la dreapta. Versurile dintr-o strof sunt separate cu secvena \\, iar strofele sunt separate prin una sau mai multe linii goale.

    Exemplul 2.47 \documentclass{report}

    \begin{document} \^In 1876, Eminescu scria: \begin{verse} Cu g\^andiri \c si cu imagini\\ \^Innegrit-am multe pagini ...

    Nu urma\c ti g\^andirei mele,\\ C\u aci noianu-i de gre\c sele,...\\ \end{verse} \end{document}

  • 70 CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX ____________________________________________________________________________

    2.4 VARIABILE INTERNE LaTeX

    2.4.1 Contori Pentru numerotare, n LaTeX se asociaz, n mod automat, un contor.

    Numele contorului este acelai cu numele cadrului sau al comenzii care genereaz numrul (cu excepia celor fr \). n continuare, este prezentat lista contorilor utilizai, pentru controlul numerotrii, n categoriile standard de documente LaTeX.

    part paragraf figure enumi chapter subparagraf table enumii section page footnote enumiii subsection equation mpfootnote enumiv subsubsection

    Contorii enumi - enumiv sunt folosii n cadrul enumerate ncuibat: enumi pentru primul nivel (exterior), enumii pentru urmtorul, etc.(subseciunea 2.3.4). Contorul mpfootnote numr notele de subsol (footnotes), ntr-un cadru minipage (subseciunea 2.3.13). n plus fa de cele de mai sus, un cadru creat utiliznd comanda \newtheorem (seciunea 2.5) are un contor cu acelai nume, cu excepia situaiei n care un argument opional specific numerotarea, similar cu cea din alt cadru.

    Valoarea unui contor este un ntreg, n general nenegativ. Numerele multiple sunt generate cu contori diferii; de exemplu, cifrele 2 i 4 din Subseciunea 2.4 sunt generate de contorii section i respectiv subsection. Valoarea unui contor este iniializat la zero i este incrementat, de ctre comenzile sau cadrele corespunztoare. De exemplu, contorul subsection este incrementat, de comanda \subsection, nainte de generarea numrului subseciunii i este resetat, la zero, cnd contorul section este incrementat, astfel nct numrul subseciunii ncepe, ntr-o nou seciune, de la unu (a se vedea i exemplul 2.48).

    Contorul page este folosit pentru numerotarea paginilor ntr-un document. Acesta difer de ali contori, prin faptul c este incrementat dup

  • 2.4. VARIABILE INTERNE LaTeX 71 ____________________________________________________________________________

    generarea numrului paginii; de exemplu, comanda \setcounter{page}{27} face ca pagina curent s capete numrul 27. Din acest motiv, contorul page este iniializat la unu n loc de zero. Stilul numerotrii este definit prin comanda \pagenumbering (seciunea 2.9).

    n continuare, se descriu comenzile ce opereaz asupra contorilor: \addtocounter{ctr}{num}

    Incrementeaz contorul ctr cu valoarea specificat de argumentul num. \newcounter{newctr}[within]

    Definete un nou contor, cu numele newctr, iniializat la zero, cu valoarea numeric (returant de \thenewctr) afiat n stilul definit prin \arabic{newctr}. Este o declaraie global i nu poate fi folosit ntr-un fiier inclus, declarat cu comanda \include. Se utilizeaz doar n preambul (a se vedea i subseciunea 2.3.12). newctr este o secven de caractere, diferit de numele unui contor

    deja existent. within specific numele unui contor deja definit. Dac acest argument

    este prezent, atunci newctr este resetat la zero, ori de cte ori contorul within este incrementat prin comenzile \stepcounter sau \refstepcounter.

    \refstepcounter{ctr} \stepcounter{ctr}

    Comenzile incrementeaz valoarea contorului ctr cu unu, resetnd valoarea oricrui contor numerotat n interiorul acestuia. De exemplu, contorul subsection este numerotat n interiorul contorului section care, pentru clasele de documente report sau book, este numerotat n interiorul contorului chapter. n plus, comanda \refstepcounter declar valoarea curent returnat de \ref ca fiind textul generat de