Sunteți pe pagina 1din 114

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<ENTER>
Ca urmare, pe ecran apar mesajele:
This is TeX,Version 3.14159 (MiKTeX 1.20)
(ex1.tex
LaTeX2e <1998/12/01> patch level 1
Babel <v3.6x>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}
\pageref{inceput}este vorba despre...
\end{document}

de

la

pagina

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 "raggedright".
\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

____________________________________________________________________________

Textul precedent

\topsep + \parskip [+ \partopsep]


Label
\labelwidth

\itemindent

Elementul 1
Paragraful 1

\rightmargin

\leftmargin

\listparindent

\parsep
Elementul 1
Paragraful 2

\itemsep + \parsep

Label

Elementul 2

\topsep + \parskip [+ \partopsep]

Text ce urmeaza listei

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

____________________________________________________________________________
y

(2,2)

2
(-2.1,1)

1
originea
x

-2.1

2
unitate de
lungime

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


argumentul gros specific grosimea liniei.

groas,

iar

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)\setle
ngth{\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
chapter
section
subsection
subsubsection

paragraf
subparagraf
page
equation

figure
table
footnote
mpfootnote

enumi
enumii
enumiii
enumiv

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 comanda \thectr.
\setcounter{ctr}{num}
Seteaz valoarea contorului ctr la num. Este o declaraie global.
\value{ctr}
Genereaz valoarea contorului ctr, care poate fi astfel folosit ntr-o
expresie. Este utilizat, cu precdere, n argumentul num al comenzilor

72

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________

\setcounter sau \addcounter. De exemplu, comanda


\setcounter{cont}{\value{page}} seteaz contorul cont
la valoarea curent a contorului page.
Comanda \usecounter{ctr}
(subseciunea 2.3.12).

este folosit n cadrul

list

Observaie. Comenzile \setcounter i \addcounter afecteaz doar contorul


specificat. De exemplu, schimbarea contorului section prin aceste comenzi nu afecteaz
contorul subsection.


Exemplul 2.48
\documentclass{report}
\begin{document}
\setcounter{footnote}{17}
Deoarece\footnote{...}
\addtocounter{footnote}{-2}
un contor\footnote{...} este\\
incrementat \^\i nainte de
utilizare,\\
el trebuie setat la valoarea\\
cu unu mai mic\u a dec\^at
num\u arul dorit.
\end{document}


Urmtoarele comenzi tipresc valoarea contorului ctr, n formatul
indicat:
\alph{ctr} Litere latine mici (valoarea lui ctr trebuie s fie mai mic dect
27).
\Alph{ctr} Litere latine mari (valoarea lui ctr trebuie s fie mai mic dect
27).
\arabic{ctr} Cifre arabe.
\roman{ctr} Cifre romane mici.
\Roman{ctr} Cifre romane mari.
\fnsymbol{ctr} Genereaz simboluri pentru not de subsol. Poate fi
folosit doar n modul matematic. Valoarea argumentului ctr trebuie s
fie mai mic dect 10.

2.4. VARIABILE INTERNE LaTeX

73

____________________________________________________________________________

\thectr Tiprete valoarea contorului ctr.


Pentru a schimba numerotarea seciunilor i subseciunilor, se folosete
comanda \renewcommand (seciunea 2.5). De exemplu, comenzile
\renewcommand{\thesection}{Roman{section}}
\renewcommand{\thesubsection}{\thesection-{Alph{subsection}}

asigur tiprirea seciunii 2, cu cifra II i respectiv a subseciunii 2.4, sub forma


II-D.

2.4.2 Lungimi i designul unei pagini


n aceast accepiune, prin lungime se nelege msura unei distane. n
LaTeX, o lungime explicit este exprimat, ntr-un anumit sistem dimensional,
printr-un numr zecimal cu semn (+ implicit sau explicit), adic
<parte ntreag>.<parte zecimal><unitate_de_msur>,
unde unitate_de_msur poate fi unul din simbolurile listate n continuare:
cm
em
ex
in
pc
pt
mm

Centimetri.
Un em este egal cu limea literei M n fontul curent.
Un ex este egal cu nlimea literei x n fontul curent.
Inch.
Picas (1pc = 12pt).
Points (1in = 72.27pt).
Milimetri.

O alt modalitate de specificare a distanelor este realizat prin comenzi de tip


lungime, care au sau returneaz o valoare reprezentnd o lungime. De exemplu,
valoarea comenzii \parindent specific limea indentrii, la nceputul
fiecrui paragraf, i.e. distana, de la marginea din stnga a paragrafului, la care
ncepe prima linie a acestuia.
Lungimile pot fi rigide, (de exemplu 1.5em sau \parindent) sau
elastice. Acestea din urm pot varia, iar spaiul specificat de o asftel de
lungime se poate lrgi sau ngusta, conform cerinelor. De exemplu, spaiile
dintre cuvinte variaz ntr-un paragraf justified, astfel nct fiecare rnd s aib
aceeai lungime.
Urmtoarele comenzi fac parte din categoria lungimi i permit definirea
parametrilor de stil ai unui text, i.e. designul acestuia:

74

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________

\parindent Limea indentrii la nceput de paragraf. Este setat la zero


ntr-un parbox. Valoarea sa poate fi schimbat oriunde.
\textheight nlimea textului n pagin, i.e. a corpului paginii (fig. 2.5).
\textwidth Limea textului n pagin (fig. 2.5). Valoarea sa poate fi
schimbat doar n preambul.
\parskip Distana, pe vertical, dintre dou paragrafe consecutive. Uzual,
aceast distan este zero (cu excepia documentelor din clasa
letter). Este o lungime elastic, astfel nct se poate extinde pentru a
aduga spaiu vertical, ntre paragrafe, cnd acioneaz declaraia
\flushbottom, descris n aceast subseciune. Valoarea sa poate fi
schimbat, oriunde, n fiierul surs.
\baselinskip Distana normal, pe vertical, de la baza unui rnd la baza
rndului urmtor, n acelai paragraf. Depinde de mrimea fontului
curent (seciunea 2.6). Dac rndul conine obiecte nalte, atunci
aceast distan poate fi mai mare.
Observaie. Numrul de rnduri, pe o pagin ce conine doar un singur paragraf, este
raportul dintre valoarea lungimii definite de \textheight i valoarea definit de
\baselineskip.


Comanda \baselinestrech nu este o lungime. Ea returneaz un
numr zecimal, cu valoarea implicit egal cu unu i care poate fi modificat
prin comanda \renewcommand (seciunea 2.5).
Urmtoarele dou comenzi definesc lungimi elastice.
\fill Definete o lungime elastic avnd, n mod natural, valoarea zero i
posibilitatea de a se extinde la o valoare pozitiv arbitrar. Dac aceast
comand este multiplicat cu un numr zecimal, ea definete o lungime
rigid; de exemplu 1\fill sau 0.7\fill sunt lungimi rigide,
ambele cu valoarea 0in.
\strech{dec_num} Definete o lungime elastic, avnd, n mod natural,
valoarea zero i posibilitatea de a se extinde de dec_num ori valoarea
definit de \fill, unde argumentul dec_num este un numr zecimal
cu semn (i.e. un semn opional, urmat de un ir de cifre i un punct
zecimal opional).

2.4. VARIABILE INTERNE LaTeX

75

____________________________________________________________________________

Urmtoarele comenzi permit modificarea lungimilor.


\newlength{\cda} Declar parametrul \cda ca fiind o comand de tip
lungime, unde cda este numele unei comenzi ce nu a fost nc definit.
Valoarea definit de \cda este iniializat la zero.
\setlength{\cda}{lun} Seteaz valoarea comenzii de tip lungime \cda
la valoarea argumentului lun.
\addtolength{\cda}{len} Seteaz valoarea comenzii de tip lungime
\cda la valoarea sa curent plus valoarea argumentului lun.
\settowidth{\cda}{text}
\settoheight{\cda}{text}
\settodepth{\cda}{text} Seteaz valoarea comenzii de tip lungime
\cda la limea, nlimea i respectiv adncimea argumenului text .
O pagin tiprit are trei pri: header-ul, corpul textului i footer-ul
(fig. 2.5). Dimensiunile acestora sunt determinate de parametrii de stil. Stilul
paginii specific coninutul header-ului i al footer-ului. Paginile din stnga i
din dreapta pot avea parametrii, respectiv, diferii. n stilul fa-verso, paginile
pare sunt pagini din stnga, respectiv cele impare sunt pagini din dreapta. La
tiprirea pe o singur fa, toate paginile sunt considerate pe dreapta.
Urmtoarele comenzi permit definirea stilului unei pagini.
\pagestyle{style} Este o declaraie ce specific stilul paginii curente.
Opiunile style standard sunt urmtoarele:
plain - Header-ul este gol, footer-ul conine doar numrul paginii.
Este stilul implicit al paginii.
empty - Att header-ul ct i footer-ul sunt goale.
headings - Header-ul conine informaia determinat de categoria
documentului (uzual, este un header asociat unitii secionale),
precum i numrul paginii; footer-ul este gol.
myheadings - La fel ca headings, cu excepia faptului c
informaia din header (fr numrul paginii) este specificat
prin comenzile \markboth i \markright, descrise n
aceast subseciune.
\thispagestyle La fel ca \pagestyle, cu excepia faptului c se aplic
doar paginii curente (cea care tocmai urmeaz s fie decupat de
ctre TeX). Este o declaraie global.

76

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________

1 in
\topmargin
1 in

Header

\oddsidemargin sau
\evensidemargin

\headheight
\headsep

\textwidth
\marginparwidth
N ota
m arginala

Corpul paginii
\textheight

\footheight

\marginparsep

\pageheight

Footer

\footskip

\pagewidth
Fig. 2.5 - Parametrii de stil ai paginii; la paginile pare, notele marginale sunt n stnga corpului
textului.

\markright{right_head}
\markboth{left_head}{right_head} Aceste comenzi specific urmtoarea
informaie coninut n header, pentru stilurile de pagin headings i
myheadings:
pentru pagina din stnga, header-ul este definit de argumentul
left_head al ultimei comenzi \markboth, ce apare nainte de
sfritul paginii;
pentru pagina din dreapta, header-ul este definit de argumentul
right_head al ultimei comenzi \markright sau \markboth din

2.4. VARIABILE INTERNE LaTeX

77

____________________________________________________________________________

pagin, sau, dac nu exist nici una, al ultimei comenzi


corespunztoare, ce apare nainte de nceputul paginii.
n stilul headings, comenzile de secionare seteaz header-ele paginilor cu
ajutorul comenzilor \markboth i \markright astfel:
Stilul de tiprire
fa-verso
o singur fa
___________________

Comanda
\markboth(*
\markright
\markright
*) specific un header
vid pe pagina din
dreapta

Clasa documentului
article
book, report
\chapter
\section
\section
\subsection
\chapter
\section
______________ ______________

n mod implicit, prima pagin are header-ul vid. Dac nu se dorete


acest lucru, atunci se poate genera o prim pagin goal, cu ajutorul cadrului
titlepage.
\pagenumbering{num_style} Specific stilul numerelor paginilor i
seteaz valoarea contorului page la unu (subseciunea 2.4.1). Este o
declaraie global. Valorile posibile ale argumentului num_style sunt :
arabic Cifre arabe.
roman Cifre romane mici (i, ii, etc.).
Roman Cifre romane mari (I, II, etc.).
alph Litere latine mici.
Alph Litere latine mari.
Comanda \pagenumbering redefinete valoarea returnat de
\thepage ca fiind \num_style{page} (seciunea 2.4.1).
\twocolumn[text] ncepe o nou pagin, executnd \clearpage i
ncepe tiprirea pe dou coloane. Dac argumentul text este prezent,
atunci este tiprit ntr-un parbox pe dou coloane, la nceputul noii
pagini.
\onecolumn ncepe o nou pagin, executnd comanda \clearpage i
ncepe tiprirea pe o singur coloan.

78

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________

\flushbottom nlimea textului, pe fiecare pagin, este aceeai, prin


adugarea, cnd este necesar, a unui spaiu vertical, de dimensiune
corespunztoare, ntre paragrafe.
\raggedbottom Anuleaz efectul comenzii \flushbottom. n LaTeX,
se consider implicit \raggedbottom, cu excepia cazului cnd
acioneaz opiunea twoside a comenzii \documentclass
(subsubseciunea 2.2.5.1)
Majoritatea parametrilor de stil ce permit designul unei pagini sunt
prezentai n fig. 2.5, n care dreptunghiul exterior reprezint marginile coalei.
Aceti parametri sunt toi lungimi rigide i pot fi schimbai doar n preambulul
fiierului cu extensia .tex (subseciunea 1.1). Paginile impare folosesc
\oddsidemargin, respectiv cele pare comanda \evensidemargin. Nu
este figurat parametrul \topskip, reprezentnd minimul distanei msurate
de la marginea superioar a corpului figurii la punctul de referin al primei
linii de text; el acioneaz ca o comand \baselineskip.

2.4.3 Parametrii de stil pentru ecuaii matematice


Atunci cnd se dorete modificarea stilului n care sunt scrise ecuaiile,
trebuie modificai aa-numiii parametri de stil asociai acestor obiecte. n
general, aceasta nu este o aciune recomandat, deoarece valorile implicite ale
parametrilor de stil au fost stabilite, n LaTeX, pe baza anumitor reguli
tipografice (reguli ce au izort din cerinele editurilor din SUA).
Parametrii de stil ai ecuaiilor sunt comenzi de tip lungimi (seciunea
2.4.2). Iat, n continuare, descrierea lor.
\jot Definete dimensiunea unui spaiu vertical suplimentar, adugat ntre
dou linii consecutive, ntr-un cadru eqnarray sau eqnarray*
(subseciunea 2.3.5).
\mathindent Definete indentarea unei formule, msurat de la marginea
din stnga a paragrafului, cnd se folosete opiunea fleqn pentru
categorii (clase) de documente (subsubseciunea 2.2.5.1).
\abovedisplayskip
Definete dimensiunea spaiului suplimentar,
adugat deasupra unei formule lungi cu excepia cazului n care se
folosete opiunea fleqn pentru categorii de documente, caz n care se

2.4. VARIABILE INTERNE LaTeX

79

____________________________________________________________________________

consider lungimea definit de comanda \topsep. Lungimea definit


este elastic.
\belowdisplayskip
Definete dimensiunea spaiului suplimentar,
adugat sub o formul lung cu excepia cazului n care se folosete
opiunea fleqn pentru categorii de documente, caz n care se
consider lungimea definit de comanda \topsep. Lungimea definit
este elastic.
\abovedisplayshortskip
Definete spaiul suplimentar, adugat
deasupra unei formule scurte cu excepia cazului n care se folosete
opiunea fleqn pentru categorii de documente, caz n care se
consider valoarea lungimii definite de comanda \topsep. nceputul
unei formule scurte este situat la dreapta punctului unde sfrete linia
precedent. Lungimea definit este elastic.
\belowdisplayskip Definete spaiul suplimentar adugat la stnga unei
formule scurte cu excepia cazului n care se folosete opiunea
fleqn pentru categorii de documente, situaie n care se consider
valoarea lungimii definite de comanda \topsep. Lungimea definit
este elastic.
Formatul sau stilul de tiprire al numrului ecuaiei este controlat de
comanda \theequation, ce poate fi eventual redefinit. De exemplu, pentru
categoria de documente book, stilul de tiprire \theequation este
predefinit ca fiind {\thechapter.\arabic{equation}}; n
consecin, numrul formulei a 3-a din capitolul 2 este tiprit (2.3). Acest stil
nu mai este valabil dac se editeaz o formul ntr-un document din categoria
report (a se vedea i exemplul 2.20 din subseciunea 2.3.6). Stilul de
numerotare poate fi, ns, redefinit, eventual doar local (i.e. doar pentru un
grup de formule din document), cu ajutorul comenzii \renewcommand
(subseciunea 2.5.1).
Observaie. n cazul n care se dorete ca stilul de tiprire al numrului unei formule
s fie modificat, la comanda
\renewcommand{\theequation}{noua definiie a stilului de numerotare}
doar pentru acea formul din document, i.e. local, atunci ntregul grup de comenzi asociate
formulei, ncepnd de la \renewcommand pn la \end{equation}, trebuie inclus ntre
acolade { i }. n afara acestor acolade, definiia comenzii \theequation este cea implicit
pentru clasa documentului respectiv.

80

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________

n continuare este prezentat un exemplu de modificare local a stilului


de numerotare a formulelor.
Exemplul 2.49
\documentclass{report}
\begin{document}
Iat\u a un exemplu de formul\u a scris\u a cu parametrii de
stil nemodifica\c ti.
Defini\c tia transformatei Laplace a semnalului $f(t)$ este:
\begin{equation}
F(s)=\int_{0}^{\infty}f(t)e^{-st}dt
\end{equation}
Acum se modific\u a stilul de tip\u arire al contorului
\verb|equation|.
Num\u arul curent al capitolului este \arabic{chapter}.
{\renewcommand{\theequation}{\thechapter.\arabic{equation}a}
\begin{equation}
\label{ecu}x_i=x_{i-1}+x_{i-2}
\end{equation}
\addtocounter{equation}{-1}
\renewcommand{\theequation}{\thechapter.\arabic{equation}b}
\begin{equation}
\label{ecu+1}y=x_i \qquad i>10
\end{equation}
}
Acestea au fost trei exemple simple de formule.
\end{document}

2.4. VARIABILE INTERNE LaTeX

81

____________________________________________________________________________

2.4.4 Parametrii de stil privind cadrul table i


cadrul figure
Tabelele sau figurile sunt obiecte flotante (i.e. pot fi deplasate), create
cu cadrele table (subseciunea 2.3.18) i respectiv figure (subseciunea
2.3.7). O pagin flotant conine numai astfel de obiecte i nu conine text.
Aezarea n pagin a tabelelor sau figurilor se face, n LaTeX, respectnd, n
mod optim, reguli tipografice [Lamport 1994]. Iat cteva dintre acestea:
Obiectul (tabel sau figur) este tiprit n locul cel mai apropiat posibil, fa
de punctul unde a fost generat, care respect regulile de mai jos, cu
meniunea faptului c poziia, specificat prin valoarea h (here) a
argumentului placement, este prioritar fa de cea specificat prin valoarea
t (top).
Obiectul nu va fi tiprit pe o pagin ce precede locul din document unde
este definit cadrul (table sau figure) asociat.
O figur nu va fi tiprit naintea unei figuri definite anterior, iar un tabel
nu va fi tiprit naintea unui tabel precedent definit.
Obiectul poate s apar doar n poziia permis de valoarea argumentului
opional placement (din definiia cadrelor figure, respectiv tabular)
sau, n lipsa acestuia, de valoarea implicit tpb.
O figur sau un tabel nu poate depi o pagin.
Modificarea, n preambulul documentului, a urmtorilor parametri de
stil se aplic ncepnd cu prima pagin. Schimbrile, intervenite ulterior, se
aplic ncepnd cu pagina imediat urmtoare locului unde au fost specificate.
topnumber Definete un contor a crui valoare reprezint numrul maxim
de obiecte flotante, permise la nceputul unei pagini de text.
\topfraction Definete procentul maxim, din spaiul unei pagini, care
poate fi ocupat, n partea superioar a acesteia, de obiecte flotante.
Astfel, valoarea 0.25 specific faptul c primul sfert al paginii poate fi
alocat obiectelor flotante. Poate fi modificat prin comanda
\renewcommand.
bottomnumber Are aceeai semnificaie ca topnumber, cu excepia
faptului c obiectele sunt plasate n partea inferioar a paginii.
\bottomfraction Are aceeai semnificaie ca \topfraction, cu
excepia faptului c obiectele flotante sunt plasate n partea inferioar a
paginii.

82

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________

totalnumber Definete un contor, a crui valoare reprezint numrul


maxim de obiecte flotante care pot s apar, pe o pagin ce conine text,
oricare ar fi poziia acestora.
\textfraction Definete procentul minim, din spaiul unei pagini, dedicat
textului. Restul procentului, de 1-\textfraction, trebuie ocupat
de obiecte flotante. Valoarea sa poate fi redefinit la comanda
\renewcommand.
\floatpagefraction Definete procentul minim, din spaiul unei pagini,
care trebuie ocupat de obiecte flotante, limitnd astfel spaiul gol
permis pe o pagin flotant. Valoarea sa poate fi redefinit la comanda
\renewcommand.
dbltopnumber Analogul contorului topnumber pentru obiecte flotante,
aezate pe dou coloane, pe o pagin cu stilul twocolumn.
\dbltopfraction Analogul comenzii \topfraction pentru obiecte
flotante, aezate pe dou coloane, pe o pagin cu stilul twocolumn.
\dblfloatpagefraction Analogul comenzii \floatpagefraction
pentru o pagin flotant, cu stilul twocolumn.
\floatsep Definete spaiul vertical, adugat ntre obiectele flotante,
aezate n partea superioar sau inferioar a unei pagini de text.
\textfloatsep Definete spaiul vertical, adugat ntre obiectele flotante,
aezate n partea superioar sau inferioar a unei pagini de text i textul
respectiv.
\intextsep Definete spaiul vertical, adugat deasupra i dedesubtul unui
obiect flotant, aezat n centrul paginii de text, cu argumentul opional
h (here). Valoarea sa este o lungime elastic.
\dblfloatsep Analogul comenzii \floatsep pentru obiecte flotante, de
lime dubl dect a unei coloane, situate pe o pagin cu stilul
twocolumn. Valoarea sa este o lungime elastic.
\dbltextfloatsep Analogul comenzii \textfloatsep pentru obiecte
flotante, de lime dubl dect a unei coloane, situate pe o pagin cu
stilul twocolumn. Valoarea sa este o lungime elastic.

2.5. MACRODEFINIII

83

____________________________________________________________________________

2.5 MACRODEFINIII
De regul, compilatoarele lucreaz cu macrodefiniii numite, pe scurt,
macrouri. Un macrou reprezint, n esen, o secven de comenzi ce va fi
nlocuit, n timpul procesrii, cu definiia macroului respectiv. Din acest punct
de vedere, LaTeX poate fi considerat un pachet de macrouri.
Definiia unui macrou poate consta dintr-un text obinuit mpreun,
eventual, cu alte macrouri i/sau primitive TeX. Primitivele TeX sunt secvene
de control, recunoscute de TeX i care nu pot fi nlocuite cu alte comenzi.

2.5.1 Definirea comenzilor


Un macrou poate fi definit sau, respectiv, redefinit prin comenzile:
\newcommand{\cda}[arg][opt]{def}
\renewcommand{\cda}[arg][opt]{def}
Parametrii comenzilor au urmtoarele semnificaii:
cda Numele unei comenzi. n cazul comenzii \newcommand,
trebuie s nu fie numele unei comenzi deja definite i nu trebuie
s nceap cu end; n cazul comenzii \renewcommand,
trebuie s fie numele unei comenzi deja definite.
arg Un ntreg ntre 1 i 9, reprezentnd numrul de argumente al
comenzii \cda. Implicit, comanda definit/redefinit nu are nici
un argument.
opt Dac acest argument este prezent, atunci primul argument din
totalul de arg ale comenzii \cda este opional i are valoarea
implicit opt. Dac acest argument lipsete, atunci toate celelalte
argumente ale comenzii \cda sunt obligatorii.
def Reprezint textul nlocuit ori de cte ori se ntlnete comanda
\cda; un parametru, de forma #n n \cda, este nlocuit, cnd se
face aceast substituire, cu textul asociat parametrului cu
numrul n. def poate conine comenzi de definire a comenzilor
sau cadrelor, doar dac toate comenzile sau cadrele astfel
definite nu au argumente.
n exemplul urmtor se arat cum se poate crea, n modul matematic, o
comand simpl, care apare de mai multe ori n textul documentului.

84

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________

Exemplul 2.50
\documentclass{article}
\newcommand{\gn}{$\Gamma_{i}$}
\begin{document}
Fie \gn\ valoarea asociat\u a
m\u arimii $i$,\par
unde \gn\ este o norm\u a
euclidian\u a.
\end{document}
Observaie. Dup comanda \gn, s-a dat comanda \ (i.e. backslah urmat de caracterul
blank), deoarece TeX ignor caracterul blank plasat dup numele comenzii definite de
\newcommand.


Comanda \Gamma, din exemplul 2.50, poate fi folosit doar n modul
matematic i, de aceea, s-a folosit perechea de caractere $ i $, pentru
delimitarea ei ca argument def al comenzii \newcommand. Pe de alt parte,
comanda \gn nu poate fi folosit n modul matematic deoarece, la ntlnirea
ei, primul caracter $ determin TeX s ias din modul matematic i s ncerce
s execute \Gamma n modul paragraf. Dac \newcommand definete o
comand ce refer un obiect matematic (funcie, expresie, formul etc.) i care
va trebui repetat i n modul matematic, atunci, n argumentul def, se folosete
comanda
\ensuremath{expresie}
care asigur faptul c argumentul expresie (reprezintnd un ir de caractere i
comenzi ce descriu obiectul matematic n spe) este tiprit n modul
matematic, indiferent de modul curent (subseciunile 2.6 i 2.7).
Exemplul 2.51
\documentclass{article}
\newcommand{\func}[2]
{\ensuremath{
\mathit{var}(#1;#2)}
}
\begin{document}
Deoarece \func{5x}{y} \c si
\func{2x-1}{y}\par
reprezint\u a valori
aproximativ egale ale...
\end{document}

2.5. MACRODEFINIII

85

____________________________________________________________________________
Observaie. Comanda \mathit este valabil doar n modul matematic i permite
scrierea argumentului su cu litere italice (seciunea 2.7). Al doilea argument opional al
comenzii \newcommand specific faptul c \func este o comand cu dou argumente.
Parametrii #1 i #2 sunt nlocuii cu primul i, respectiv, al doilea argument al comenzii
\func, n momenul n care aceasta este apelat n textul documentului.


O comand poate fi definit i n funcie de alt comand, dup cum
reiese din exemplul urmtor.
Exemplul 2.52
\documentclass{article}
\newcommand{\func}[2]
{\ensuremath
{\mathit{var}(#1;#2)}}
\newcommand{\util}
{\func{2x}{0}}
\begin{document}
Valoarea \func{5x}{y} \c
si\par valoarea \util\
\end{document}


Parantezele rotunde, ( i ), din argumentul def, nu delimiteaz efectul
unei declaraii. Pentru a limita cmpul de aciune al unei declaraii, coninute n
argumentul def, trebuie adugate, n definiia comenzii, paranteze suplimentare,
de tip acolad { i }. Altfel, aciunea unei astfel de comenzi se poate extinde,
n mod nedorit, i n afara argumentului respectiv.
Exemplul 2.53
\documentclass{report}
\newcommand{\bun}[3]
{{#1}$({#2};{#3})$}
\newcommand{\rau}[3]
{#1$(#2;#3)$}
\begin{document}
Expresia \bun{\em func}{x}{4}
este tip\u arit\u a \par
corect, dar dup\u a \rau{\em
finc}{x}{4} totul \par apare
cu caractere italice, ca efect
\par al comenzii \verb|\em|
din primul\par argument al
comenzii \verb|\rau| .
\end{document}

86

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________
Observaie. Comanda \newcommand poate fi folosit i pentru abrevierea unor
comenzi, frecvent folosite ntr-un document. De exemplu, dac se editeaz multe ecuaii i se
dorete s se evite repetarea comenzilor \begin{equation] i \end{equation}, de
fiecare dat cnd se definete un cadru equation, atunci se pot folosi comenzile
\newcommand{\bee}{\begin{equation}}
\newcommand{\ene}{\end{equation}}
Acestea definesc grupul \bee \ene ca fiind echivalent cu comenzile LaTeX
\begin{equation}\end{equation}
Dac se folosesc foarte des ecuaii numerotate, atunci, n loc s se scrie, pentru fiecare
ecuaie, grupul \begin{equation}\label{} formula \end{equation}, se poate
utiliza comanda
\newcommand{\ec}[2]{\begin{equation}\label{#1}#2\end{equation}}
n care primul parametru specific eticheta, iar cel de-al doilea formula [Pusztai 1994].


n subseciunea 2.2.4, s-a exemplificat folosirea comenzii
\renewcommand. Programe scurte, ce utilizeaz \renewcommand, sunt
descrise n exemplul 2.43 (subseciunea 2.3.20) i n exemplul 2.49
(subseciunea 2.4.3).

2.5.2 Definirea cadrelor


Un cadru poate fi definit sau, respectiv, redefinit, utiliznd comenzile:
\newenvironment{num}[arg][opt]{begdef}{enddef}
\renewenvironment{num}[arg][opt]{begdef}{enddef}
Parametrii acestor comenzi au urmtoarele semnificaii:
num - Reprezint numele cadrului; poate fi orice secven de litere, numere
sau caracterul *, care nu ncepe cu end. n cazul comenzii
\newenvironment, trebuie s nu mai existe nici un alt cadru cu
numele num i nici o alt comand \num. n cazul comenzii
\renewenvironment, cadrul cu numele num trebuie s fie deja
definit.
arg - Este un ntreg cuprins ntre 1 i 9, reprezentnd numrul de argumente ale
cadrului nou definit. Implicit, cadrul nou definit/redefinit nu are nici un
argument.

2.5. MACRODEFINIII

87

____________________________________________________________________________

opt Dac acest argument este prezent, atunci primul din cele arg argumente
ale cadrului este opional i are valoarea implicit opt. Dac acest
argument lipsete, atunci toate argumentele cadrului sunt obligatorii.
begdef Reprezint textul folosit, n fiierul surs, pentru a nlocui
instruciunea \begin{num}; un parametru de forma #n n begdef este
nlocuit cu textul corespunztor argumentului cu numrul n al comenzii
\begin{num}, n momentul n care are loc aceast substituire.
enddef Reprezint textul folosit, n fiierul surs, pentru a nlocui
instruciunea \end{num}. Nu este permis s aib parametri de tip
argument.
n general, un nou cadru este definit folosind un cadru deja existent.
Exemplul 2.54
\documentclass{report}
\newenvironment{evident}
{\begin{itemize}\em}
{\end{itemize}}
\begin{document}
Acesta este un exemplu de
cadru\par definit de
utilizator.
\begin{evident}
\item Acest cadru, numit
\verb|evident|,\par
genereaz\u a o list\u a de
elemente\par
scrise cu caractere italice.
\item Cadrul \verb|evident|
este scris\par
folosind cadrul \verb|itemize|
din\par
\LaTeX\ \c si comanda
\verb|\em|.
\end{evident}
Acum a luat sf\^ar\c sit lista
generat\u a\par
de cadrul \verb|evident|.
\end{document}

Observaie. Argumentele begdef i enddef pot conine comenzi de definire a


comenzilor sau de redefinire a cadrelor, doar dac toate comenzile sau cadrele pe care le
acestea le definesc nu au, la rndul lor, argumente. Parantezele de delimitare ale unui cadru,
care a fost definit sau redefinit cu \newenvironment, respectiv cu

88

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________
\renewenvironment, nu delimiteaz i cmpul de aciune al unei declaraii coninute n
argument. Acest aspect a fost evideniat i n cazul comenzii \newcommand (subseciunea
2.5.1). Comanda \renewenvironment poate fi folosit, doar dac utilizatorul cunoate
foarte bine cadrul pe care dorete s-l redefineasc.


Exemplul 2.55
\documentclass{report}
\newenvironment{descr}[1]{\begin{quote}\textit{#1}:}
{\end{quote}}
\begin{document}
Observa\c ti cum o nou\u a structur\u a logic\u a -\^\i n acest
exemplu, o descriere etichetat\u a a unui singur element poate fi definit\u a \^\i n func\c tie de un cadru deja
existent.
\begin{descr}{Ceai}
Aceast\u a descriere a ceaiului a fost generat\u a de cadrul
\verb|descr|.
\end{descr}
Urmeaz\u a alt text.
\end{document}

Observaie Comanda \textit{txt} are ca efect tiprirea argumentului txt cu


caractere italice.

2.5.3 Definirea cadrelor de tip teorem


Comanda \newtheorem permite definirea unui cadru n care se pot
scrie teoreme, leme, propoziii etc. i poate avea una din urmtoarele sintaxe:
\newtheorem{env_name}{caption}[within]
\newtheorem{env_name}[numbered_like]{caption}

2.5. MACRODEFINIII

89

____________________________________________________________________________

Parametrii comenzilor au, respectiv, urmtoarele semnificaii:


env_name Este un ir de litere, reprezentnd numele teoremei, (lemei,
axiomei, etc.) ce trebuie scrise i care trebuie s difere de numele unui
alt cadru sau contor.
caption Textul tiprit la nceputul cadrului, chiar nainte de numr, de
exemplu Teorem sau Lem.
within Numele unui contor deja definit, asociat, n general, unei uniti
secionale (capitol, seciune etc.) i care permite resetarea contorului
teoremei, n cadrul unitii secionale respective. Dac acest argument
este prezent, atunci comanda \theenv_name este definit prin
\thewithin.\arabic{env_name},
iar contorul env_name va fi resetat de una din comenzile
\stepcounter{within}
sau
\refstepcounter{within}
(subseciunea 2.4.1). Dac argumentul within lipsete, atunci
\theenv_name este definit prin \arabic{env_name}.
numbered_like Numele unui cadru de tip teorem, deja definit. Dac acest
argument este prezent, atunci env-name va fi numerotat n aceeai
secven (utilizndu-se acelai contor) ca i cadrul numbered_like i va
declara valoarea \ref curent, ca fiind textul generat de comanda
\thenumbered_like.
Cu excepia cazului n care apare argumentul opional numbered_like,
comanda \newtheorem creeaz un contor numit env_name, iar cadrul
declar valoarea curent a \ref ca fiind textul generat de \theenv_name.
Exemple 2.56
\documentclass{report}
\begin{document}
\newtheorem{guess}{Propozi\c tia}
Dup\u a cum se \c stie, dou\u a matrice echivalente au acela\c
si rang. Av\^and \^\i n vedere acest lucru, din teorema
anterioar\u a rezult\u a imediat urm\u atorul enun\c t.
\begin{guess}
Rangul unei matrice este egal cu num\u arul valorilor sale
singulare nenule.
\end{guess}
\end{document}

90

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________


Prezena argumentului opional final al comenzii \newtheorem
determin numerotarea cadrului, n interiorul unitii secionale respective.
Exemplul 2.57
\documentclass{report}
\renewcommand{\chaptername}{Capitolul}
\newtheorem{guess}{Propozi\c tia}[chapter]
\begin{document}
\chapter{Rangul unei matrice}\label{unu}
Aceasta este prima propozi\c tie din capitolul \ref{unu}:
\begin{guess}
Rangul unei matrice este egal cu num\u arul valorilor sale
singulare nenule.
\end{guess}
\end{document}

2.5. MACRODEFINIII

91

____________________________________________________________________________

Argumentul opional numbered_like se folosete, dac se dorete ca


structuri distincte, de tip teorem, s fie numerotate secvenial, cu acelai
contor.
Exemplul 2.58
\documentclass{report}
\newtheorem{teor1}{Teorema}
\newtheorem{teor2}[teor1]
{Axioma}
\begin{document}
\begin{teor1}
Unele teoreme sunt
numerotate.
\end{teor1}
\begin{teor2}
To\c ti oamenii sunt
muritori.
\end{teor2}
\end{document}


Uneori, este indicat s se precizeze autorul teoremei sau un alt nume,
sub care rezultatul respectiv este celebru.
Exemplul 2.59
\documentclass{article}
\newtheorem{teor1}{Teorema}
\begin{document}
\begin{teor1}[Schur]
Fie perechea de\par
matrice reale p\u atrate
(A,B), ...
\end{teor1}
\end{document}


Observaie. n general, este recomandat ca declaraia \newtheorem s figureze n
preambulul fiierului surs.


Observaie. n sintaxa comenzilor \newcommand, \newenvironment i
\newtheorem este interzis folosirea spaiilor ntre argumente. De exemplu, corect este
sintaxa \newtheorem{teor}{Teorema} i nu \newtheorem{teor} {Teorema}.

92

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________

2.5.4 Pachetul ifthen


Pachetul ifthen pune la dispoziie comenzile \ifthenelse i
\whiledo, pentru scrierea de programe ce conin teste i bucle. Pachetul
ifthen este ncrcat la comanda \usepackage{ifthen}. n continuare,
sunt descrise sintaxele i modurile de utilizare ale comenzilor din acest pachet.
\ifthenelse{test}{then_txt}{else_txt}
Este o instruciune condiional, iar argumentul test este o expresie
logic care, evaluat n LaTeX, poate avea valoarea adevrat sau fals.
Dac argumentul test are valoarea adevrat, atunci se proceseaz
argumentul then_txt; dac test are valoarea fals, se proceseaz else_txt.
Argumentul test poate fi exprimat prin urmtoarele expresii:
num1 op num2 Este o relaie numeric, unde op poate fi unul din
urmtoarele trei caractere: > = <, iar num1 i num2 sunt
numere. De exemplu, \value{page}>17 este evaluat la
valoarea adevrat, dac i numai dac valoarea curent a
contorului page este mai mare ca 17.
\equal{str1}{str2} Este evaluat la valoarea adevrat, dac i
numai dac TeX consider str1 i str2 ca fiind egale. TeX poate
considera dou argumente (reprezentnd comenzi) ca fiind
diferite, chiar dac au drept rezultat tiprirea aceluiai text. De
exemplu \today i May 1, 2001 nu sunt egale, chiar dac
prin aplicarea lor rezult textul: May 1, 2001. TeX va considera
argumentele str1 i str2 ca fiind egale dac, prin nlocuirea
fiecrei comenzi din fiecare argument cu definiia sa, ele sunt
identice.
\lengthtest{len1 op len2} Evalueaz relaia ntre lungimile
specificate de argumentele len1 i len2; op poate fi unul din
urmtoarele trei caractere: >
=
<. De exemplu,
\length{\parindent<1cm} are valoarea adevrat, dac
i numai dac valoarea curent a declaraiei \parindent este
mai mic dect 1cm. n procesul de evaluare, o lungime elastic
este nlocuit cu valoarea sa natural (subseciunea 2.4.2).

2.5. MACRODEFINIII

93

____________________________________________________________________________

\isodd{num} Este evaluat la valoarea adevrat, dac i numai dac


numrul specificat de argumentul num este impar (odd). Este
folosit pentru a genera texte diferite, n funcie de paritatea
paginilor. Totui, comanda \isodd{\value{page}} nu
lucreaz corect, deoarece contorul page poate avea, de
exemplu, valoarea curent 42, chiar dac textul procesat se
extinde pe pagina cu numrul 43. Pentru a rezolva aceast
problem, se folosesc comenzile \label{key} i
\isodd{\pageref{key}}. n momentul cnd se
proceseaz header-ul sau footer-ul unei pagini, contorul page
are chiar valoarea presupus de utilizator,
\boolean{nam} Este evaluat la valoarea curent a registrului logic
nam, unde nam poate fi o secven de litere. Acest registru
trebuie definit de comanda \newboolean{name}. Valoarea
sa este setat, prin comanda \setboolean{nam}{bool},
unde parametrul bool este fie true (adevrat), fie false
(fals).
Expresiile complexe, reprezentate de argumentul test, pot fi construite
din expresii mai simple, ntre care se aplic operatorii logici
\and, \or i \not, cu parantezele de grupare specificate de
caracterele \( i \).
\whiledo{test}{body}
Proceseaz n mod repetat argumentul body, pn ce argumentul logic
test devine fals, unde test este descris la fel ca n cazul instruciunii
\ifthenelse. Nu execut nimic dac, iniial, test are valoarea fals.
Exemplul 2.60
\documentclass{article}
\usepackage{ifthen}
\newcommand{\test}[1]
{\ifthenelse{#1=1}{bun}{r\u au}}
\begin{document}
Variantele pot fi:\par
om \test1 sau om \test2.
\end{document}

94

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________

2.5.5 Comenzi fragile


Comenzile LaTeX pot fi mprite n categoriile: fragile sau robuste.
Comenzile de schimbare de stil (sau font), descrise n seciunea 2.6, precum i
majoritatea comenzilor din modul matematic (seciunea 2.7) sunt robuste.
Orice comand cu cel puin un argument opional sau care accept o form cu
* este fragil.
Unele argumente ale unor comenzi se numesc mobile. O comand
fragil care apare ntr-un argument mobil produce eroare, dac nu este protejat
prin comanda \protect. Aceast comand de protejare se aplic doar
comenzii pe care o precede; comenzile fragile care, la rndul lor, apar n
argumentul comenzii respective, trebuie s fie i ele protejate cu alte comenzi
\protect. Urmtoarele comenzi i cadre au argumente mobile:

Comenzile cu un argument ce poate figura n cuprins, n lista de figuri sau


n lista de tabele, respectiv asociate documentului: \addcontentsline,
\addtocontents, \caption, precum i comenzile de secionare
(subsubseciunea 2.2.5.3). Dac un argument opional este folosit la o
comand \caption sau la o comand de secionare, atunci chiar acesta
este argumentul mobil.
Comenzile de tiprire la terminal: \typeout i \typein. Argumentul
opional al comenzii \typein nu este mobil.
Comenzile utilizate la generarea heading-urilor: \markboth (ambele
argumente sunt mobile) i \markright (subseciunea 2.4.2). Comenzile
de secionare deja menionate intr, i ele, n aceast categorie.
Cadrul letter (definit n categoria de documente letter).
Comanda \thanks.
Argumentul opional al comenzii \bibitem.
declaraia @, ntr-un cadru array sau tabular. (Dei @ nu este o
comand, totui comenzile fragile dintr-o @-expresie trebuie protejate
prin comanda \protect, ca i n cazul n care ar figura ntr-un argument
mobil.)

Toate comenzile de tip lungimi (subseciunea 2.4.2) sunt robuste i nu


trebuie precedate de o comand \protect. Comanda \protect nu trebuie
s apar ntr-un argument al unei comenzi \setcounter sau, respectiv,
\addtocounter.

2.6. MODUL PARAGRAF

95

____________________________________________________________________________

2.6 MODUL PARAGRAF


Cnd TeX proceseaz un text, el se afl ntr-unul din urmtoarele
moduri: modul paragraf, modul matematic sau modul de la stnga la dreapta
(numit i modul LR, de la Left-to-Right). Modul normal n care proceseaz
TeX este modul paragraf. n modul paragraf, TeX consider intrrile ca o
secven de cuvinte i propoziii ce trebuie secionate pe rnduri, paragrafe i
pagini.
Modurile matematic i LR vor fi prezentate n seciunile urmtoare.

2.6.1 Fonturi
Stilul de tiprire al unui text, setat prin alegerea tipului i mrimii
fontului, este folosit pentru a indica structura logic a documentului.
Iat un exemplu privind diferite tipuri de fonturi disponibile n LaTeX.
Exemplul 2.61
\documentclass{article}
\begin{document}
\textup{Stil Upright. De
obicei, implicit.}\par
\textit{Stil Italic. Pentru
eviden\c tiere.}\par
\textsl{Stil Slanted. U\c sor
diferit de italic.}\par
\textsc{Stil small caps.
Utilizat mai rar.}\par
\textmd{Medium series. Adesea
implicit.}\par
\textbf{Boldface series.
Pentru titluri.}\par
\textrm{Roman family. Adesea
implicit.}\par
\textsf{Familia sans
serif.}\par
\texttt{Familia typewriter.}
\textnormal{Stil normal, acum
Roman.}
\end{document}

96

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________

Fiecrei comenzi de setare a stilului de tiprire i corespunde o


declaraie. Acestea sunt listate n tabelul urmtor.
Tabelul 2.1: Comenzi i declaraii de setare a stilului fontului
Comanda
Declaraia
Comanda
Declaraia
\textmd{text}
\textbf{text}
\textrm{text}
\textsf{text}
\texttt{text}

\mdseries
\bfseries
\rmfamily
\sffamily
\ttfamily

\textup{text}
\textit{text}
\textsl{text}
\textsc{text}
\textnormal{text}

\upshape
\itshape
\slshape
\scshape
\normalfont

De exemplu, text se poate tipri n stilul bold fie la comanda


\textbf{text}, fie la apelarea declaraiei {\bfseries text}.
Observaie. Nici una din comenzile sau declaraiile din tabelul 2.1 nu pot fi folosite n
modul matematic. Comenzile de schimbare a stilului de tiprire, n modul matematic, sunt
descrise n seciunea 2.7.


Mrimea implicit a fontului folosit la tiprire, n LaTeX, este 10pt,
dar aceasta poate fi setat, dup dorin, la 11pt sau 12 pt, conform opiunii
din comanda \documentclass (subsubseciunea 2.2.5.1)
Urmtoarele declaraii permit schimbarea mrimii fontului n cadrul
unui document, lsnd stilul acestuia nemodificat (stilul implicit este Roman.)
Tabelul 2.2 : Declaraii de setare a mrimii fontului
\tiny
\scriptsize
\footnotesize

\small
\normalsize

\large
\Large
\LARGE

\huge
\Huge

Observaie. Nici una din aceste comenzi nu poate fi folosit n modul matematic.
Toate sunt comenzi fragile.


Mrimea efectiv pe care o genereaz aceste declaraii depinde de
mrimea implicit a fontului cu care se tiprete textul documentului. n
exemplele urmtoare, mrimea implicit este 10pt.
Declaraia \normalsize produce mrimea implicit, comanda
\footnotesize genereaz mrimea corespunztoare scrierii notelor de
subsol, iar comanda \scriptsize produce mrimea adecvat scrierii
indicilor inferiori i superiori, n cazul formulelor tiprite cu \normalsize.

2.6. MODUL PARAGRAF

97

____________________________________________________________________________

Exemplul 2.62
\documentclass{article}
\begin{document}
{\tiny Exemplu}\par
{\scriptsize Exemplu}\par
{\footnotesize Exemplu}\par
{\small Exemplu}\par
{\normalsize Exemplu}\par
{\large Exemplu}\par
{\Large Exemplu}\par
{\LARGE Exemplu}\par
{\huge Exemplu}\par
{\Huge Exemplu}\par
\end{document}


Aceste declaraii pot fi combinate cu declaraiile sau comenzile de
selectare a fontului.
Exemplul 2.63
\documentclass{article}
\begin{document}
\sffamily un text scris\par
\textit{cu litere din}\par
\large ce \^\i n ce \Large
mai\par
mari \bfseries \c si mai \par
\LARGE groase.
\end{document}

2.6.2 Simboluri speciale i accente


n LaTeX, se pot genera simboluri speciale i accente ce nu sunt
comune limbii engleze. Ele permit inserarea, ntr-un text n limba englez, a
unor texte scurte redactate n alte limbi. Toate comenzile prezentate n aceast
seciune sunt robuste.
n tabelul 2.3, sunt prezentate cteva simboluri care nu sunt comune
limbii engleze i comenzile ce le produc; aceste simboluri pot fi generate att
n modul paragraf, ct i n modul LR.

98

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________

Tabelul 2.3 : Simboluri speciale permise doar n modurile paragraf i LR

n tabelul 2.4 sunt prezentate comenzile ce genereaz ase semne


speciale de punctuaie.
Tabelul 2.4 : Simboluri speciale (permise n orice mod)

Alte simboluri speciale i comenzile ce le genereaz au fost prezentate


la nceputul seciunii 2.2.
n tabelul 2.5 sunt prezentate comenzile ce permit generarea literei o, cu
diferite accente specifice altor limbi dect engleza. Aceste comenzi pot fi
folosite doar n modul LR i n modul paragraf. Ele se pot aplica, n forma
specificat, oricrei litere.
Tabelul 2.5 : Comenzi pentru generarea de accente aplicate literei o

Alte tipuri de accente, specifice limbii romne, au fost prezentate n


subseciunea 2.2.3.
Observaie. Comenzile \i i \j genereaz literele i, respectiv j fr punct deasupra.
Reaminitim c \i este folosit, pentru a construi litera , la comanda \^{\i} sau \^\i .

2.6. MODUL PARAGRAF

99

____________________________________________________________________________

2.6.3 Gestionarea rndurilor i a paginilor


n general, TeX realizeaz optim organizarea textului pe rnduri,
paragrafe i pagini, astfel nct fiecare rnd dintr-un paragraf (cu excepia,
eventual, a ultimului) i respectiv fiecare pagin (cu excepia, eventual, a
ultimei pagini) s fie pline. Uneori sunt, ns, necesare comenzi speciale n
acest scop. Ca o recomandare general, este bine ca formatarea textului s fie
ultimul aspect tratat n realizarea unui document n LaTeX. Altfel spus, nu se
ncepe rafinarea formatrii, nainte s se fi introdus tot textul.
2.6.3.1 Gestionarea rndurilor
\linebreak[num]
\nolinebreak[num]
Comenzile \linebreak i \nolinebreak foreaz i, respectiv,
inhib trecerea la un rnd nou. Parametrul opional num este un numr
ntre 0 i 4. O valoarea mai mare a lui num constituie o sugestie mai
puternic pentru a trece, respectiv pentru a nu trece la rndul nou. Dac
num este absent, atunci comenzile acioneaz, respectiv, ca n cazul
num = 4, adic trecerea la rndul nou este forat, respectiv interzis.
Un mesaj \hbox underfull avertizeaz c o comand \linebreak
genereaz spaii prea mari ntre cuvinte pe un rnd. Ambele comenzi
sunt fragile i pot fi folosite doar n modul paragraf.
\\[len]
\\*[len]
\newline
Efectul acestor comenzi este trecerea la un rnd nou, fr a se lsa
margini egale la stnga i la dreapta rndului curent (i.e. rndul curent
nu este justified). Argumentul opional al comenzii \\ adaug,
deasupra noului rnd, un spaiu vertical suplimentar de dimensiune len.
Forma cu * a comenzii \\ inhib trecerea la o pagin nou, nainte
de noul rnd. Comanda \newline poate fi folosit doar n modul
paragraf, ntr-un paragraf; ea genereaz un mesaj de avertizare \hbox
underfull, dac este utilizat la sfritul unui paragraf i, respectiv, un
mesaj de eroare, dac este utilizat ntre paragrafe. Comanda \\ se
comport n mod similar, cnd este utilizat n modul paragraf. Ambele
comenzi sunt fragile.

100

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________

\|Aceast comand permite desprirea n silabe: se trece la rndul


urmtor i se insereaz liniua de desprire la finele rndului curent.
Este o comand robust.
\hyphenation{cuvinte}
Sunt declarate permise puncte de desprire, unde cuvinte este o list de
cuvinte, separate prin spaii, iar fiecare punct de desprire, n lista
cuvinte, este marcat prin caracterul -. Este o declaraie global i
robust.
\sloppy
\fussy
Aceste declaraii controleaz trecerea la un rnd nou. Declaraia
\fussy este implicit i gestioneaz rndul, astfel nct previne spaii
prea mari ntre cuvinte. Declaraia \sloppy face ca LaTeX s nu fie
att de rigid cu spaierea cuvintelor. \sloppy are acelai efect ca
secvena de instruciuni
\begin{sloppypar} pare \end{sloppypar},
ce definete cadrul sloppypar. Argumentul pare reprezint mai
multe paragrafe pentru care este activ declaraia \sloppy.
Trecerea, de la un paragraf la altul, se face lsnd un rnd liber n text
sau la comanda \par.
2.6.3.2 Gestionarea paginilor
\pagebreak[num]
\nopagebreak[num]
Comenzile \pagebreak i \nopagebreak foreaz i, respectiv,
inhib trecerea la o nou pagin, n stilul onecolumn. Parametrul
opional num este un numr ntre 0 i 4. O valoare mai mare a lui num
constituie o sugestie mai puternic pentru a trece, respectiv pentru a nu
trece la pagina nou. Dac num este absent, atunci comenzile
acioneaz, respectiv, ca n cazul num = 4, adic trecerea la pagina nou
este forat, respectiv interzis. Dac sunt utilizate ntr-un paragraf,
aceste comenzi se aplic punctului imediat urmtor liniei pe care au fost
apelate. Dac este activ declaraia \flushbottom (subseciunea

2.6. MODUL PARAGRAF

101

____________________________________________________________________________

2.4.2), atunci se genereaz un mesaj de avertizare \vbox underfull, n


cazul n care \pagebreak are drept efect prea puine rnduri pe
pagin. Comanda \nopagebreak nu are efect, n cazul n care o alt
comand LaTeX a permis, n mod explicit, trecerea la pagin nou n
punctul specificat. Aceste comenzi nu au nici un efect n modul LR sau
ntr-un box.
\enlargethispage{len}
\enlargethispage*{len}
Aceste comenzi mresc nlimea paginii procesate, n mod curent, de
LaTeX (i.e. \textheight) cu valoarea lungimii specificate de
argumentul len; len reprezint o lungime rigid i poate avea valoare
negativ De exemplu, \enlargethispage{\baselineskip}
va permite introducerea unei linii suplimentare n pagin (subseciunea
2.4.2). Forma cu * a comenzii ngusteaz, ct mai mult posibil,
spaiul vertical dintre rnduri, comprimnd textul. Este nsoit, n
general, de o comand \pagebreak. Sunt comenzi fragile.
\newpage
\clearpage
\cleardoublepage
Aceste comenzi sunt plasate n finalul paragrafului i, respectiv, al
paginii curente, n cazul paginilor cu textul pe o singur coloan
(onecolumn). Orice spaiu vid n corpul paginii (subseciunea 2.4.2)
apare amplasat n partea inferioar a paginii, chiar dac declaraia
\flushbottom este activ. Comenzile \clearpage i
\cleardoublepage determin, n plus, i tiprirea tabelelor i
figurilor care au fost create i nu au fost nc aezate n pagini; tiprirea
se poate realiza, dac este necesar, pe una sau mai multe pagini flotante
(ce conin doar tabele sau figuri). n stilul de tiprire fa-verso,
\cleardoublepage transform pagina urmtoare ntr-una cu numr
impar, insernd, dac este necesar, o pagin goal.
Dac se folosete stilul twocolumn, atunci \newpage va avea ca
efect terminarea coloanei curente, mai degrab dect a paginii;
comenzile \clearpage i \cleardoublepage termin pagina,
producnd, dac este necesar, o coloan vid. Aceste comenzi se
utlizeaz doar n modul paragraf. Comenzile \newpage i
\clearpage sunt robuste.

102

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________

2.6.4 Spaii
Unele spaii, necesare la scrierea unui text, sunt predefinite i reprezint
parametri de stil (a se vedea i subseciunea 2.4.2). n continuare, sunt descrise
comenzile ce permit modificarea spaiilor, msurate pe vertical i pe
orizontal, din structura unei pagini.
\hspace{len}
\hspace*{len}
Aceste comenzi au ca efect generarea unui spaiu, pe orizontal, de
lime len; parametrul len este o lungime exprimat ntr-o form
acceptat n LaTeX (subsubseciunea 2.4.2). Spaiul generat de
\hspace este suprimat, dac apare n punctul de trecere la un rnd
nou; n acelai caz, spaiul generat de \hspace* nu este suprimat.
Ambele comenzi sunt robuste.
\vspace{len}
\vspace*{len}
Adaug un spaiu, pe vertical, de nlime len; parametrul len este o
lungime exprimat ntr-o form acceptat n LaTeX (subsubseciunea
2.4.2). Spaiul generat de \vpace este suprimat, dac apare n punctul
de trecere la o pagin nou; n acelai caz, spaiul generat de
\vspace* nu este suprimat. Ambele comenzi pot fi folosite doar n
modul paragraf i sunt fragile.
\bigskip
\medskip
\smallskip
Sunt echivalente, respectiv, cu urmtoarele comenzi:
\vspace{\bigskipamount}
\vspace{\medskipamount},

\vspace{\smallskip}

unde comenzile \bigskipamount, \medskipamount i


\smallskipamount sunt de tip lungimi i reprezint parametri de
stil. Aceste comenzi, generatoare de spaii, pot fi folosite n definiii de
cadre, pentru a asigura spaii verticale standard. Sunt comenzi fragile.
\addvspace{len}
n mod normal, aceast comand adaug un spaiu, pe vertical, de
nlime len. Cu toate acestea, dac n punctul respectiv a fost adugat,

2.6. MODUL PARAGRAF

103

____________________________________________________________________________

deja, un spaiu, printr-o comand \addspace precedent, atunci noua


comand nu va mai aduga spaiu, dect pn la completarea
dimensiunii specificate de parametrul len. Este utilizat pentru
adugarea spaiilor suplimentare, pe vertical, situate deasupra i,
respectiv dedesubtul celor mai multor cadre LaTeX care ncep un nou
paragraf. Poate fi folosit doar n modul paragraf, ntre paragrafe, i.e.
imediat dup o linie goal sau dup comanda \par. Este o comand
fragil.
\hfill
Este echivalent cu \hspace{\fill} (comanda \fill a fost
descris n subsubseciunea 2.4.2).
\vfill
Este echivalent cu o linie goal, urmat de
\vspace{\fill}. Se utilizeaz doar n modul paragraf.

comanda

\dotfill
Acioneaz la fel ca \fill (subsubseciunea 2.4.2), dar produce
puncte.
\hrulefill
Acioneaz la fel ca \dotfill, dar produce o linie orizontal.
\noindent
Suprim alineatul (i.e. indentarea) la nceput de paragraf. Nu are nici un
efect dac este utilizat n interiorul unui paragraf.
\par
Sfrit de paragraf (echivalent cu o linie goal n text).
\indent
Introduce un spaiu, pe orizontal, a crei lime este egal cu limea
indentrii paragrafului. Este utilizat pentru a aduga o indentare la
nceputul unui paragraf, n cazul n care, n rest, indentarea a fost
suprimat.
Observaie. Toate aceste comenzi pot primi, ca parametri, lungimi date n oricare din
formele acceptate n LaTeX: se accept att mrimi exprimate ntr-una din unitile de msur
a lungimilor (subseciunea 2.4.2), ct i multipli sau submultipli ai unor comenzi de tip
lungimi. De exemplu, \vspace{0.5cm} nseamn adugarea unui spaiu vertical de 0.5cm;
\vspace{2\parskip}nseamn adugarea unui spaiu vertical egal cu dublul distanei
reprezentate de parskip (comanda \parskip este descris n subseciunea 2.4.2).

104

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________

Exemplul 2.64
\documentclass{article}
\begin{document}
Comanda \verb|\hspace{1cm}|
las\u a un\par
spa\c tiu orizontal \par
de 1cm, deci \hspace{1cm}
etc.\par
Numele\hrulefill \par
Prenumele\hrulefill\par
Nr.\dotfill \par
din \dotfill\par
Urmeaz\u a spa\c tiu vertical
de 1cm.\par
\vspace{1cm}
\noindent Paragraf f\u ar\u a
alineat.
\end{document}

2.6.5 Note marginale


Uneori, este necesar s se insereze, n text, comentarii, sub form de
note marginale. n acest scop, se poate utiliza comanda
\marginpar[left_text]{right_text},
care genereaz o not marginal, avnd drept coninut textul specificat prin
argumentul right_text, dac nota este aezat la dreapta sau dac nu exist
argument opional, respectiv textul specificat prin left_text, altfel. Textul este
tiprit ntr-un parbox.
Pentru stilul de tiprire fa-verso i pe o singur coloan (opiunile
twoside i onecolumn), aezarea implicit a note marginale este pe
marginea exterioar a paginii, la stnga textului, n cazul paginilor numerotate
par, respectiv la dreapta textului, n cazul paginilor impare. n cazul stilului de
tiprire pe o singur fa i pe o singur coloan, aezarea implicit a notei
marginale este pe marginea dreapt a textului. Aceste amplasri implicite pot fi
schimbate prin comenzile urmtoare:
\reversemarginpar determin aezarea notelor marginale pe marginea
opus celei implicite;
\normalmarginpar determin aezarea notelor pe marginea implicit.

2.6. MODUL PARAGRAF

105

____________________________________________________________________________

La apariia unei note marginale ntr-un paragraf, aezarea sa este


determinat de declaraia activ n punctul unde ncepe linia goal ce ncheie
paragraful. n cazul tipririi pe dou coloane (opiunea twocolumn), nota
marginal apare, ntotdeauna, la marginea cea mai apropiat de coloana ce
conine nota, indiferent de aceste declaraii.
De regul, o not marginal este aezat astfel nct linia sa de sus s
fie la acelai nivel cu linia de text ce conine comanda \marginpar; dac
aceast comand apare ntre paragrafe, atunci nota este, n general, aliniat cu
ultima linie a paragrafului precedent comenzii. Oricum, dac apare o
suprapunere cu nota marginal precedent, nota curent este deplasat n josul
paginii.
Parametrii de stil asociai notelor marginale sunt urmtoarele comenzi
de tip lungimi (a se vedea i Fig.2.5, subseciunea 2.4.2):
\marginparwidth reprezint limea parbox-ului ce conine nota
marginal;
\marginparsep reprezint spaiul orizontal dintre marginea textului i
nota marginal;
\marginparpush specific spaiul vertical minim permis ntre dou note
marginale succesive.
Exemplul 2.65
\documentclass[twoside]{article}
\begin{document}
\stepcounter{page}
Suntem la pagina \thepage.\par
Aici apare prima not\u a. \marginpar{\em Nota 1. A\c ti \^\i
nv\u a\c tat la analiz\u a?.}\par
\^Incepe sesiunea (se creeaz\u a nota 2).\marginpar{\em Nota 2.
Ave\c ti grij\u a cum v\u a petrece\c ti timpul liber.}\par
Acum este mai interesant\u a via\c ta de student.
\end{document}

106

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________

2.7 MODUL MATEMATIC


TeX este considerat n modul matematic, cnd genereaz formule
matematice. n acest mod, literele sunt considerate simboluri matematice; de
exemplu, ab este interpretat ca produsul lui a cu b. Spaiile dintre simboluri
sunt ignorate.

2.7.1 Cadre i stiluri specifice modului matematic


O formul matematic poate s apar, ntr-un document, fie pe un rnd
de text, fie pe un rnd separat i dedicat. Pentru fiecare din cele dou cazuri
sunt disponibile mai multe comenzi echivalente, ce definesc, de fapt, cadre
specifice modului matematic.
TeX poate folosi, doar n modul matematic, una din urmtoarele patru
declaraii de stil pentru editarea formulelor:
\displaystyle stilul display, implicit pentru simboluri normale, la
formulele scrise pe rnduri dedicate;
\textstyle stilul text, implicit pentru simboluri normale, la formulele
scrise pe un rnd de text;
\scriptstyle stilul script, implicit pentru indici inferiori i superiori de
nivelul unu;
\scriptscriptstyle stilul scriptscript, implicit pentru indici de
niveluri superioare.
Cadrele asociate modului matematic sunt: math, displaymath,
equationarray (subseciunea 2.3.5) i equation (subseciunea 2.3.6). n
continuare, este descris modul de creare a cadrelor math i displaymath.
$ formula $
\(formula)\)
\begin{math} formula \end{math}
Aceste trei forme echivalente permit generarea unei formule aezate
ntr-o linie de text uzual, prin editarea argumentului formula n stilul
text. Pot fi utilizate n modul LR.

2.7. MODUL MATEMATIC

107

____________________________________________________________________________

\[ formula \]
\begin{displaymath} formula \end{displaymath}
Aceste forme echivalente permit generarea unei formule pe un rnd
separat, prin editarea argumentului formula n stilul display. Pot fi
utilizate doar n modul paragraf (seciunea 2.6). Formula apare centrat
pe rnd, cu excepia cazului n care opiunea comenzii
\documentclass este fleqn (subsubseciunea 2.2.5.1). Formula
este nenumerotat
Observaie. Cadrul equation este similar cu displaymath, cu excepia faptului
c genereaz o formul numerotat, utiliznd contorul equation.

2.7.2 Comenzi pentru crearea unor structuri uzuale


Comenzile frecvent folosite la scrierea formulelor matematice sunt
urmtoarele:
_{sub} - Tiprete argumentul sub ca indice inferior.
^{sup} - Tiprete argumentul sup ca indice superior.
- Tiprete simbolul prim ().
\frac{numar}{numit} - Genereaz o fracie cu argumentul numar la
numrtor i respectiv numit la numitor.
\sqrt[n]{arg} - Genereaz simbolul pentru rdcina de ordinul n a
argumentului arg. Dac nu apare argumentul opional, atunci se
genereaz rdcina ptrat.
Trei puncte pot fi generate printr-una din urmtoarele comenzi:
\ldots - Genereaz trei puncte aezate orizontal, n partea inferioar a
rndului. Poate fi utilizat n orice mod.
\cdots - Genereaz trei puncte n centrul rndului.
\vdots - Genereaz trei puncte aezate vertical.
\ddots Genereaz trei puncte dispuse n diagonal, de la stnga-sus la
dreapta-jos.

108

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________

Exemplul 2.66
\documentclass[fleqn]{article}
\begin{document}
$x^{2y}, x^{y^{2}},
x^{y}_{1}$\par
$x_{2y}, x^{y_{1}},
x_{1}^{y}$\par
\^{\i}nmul\c tind cu $n/2$
rezult\u a \((m+n)/n\).\par
\(x=\frac{u+z/2}{y^{2}+1}\)
\par
O r\u ad\u acina p\u atrat\u a
este \(\sqrt{x+y}\).\par
O r\u ad\u acina de ordinul
$n$ este $\sqrt[n]{2}$.\par
Se scrie \c sirul:
\[x_{1}, \ldots, x_{n}\]\par
Puncte centrate:
$a + \cdots +z$.\par
$\textstyle{a+b}
\scriptstyle{c}
\scriptscriptstyle{d}$
\end{document}

2.7.3 Simboluri matematice


Litere greceti
O liter greceasc se poate genera prin tastarea caracterului backslash
(\), urmat de numele literei dorite, scris cu litere latine mici, n cazul literelor
greceti mici, respectiv cu prima liter latin mare, n cazul literelor greceti
mari. Comenzile necesare scrierii literelor greceti sunt listate n tabelul 2.6.
Litere caligrafice
n TeX sunt disponibile 26 de litere caligrafice mari, asociate respectiv
literelor latine A, , Z i generate de comanda \mathcal.
Exemplul 2.67
Alege\c ti $\mathcal{B}$.

2.7. MODUL MATEMATIC

109

____________________________________________________________________________

Tabelul 2.6 : Litere greceti

Alte simboluri matematice


n TeX sunt disponibile mai multe seturi de simboluri matematice
speciale. Cteva dintre acestea se pot introduce direct de la tastatura standard,
cum ar fi + sau >. Altele se obin prin aplicarea comenzilor listate n tabelele
2.7, 2.8, 2.9, 2.10 i 2.11.
Tabelul 2.7 : Operatori binari1

Nu sunt listate comenzile \lhd, \rhhd, \unlhd i \unlhd disponibile n pachetul latexsym.

110

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________

Tabelul 2.8 : Operatori relaionali2

O serie de comenzi generatoare de simboluri matematice, specificate n


notele de subsol 1-4, respectiv asociate tabelelor 2.7-2.10, necesit ncrcarea
pachetului latexsym, prin comanda \usepackage{latexsym}.
Tabelul 2.9 : Simboluri de tip sgeat3

2
3

Nu sunt listate comenzile \sqsubset, \sqsupset i \Join, disponibile n pachetul latexsym.


Nu este listat comanda \leadsto, disponibil n pachetul latexsym.

2.7. MODUL MATEMATIC

111

____________________________________________________________________________

Tabelul 2.10 : Diverse simboluri matematice4

Tabelul 2.11 : Operatori mari (de mrime variabil)

Simbolurile din tabelul 2.11 au fost generate n stilul text. Cnd sunt
generate n cadrul equation sau displaymath, ele apar mrite.
Exemplul 2.68
\begin{document}Exemplu \^\i n stilul
\textit{display}:\[\sum_{j=1}^{m}y_{j}=\int_{0}^{1}g\]\par
\c si \^\i n stilul \textit{text}:
\(\sum_{j=1}^{m}y_{j}=\int_{0}^{1}g\)
\end{document}


4

Nu sunt listate comenzile \mho, \Box i \Diamond, disponibile n pachetul latexsym.

112

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________

Simboluri suplimentare, de negaie, se pot construi prin aplicarea


comenzii \not, naintea comenzii ce genereaz simbolul nenegat.
Exemplul 2.69
Dac\u a $x \not< y$, atunci $x
\not\leq y-1$.


n cazul n care simbolul de negare / nu apare exact n locul dorit, se utilizeaz
comenzile de spaiere, descrise n subseciunea 2.7.6.
Simbolurile funciilor matematice uzuale
De regul, funciile matematice uzuale log, exp, sin, etc. se tipresc cu
fontul Roman drept, iar argumentele sunt afiate cu caractere italice. Dac,
pentru editarea unei formule n modul matematic, numele funciilor uzuale s-ar
introduce direct de la tastatur, atunci ele ar fi tiprite cu font italic. Pentru a
evita acest fenomen, se folosesc comenzile listate n tabelul urmtor.
Tabelul 2.12 : Comenzi pentru generarea numelor unor funcii uzuale
\arccos
\arcsin
\arctan
\arg
\cos
\cosh

\cot
\coth
\csc
\deg
\det
\dim

\exp
\gcd
\hom
\ker
\inf
\lg

\lim
\liminf
\limsup
\ln
\log
\max

\min
\Pr
\sec
\sin
\sinh
\sup

\tan
\tanh

Pentru tiprirea numelui funciei mod (modulo) se folosesc comenzile \bmod


(pentru o relaie binar) i \pmod (pentru o relaie cuprins ntre paranteze).
Exemplul 2.70
$\min (m,n)=a \bmod b$\par
$x \equiv y \pmod{a+b}$


Unele din comenzile din tabelul 2.12 se comport, n raport cu
generarea de indici inferior sau superiori, similar cu cele din tabelul 2.11:
indicii apar mai mici dac formula este n text, respectiv mai mari dac
aceasta este pe un rnd dedicat.
Observaie. TeX poate fi forat s afieze alt mrime dect cea asociat, implicit,
stilului curent, pentru simbolurile din tabelul 2.11 sau, respectiv, pentru indicii formulelor
generate prin unele din comenzile din tabelul 2.12. n acest scop, se folosesc comenzile

2.7. MODUL MATEMATIC

113

____________________________________________________________________________
\displaystyle, \textstyle,
(subseciunea 2.7.1).

\scriptstyle

sau

\scriptscriptstyle


Exemplul 2.71
\documentclass{article}
\begin{document}
O formul\u a \^\i n stilul \textit{display}:
\[\lim_{n \rightarrow \infty} y = 0.5\]
arat\u a \textit{"\^\i n text"} astfel:
\(\lim_{n \rightarrow \infty} y = 0.5\).\par
\^In text putem scrie mic: $ \frac{1}{C}\int i =u$
sau mare:$ \frac{1}{C}\displaystyle{\int i }=u$.\par
Putem scrie cu indice mic: $e^{x(i)}$ sau cu indice mare:
$e^{\textstyle{y(i)}}$.
\end{document}

2.7.4 Tablouri matriceale, delimitatori i formule lungi


Tablouri matriceale
Tablourile matriceale se pot scrie folosind cadrul array, descris n
subseciunea 2.3.1 i n subsubseciunea 2.3.19.2. Reamintim c sintaxa
corespunztoare este urmtoarea :
\begin{array}[pos]{cols} linii \end{array}
TeX asociaz, fiecrei formule, cte o linie de centru, pe care va fi
plasat, dac este cazul, semnul + sau -. Un tablou generat de cadrul array
este, el nsui, o formul cu o linie de centru. Elementele unei linii a tabloului

114

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________

sunt poziionate vertical, astfel nct liniile lor de centru s fie, toate, la aceeai
nlime. n mod normal, linia de centru a unui tablou matriceal este situat la
jumtatea distanei dintre linia superioar i, respectiv, cea inferioar. Poziia
liniei de centru poate fi adus la nivelul liniei superioare sau inferioare a
tabloului, cu valorile t (top) i, respectiv b (bottom), ale argumentului opional
pos.
Exemplul 2.72
\documentclass{article}
\begin{document}
$x-\left|
\begin{array}{c}
a_{1}\\ \vdots \\ a_{n}
\end{array}\right|
- \left|\begin{array}[t]{c}
1+i\\ \vdots \\
3\left|\begin{array}[b]{r}
i\\j
\end{array}
\right|
\end{array}\right|
$
\end{document}


Delimitatori
Tablourile matriceale din exemplul precedent sunt separate, la dreapta
i la stnga, prin delimitatori de tip bar vertical. Acest tip i ali delimitatori,
frecvent utilizai n formulele matematice, sunt prezentai n tabelul 2.13.
Comenzile din tabelul 2.13 genereaz delimitatori de mrimea indicat,
corespunztoare mrimii implicite a fontului utilizat (aici 10 pt). Pentru a ajusta
mrimea delimitatorilor la mrimea formulei delimitate lucru necesar n
special n cazul tablourilor generate de cadrul array - se folosesc comenzile
\left i \right, n pereche (exemplul 2.72). Fiecare din aceste comenzi se
aplic chiar naintea comenzii de generare a delimitatorului.
Dei \left i \right trebuie s apar n pereche, se poate crea un
delimitator invizibil prin introducerea caracterului . imediat dup comanda
\left sau \right. Aceast proprietate este utilizat n exemplul 2.73, la
scrierea unei funcii cu acolad.

2.7. MODUL MATEMATIC

115

____________________________________________________________________________

Tabelul 2.13 : Delimitatori5

Exemplul 2.73
\documentclass{article}
\begin{document}
$f(x)=\left\{
\begin{array}{ll}
\sin (x)&
\mbox{dac\u a
$|x| \leq \pi$}\\
0 & \mbox{altfel}\\
\end{array}
\right.$
\end{document}


Formule multilinie
Formulele lungi se pot tipri pe mai multe linii (sau rnduri), folosind
cadrele eqnarray i eqnarray* (subsubseciunea 2.3.5). Fiecare rnd
conine o subformul. Dac se folosete cadrul eqnarray, atunci fiecare rnd
ce conine cte o subformul n parte este numerotat. Pentru a evita acest
lucru, la sfritul fiecrei linii, cu excepia celei din urm, se introduce
comanda \nonumber (exemplul 2.18).
Un caracter + sau , situat la nceputul unei formule sau al unei
subformule, este considerat, de TeX, ca un operator unar i va fi tiprit lipit
de termenul situat la dreapta sa. Dac termenul respectiv apare ntr-o
subformul ce face parte dintr-o singur formul lung, atunci caracterul + sau
devine un operator binar i el trebuie tiprit la o mic distan de termenul
5

Pot fi folosite, drept delimitatori, i o parte din simbolurile de tip sgeat din tabelul 2.9; de exemplu,
simbolurile generate prin comenzile \uparrow, \downarrow, \updownarrow i prin tandemurile
acestora, scrise respectiv cu prima liter mare dup caracterul \.

116

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________

situat la dreapta sa. Acest lucru se realizeaz introducnd comanda \mbox{},


naintea caracterului + sau -.
Exemplul 2.74
\documentclass{article}
\begin{document}
\centering
{Aici "+" apare "lipit" de
$i$:}
\begin{eqnarray*}
y&=&a+b+c\\
& &+i+j+k.
\end{eqnarray*}\par
\centering
{Corect este a\c sa:}
\begin{eqnarray*}
y&=&a+b+c\\
& &\mbox{}+i+j+k.
\end{eqnarray*}
\end{document}

2.7.5 Sublinieri i suprapuneri de simboluri


O serie de formule matematice necesit scrierea de simboluri
suprapuse. Cadrul array permite suprapunerea, pe vertical, a mai multor
simboluri, dar nu este comod de utilizat doar pentru sub- sau supralinieri.
Linii i paranteze sub- i suprapuse
Supra- i sublinierile se pot realiza cu urmtoarele comenzi:
\overline{formula} - tiprete argumentul formula, cu o linie orizontal
deasupra;
\underline{formula} tiprete argumentul formula, cu o linie orizontal
dedesubt i poate fi folosit n toate modurile.
Urmtoarele comenzi permit suprapunerea acoladelor orizontale i a
formulele matematice.
\overbrace{formula} - tiprete argumentul formula, cu o acolad
orizontal deasupra;

2.7. MODUL MATEMATIC

117

____________________________________________________________________________

\underbrace{formula} tiprete argumentul formula, cu o acolad


orizontal dedesubt.
Exemplul 2.75
\documentclass{article}
\begin{document}
Se supraliniaz\u a:
$\overline{\overline{x}^{2}
+1}$.\par
Expresia
$\underbrace{\overbrace{
1+\sqrt{6}}^{2}+i+j+k}_{5}$
\par
are 5 termeni din care 2 sunt
numerici.
\end{document}


Accente
Comenzile pentru tiprirea accentelor, descrise n subseciunea 2.6.2, se
aplic doar n modul paragraf i nu pot fi folosite la scrierea formulelor. n
tabelul 2.14, sunt listate comenzile pentru aplicarea de accente n editarea
formulelor; litera a este aleas doar spre exemplificare, iar comenzile se pot
folosi pentru orice alt liter.
Tabelul 2.14 : Accente n modul matematic

Versiuni ale simbolurilor generate de comenzile \hat i \tilde, care


se adapteaz la lungimea formulei, se pot obine prin comenzile \what i
respectiv \wtilde (numele lor provine de la wilde version). Comenzile
\imath i \jmath genereaz literele i i respectiv j fr punct.
Simboluri suprapuse
Comanda
\stackrel{top}{bot}

118

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________

tiprete argumentul reprezentat de top, deasupra celui reprezentat de bot;


mrimea caracterelor argumentului top corespunde stilului superscript, iar dac
se dorete schimbarea acesteia, atunci se aplic, corespunztor, una din
comenzile descrise n subseciunea 2.7.1.
Exemplul 2.76
\documentclass{article}
\begin{document}
\[\widehat{x+y}=
\widehat{-z}\]\par
\[\vec{x}
\stackrel{\mathrm{def}}{=}
(x_1 \ldots x_n)^{T}\]
\end{document}

2.7.6 Spaieri
Urmtoarele comenzile genereaz spaii orizontale n modul matematic:
\,
\!
\:
\;
\

genereaz un spaiu ngust spre dreapta;


genereaz un spaiu ngust negativ (i.e. la stnga);
genereaz un spaiu mediu spre dreapta;
genereaz un spaiu lat spre dreapta;
genereaz un spaiu dintre dou cuvinte consecutive ( este blank).

Exemplul 2.77
\documentclass{article}
\begin{document}
\begin{tabular}{lcl}
$\sqrt{2} \, x$& \^\i n loc de
&$\sqrt{2}x$\\
$n/ \! \log{n}$& \^\i n loc de
&$n/\log{n} $\\
$\int\!\!\int{z}\,dx\,dy$&
\^\i n loc de
&$\int\int{z}dxdy$
\end{tabular}
\end{document}

Comanda \, poate fi folosit i n modurile paragraf i LR.

2.7. MODUL MATEMATIC

119

____________________________________________________________________________

2.7.7 Schimbri de stiluri n formulele matematice


n subseciunea 2.7.1, au fost descrise comenzile pentru schimbarea
mrimii simbolurilor n modul matematic.
Comenzile din tabelul urmtor permit schimbarea stilului fontului, n
cazul numerelor, al literelor latine i greceti. Alte elemente ale formulelor,
cum ar fi numele funciilor matematice log, sin, etc. (tabelul 2.12), rmn
nemodificate.
Tabelul 2.15 : Comenzile de setare a fontului n mod matematic i efectele lor

Comanda \mathcal a fost descris i n subseciunea 2.7.3.


Simbolurile italice, generate de comanda \mathit, sunt spaiate diferit de
cele generate n stilul italic uzual; \mathit este recomandat pentru
simboluri matematice compuse din mai multe litere.
Comanda \boldmath afecteaz toate caracterele unei formule i
tiprete formulele matematice n stilul bold; poate fi folosit doar n modurile
paragraf sau LR i, de aceea, trebuie introdus, mpreun cu argumentul su,
ntr-un box generat cu \mbox (seciunea 2.8).
Cteva din comenzile de schimbare de font, ce au fost descrise, sunt
aplicate n exemplul urmtor.
Exemplul 2.78
\documentclass{article}
\begin{document}
$matematic$ - \^\i n mod matematic uzual \par
$\mathit{matematic}$ - la comanda \verb|\mathit| \par
$x+\mbox{\boldmath{$\Re{(g)}$}}=0$ cu \verb|\boldmath| \^\i n \verb|\mbox| pentru $\Re{(g)}$ \par
$diff+2^{ft} \Psi \log{[\psi]}$ \^\i n mod matematic uzual\par
$\mathbf{diff+2^{ft} \Psi \log{[\psi]}}$ cu \verb|\mathbf | \par
\mbox{\boldmath{$diff+2^{ft} \Psi \log{[\psi]}$}}
cu \verb|\boldmath| \^\i n mod paragraf \par
\end{document}

120

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________

Observaie. Presupunem c lucrm n modul paragraf i c este necesar s editm o


formul, numit formula_1, cu caractere bold i apoi formula_2, cu caractere uzuale n modul
matematic. Dac n locul comenzilor
\mbox{\boldmath{$formula_1$}
s-ar folosi doar
\boldmath{$formula_1$},
atunci, n mod nedorit, i formula_2 ar aprea cu caractere bold (dac \mbox lipsete,
compilatorul LaTeX nu d eroare).

2.8 MODUL LR
n modul LR (Lef-to-Right), la fel ca i n modul paragraf, TeX
consider simbolurile primite la intrare ca o secven de cuvinte cu spaii ntre
ele. ns, spre deosebire de modul paragraf, n modul LR TeX genereaz un
text de la stnga la dreapta, fr a se ncepe un rnd nou i fr a se verifica
ncadrarea n spaiul disponibil, astfel nct exist riscul ca un text, astfel
procesat, s ias din pagin.
Textul procesat n modul LR este introdus ntr-un box, iar la ieirea din
acest mod box-ul este aezat n pagin. Esenial este faptul c textul din box nu
este secionat pe mai multe rnduri.
n continuare sunt descrise comenzile care permit culegerea unui text n
modul LR, crendu-se box-uri. Ele pot fi folosite n orice mod.
\mbox{text}
\makebox[lat][pos]{text}
Aceste comenzi tipresc argumentul text n modul LR, plasndu-l
ntr-un box; n cazul comenzii \makebox, argumentul opional lat

2.8. MODUL LR

121

____________________________________________________________________________

specific limea box-ului, iar poziia argumentului text n box este


determinat de urmtoarele valori ale argumentului pos:
c (center) centrat, implicit;
r (right) aliniat la dreapta;
l (left) aliniat la stnga;
s (strech) spaiile dintre cuvinte sunt ajustate astfel nct
textul s umple ntregul box.
\fbox{text}
\framebox[lat][pos]{text}
Aceste dou comenzi sunt similare cu \mbox i respectiv \makebox,
cu excepia faptului c se genereaz i un cadru dreptunghiular, n jurul
box-ului ce conine argumentul text.
\newsavebox{\cda}
Declar comanda specificat de argumentul \cda ca fiind un buffer
pentru salvarea unor box-uri; comanda \cda trebuie s nu fi fost deja
definit, i.e. numele cda trebuie s fie nou.
\sbox{\cda}{text}
\savebox{\cda}[lat][pos]{text}
\begin{lrbox}{\cda} text \end{lrbox}
Aceste comenzi introduc argumentul text ntr-un box (similar cu
\mbox), dar n loc s-l i tipreasc, l introduc ntr-un buffer, generat
deja la comanda \newsavebox. n cadrul lrbox, text este salvat fr
spaiile de la nceput i de la sfrit.
\usebox{\cda}
Tiprete box-ul cel mai recent salvat n buffer-ul \cda (creat la
comanda \newsavebox).
\raisebox{raise_len}[hght][dpth]{text}
Aceast comand creeaz un box prin tiprirea argumentului text n
modul LR; text este ridicat n box cu distana specificat de raise_len i
extins, deasupra i dedesubtul rndului, cu distanele specificate de
argumentele hght i respectiv dpth. Dac argumentul dpth sau ambele
argumente opionale lipsesc, atunci TeX va folosi extensia curent a
box-ului.

122

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________

\rule{raise_len}{lat}{hght}
Genereaz un dreptunghi solid, de lime lat i nlime hght, ridicat
deasupra rndului la distana specificat de argumentul raise_len (sau
cobort, dac raise_len are valoare negativ). raise_len are valoarea
implicit 0in.
\width
\height
\depth
\totalheight
Sunt comenzi de tip lungimi, ce pot fi aplicate argumentelor lat al
comenzilor \makebox, \framebox i \savebox i argumentelor
raise_len, hght i dpth ale comenzii \raisebox. Se refer la
dimensiunile
(lime,
nlime,
adncime
i
respectiv
nlime+adncime ale) box-ului obinut prin tiprirea argumentului
text.
Stilul este controlat de urmtoarele comenzi:
\fboxrule precizeaz limea liniei trasate de \fbox i \framebox;
\fboxsep precizeaz spaiul dintre coninutul i marginile box-ului generat
cu\fbox i \framebox .
Comanda \mbox este folosit n exemplul 2.78 din finalul seciunii
precedente. Iat alte exemple de generare de text n modul LR.
Exemplul 2.79
\documentclass{article}
\begin{document}
Apare un \framebox[1in][l]{om}
la \fbox{orizont}.\par
Compara\c ti
\fbox{acest \em{box}} cu
\fbox{
\rule[-0.5cm]{0cm}{1cm}
acest \em{box}
}.\par
XXX\framebox[0.5in]
{diver\c si oameni}XXX.
\end{document}

2.8. MODUL LR

123

____________________________________________________________________________

Exemplul 2.80
\documentclass{article}
\begin{document}
Text \raisebox{0.6ex}{\em{ridicat}}
sau
\raisebox{-0.6em}{\em{cobor\^at}}.
\end{document}

Exemplul 2.81
\documentclass{article}
\begin{document}
\newsavebox{\joc}
\savebox{\joc}[1.5cm]{ap\u a}
Este doar \usebox{\joc},\par
\usebox{\joc},
\usebox{\joc},\par
peste tot.
\end{document}


Observaie. Alte comenzi pentru crearea de box-uri au fost descrise n subseciunea
2.3.13.

2.9 OBSERVAII FINALE


Dificultile legate de nsuirea limbajului LaTeX sunt mai mult de
natur psihologic. Odat deprins, LaTeX asigur editarea textelor, conform
celor mai exigente standarde de tehnoredactare. n plus, fiierul de ieire, cu
extensia .dvi, este dup cum reiese i din denumirea sa n englez: Device
Independent independent de drive-ul de imprimant.
Compilatorul LaTeX este disponibil, gratuit, pe Internet. Reamintim c
una din adresele de la care poate fi adus versiunea sa pentru Win95 este:
www.stat.uiowa.edu/resources/help/win95/latex.html
Prezentul capitol este doar o introducere privind limbajul LaTeX.
Textul su este o combinaie ntre informaia de tip Users Guide i cea de
tip Reference Manual. Anexa C conine o aplicaie din domeniul teoriei
ecuaiilor difereniale, iar Anexa D cuprinde o list a principalelor comenzi

124

CAPITOLUL 2. INTRODUCERE N LIMBAJUL LaTeX

____________________________________________________________________________

LaTeX, sub form de memorator. Cea mai detaliat lucrare privind LaTeX
rmne, pn n prezent, cartea lui Leslie Lamport [Lamport 1994].
Din motive pur conjuncturale, acest capitol, la fel ca i ntreaga lucrare,
a fost editat n Microsoft Word97, iar exemplele i o parte din tabele au fost
procesate n LaTeX, captate i apoi inserate n text. Dintre lucrrile publicate n
limba romn, realizate n ntregime n LaTeX i care pun n eviden
avantajele deosebite ale procesrii textelor tiinifice n acest limbaj,
recomandm tratatul de calcul numeric matriceal de B. Dumitrescu, C. Popeea
i B. Jora [Dumitrescu 1998].

S-ar putea să vă placă și