Informatyka. Wykład 11

Latex2e

TeX

TEX jest programem komputerowym stworzonym przez Donalda E. Knutha. Jest przeznaczony do składu tekstów oraz wzorów matematycznych. Inaczej, TeX  jest systemem profesjonalnego składu drukarskiego. Wśród systemów służących do podobnych celów wyróżnia się dbałością o jakość wyników. Nie ma sobie równych przy składaniu trudnych tekstów naukowych (szczególnie matematycznych), słowników, itp. Inną zaletą TeX-a, istotną w środowisku akademickim, jest jego status oprogramowania public domain.

Knuth rozpoczął pracę nad TEX-em w 1977 roku rozczarowany tym, jak wyglądały jego własne prace naukowe publikowane przez American Mathematical Society. Pewnego dnia 1974 roku zaprzestał on nawet wysyłania swoich prac do publikacji, ponieważ stwierdził: "zbyt przykre było dla mnie oglądanie ostatecznego wyniku". W postaci używanej obecnie TEX został udostępniony w roku 1982, i od tego czasu zmienił się tylko w niewielkim stopniu. TEX jest programem bardzo stabilnym.

 Słowo TEX należy wymawiać "tech".

LaTeX

LaTeX jest zestawem instrukcji (poleceń, makrodefinicji, makr) umożliwiających autorom na bardziej przystępny niż w przypadku TeXa skład tekstu (jest "nakładką" na TeXa, jakby "preprocesorem"). Do formatowania dokumentu LaTeX wykorzystuje TeXa przetwarzając własne instrukcje do postaci TeXa. Pierwsza wersję LATEX-a opracował Leslie Lamport.

Słowo LaTeX należy wymawiać "lej-tech" albo "la-tech".

Kilka lat temu pakiet LATEX został rozszerzony przez tak zwaną drużynę LATEX3 (LATEX3 team), kierowaną przez Franka Mittelbacha. Celem tego rozszerzenia było wprowadzenie kilku od dawna postulowanych ulepszeń oraz unifikacja rozmaitych odmian LATEX-a, jakie rozpowszechniły się od chwili powstania kilkanaście lat temu LATEX-a w wersji 2.09. Nowa wersja pakietu nazywa się LaTeX2e w celu odróżnienia jej od wersji poprzednich. Niedługo powinien pojawić się LATEX3.

 Plikiem źródłowym LATEX-a jest zwykły plik tekstowy (plik ASCII). Taki plik można utworzyć i edytować za pomocą dowolnego edytora tekstowego. Zawiera on tekst dokumentu oraz instrukcje, dzięki którym LATEX wie, jak złożyć tekst.

Odstępy, znaki tabulacji i pojedynczy znak przejścia do nowej linii są traktowane jako spacja. Wiele znaków spacji jest traktowane jako jedna spacja.

Pusta linia rozpoczyna nowy akapit.

Znak % to znak komentarza - znaki występujące po nim w danej linii są ignorowane.

Polecenia LaTeXa

Polecenia (komendy) formatowania rozpoczynają się znakiem "\" i mogą mieć różną składnię:

\znak
\wyraz
\wyraz{parametr}
\wyraz{parametr 1}{parametr 2}
\wyraz[parametr opcjonalny, opcja]{parametr}
\wyraz{parametr}[parametr opcjonalny, opcja]
\wyraz*
itd.

Deklaracje otoczeń

Osobną grupę poleceń stanowią deklaracje środowiska (environment), które będziemy też nazywać otoczeniem. Oznacza ono jakiś szczególny sposób redagowania tekstu, np. typowy dla tabel, wzorów matematycznych czy listów. Składnia jest następująca:

\begin{nazwa otoczenia}
    jakiś tekst
\end{nazwa otoczenia}

Po nazwie otoczenia mogą wystąpić też parametry.

Struktura dokumentu

Każdy dokument LaTeXa składa się z preambuły oraz części głównej.

Preambułę rozpoczyna polecenie \documentclass[opcje]{klasa} określając typ tworzonego dokumentu. Przykładowe klasy dokumentu: article, report, book, letter, slides. Opcje klas to np. 12pt (wielkość standardowej czcionki, domyślną jest 10pt); twocolumn (dokument w dwóch kolumnach).

Część główna dokumentu zaczyna się od polecenia \begin{document}, a kończy \end{document}. Po niej tekst jest ignorowany.

Najprostszy dokument w LaTeXu:

\documentclass{article}
\begin{document}
  Male jest piekne.
\end{document}

Ćwiczenie.

Utwórz w dowolnym edytorze plik przyklad1.tex i zapisz w nim powyższy przykładowy dokument.

Kompilacja, oglądanie i drukowanie dokumentów

Formatowanie tekstu (przetworzenie na język TeXa i skład tekstu) oraz zapis do pliku w formacie dvi uzyskuje się wywołując program latex (pod Linuxem) z parametrem będącym nazwą dokumentu:

latex plik  - rozszerzenie .tex możemy pominąć

W ten sposób zostanie utworzony plik pod nazwą plik.dvi w specjalnym formacie dvi. Można go obejrzeć na ekranie lub przetworzyć na format poscriptowy wywołując odpowiednie programy:

xdvi plik  - wyświetlenie plik.dvi na ekranie (rozszerzenie .dvi możemy pominąć)

dvips plik -o - zapisanie plik.dvi w formacie poscriptu pod nazwą plik.ps

Dokument poscriptowy możemy obejrzeć na ekranie:

gv plik.ps

Ćwiczenie.

Dokonaj kompilacji dokumentu przyklad1.tex, obejrzyj na ekranie plik dvi, dokonaj przetworzenia pliku typu dvi do poscriptu. Obejrzyj utworzony dokument poscriptowy programem gv.

Strona tytułowa

Zadeklarowanie dokumentu jako article (artykuł naukowy) pozwala na zrobienie strony tytułowej. W najprostszej wersji wystarczy zadać w preambule:

\title{tutaj tytuł artykułu}
\author{nazwisko autora lub lista autorów oddzielonych poleceniem \and}

Następnie w dokumencie głównym (zaraz po \begin{document}) należy podać polecenie

\maketitle

Streszczenie

Pożyteczne jest środowisko abstract, w którym możemy wpisać tekst w formie streszczenia, który zostanie zamieszczony na stronie tytułowej. Składnia jest następująca:

\begin{abstract}
Tekst streszczenia
\end{abstract}

Otoczenie abstract umieszczamy na początku otoczenia document.

Ćwiczenie

Zrób stronę tytułową w swoim przykładowym dokumencie.

Rozdziały i podrozdziały

Początek rozdziału oznaczamy następująco:

\section{tytuł rozdziału}

Początek podrozdziału oznaczamy:

\subsection{tytul podrozdziału}

Początek pod-podrozdziału:

\subsubsection{tytul pod-podrozdziału}

Tworzenie list

Listy nienumerowane tworzy się w postaci otoczenia itemize, a kolejne punkty poprzedza się poleceniem \item:

\begin{itemize}
\item tekst 1
\item tekst 2
\item tekst 3 itd.
\end{itemize}

Wyróżnianie tekstu

Wytłuszczenie fragmentu tekstu:

{\bf tutaj tekst do wytłuszczenia}

Wyróżnienie kursywą:

{\em tutaj tekst do wyróżnienia}

Podkreślenie tekstu

\underline{tutaj tekst do podkreślenia}

Polskie litery

Polskie litery osiągniemy przez następujące polecenia:

ą - \c{a}
ń - \'n
ł - {\l}
ż - {\.z}

Pozostałe litery (w tym wielkie) uzyskujemy w sposób analogiczny.

Można również dołączyć specjalny pakiet makrodefinicji obsługujący języki narodowe - Babel lub zainstalować program PlaTeX.

Ćwiczenie.

  1. Zapisz plik dziura.tex do swojej kartoteki.
  2. Znajdź samodzielnie sposób formatowania list numerowanych i zrób taką listę we fragmencie dokumentu o przebiegu obserwacji, po słowie "Następnie".
  3. Wytłuść fragment: w następnych pracach; podkreśl: Nie było łatwo; wyróżnij pierwsze wystąpienie frazy "czarna dziura" w rozdziale Wprowadzenie.
  4. Wstaw polskie litery we Wprowadzeniu.
  5. Skompiluj i obejrzyj dokument w postaci poscriptu.

Encapsulated Poscript (eps)

Pliki EPS (standardowe rozszerzenie eps) mogą zawierać wyłącznie grafikę i posiadają deklaracje jej rozmiaru. EPS jest częścią języka Poscript do opisu grafiki. Pliki z grafiką mogą mieć rozszerzenie .ps zamiast .eps. Deklaracja rozmiaru zawarta jest w komendzie BoundingBox, umieszczonej w nagłówku pliku poscriptowego. Komenda jest poprzedzana  znakami %% a parametrami są współrzędne (x,y) lewego dolnego i prawego górnego rogu grafiki na rysunku. Np. %%BoundingBox: 12 18 230 450

Zadanie.
Rysunek fig1.eps zapisz lokalnie na dysku. Wyświetl plik w gv i odczytaj rozmiar rysunku. Wpisz deklaracje rozmiaru w nagłówku pliku np:

%%BoundingBox: 119 78 674 557

Wyświetl plik w gv i zobacz czy wyświetlona jest odpowiednia część grafiki w modzie wyświetlania BBox.

Dołączanie grafiki w LaTeXu

Kiedy powstawał TEX formaty graficzne Poscript, jpeg, gif jeszcze nie istniały i importowanie grafiki nie było możliwe. Jednak TEX pozwala na włączanie plików przez komendę \special, która przekazuje na poziomie pliku dvi komendy do programu używającego dvi. To pozwala na włączanie grafiki w formatach graficznych obsługiwanych przez programy wyświetlające lub konwertujące pliki dvi.

Ponieważ pliki DVI są często konwertowane do poscriptu, najlepszym rozwiązaniem jest używanie grafiki w tym formacie, a dokładniej Encaplulated Poscript (EPS), który jest częścią języka Poscript do opisu grafiki.

Aby włączanie grafiki w formie Poscriptu było łatwiejsze i miało więcej możliwości stworzono pakiety epsf i psfig dla Latex2.09. W epsf grafikę wstawia się za pomocą \epsfbox. W psfig używa się polecenia \psfig. Każdy z tych pakietów miał swoje zalety i wady, wiec w końcu połączone ich cechy tworząc pakiet epsf, w którym odpowiednia komenda to \epsfig.

Wraz z nowo powstała wersja Latex2e napisana od nowa pakiety do wstawiania grafiki: standardowy graphics i bardziej zoptymalizowany graphicx. Wstawia się w nich grafikę komenda \includegraphics. Pakiety te na zasadzie kompatybilności wstecz umożliwiają wstawianie plików komenda \epsfig, która wewnętrznie wywołuje \includegraphics.

Aby go zastosować w preambule naszego dokumentu latexowego umieszczamy:
\usepackage{graphicx}

Wstawienie grafiki do dokumentu:
\includegraphics[opcje]{plik.ps}

Grafika może być skalowana w wysokości, szerokości i obracana. Służą do tego opcje:
scale - skala rysunku, scale=2 powiększy rysunek 2x
width - szerokość (w calach, centymetrach itp., np. width=6 cm)
height - wysokość
angle - kąt obrotu.

Użycie komendy bez opcji załaduje grafikę w oryginalnych rozmiarach.

Przykład:
\includegraphics[height=5cm][width=6cm][angle=45]{plik.ps}

Rysunki najlepiej wstawiać w otoczeniu figure, pozwalającym na dodanie podpisu, automatyczną numerację itp. Zastosowanie:
\begin{figure}[tbhp]
\centering
\includegraphics[width=5]{plik.eps}
\caption{Podpis pod rysunkiem}
\label{odnosnik, którym będziemy się posługiwać w tekście}
\end{figure}

Polecenie \centering centruje grafikę względem marginesu lewego i prawego.

Odnośnik do rysunku w tekście ma postać: \ref~{nazwa odnośnika)

Opcje [tbhp] oznaczają, że wstawka może być umieszczona na górze strony (t), na dole (b) lub na oddzielnej stronie ze wstawkami (p). Inna możliwość to h (here) - umieszczenie wstawki w danym miejscu w dokumencie. Można użyć jednocześnie kilka parametrów, jeśli wymóg związany z pierwszym parametrem nie będzie mógł być zrealizowany, nastąpi próba realizacji następnego parametru na liście. Ominięcie tych parametrów da kompilatorowi 'wolną rękę' do wyboru miejsca na rysunek.

Umieszczenie parametru * w otoczeniu tabeli:

\begin{figure}*
..............
\end{figure}*

spowoduje w przypadku tekstu dwukolumnowego rozciągnięcie rysunku na całą stronę.

Dostępnych jest wiele innych zaawansowanych opcji i możliwości manipulowania grafiką poscriptową w ramach pakietu graphicx.

Zadanie.
Wpisz komendę z deklaracją \usepackage{graphicx}w preambule dokumentu art.tex. Wstaw rysunek fig1.eps (z deklaracją rozmiaru) do dokumentu , we wskazanym komentarzem miejscu. Zadeklaruj szerokość 6cm, umieść podpis i odnośnik. Zacytuj rysunek w tekście, we wskazanym miejscu (komenda \ref).

 Literatura

W Internecie można znaleźć doskonałe podręczniki do LaTeXa:

http://www.gust.org.pl/cototex.html

http://home.elka.pw.edu.pl/~macewicz/tex/latex2e/latex2e.html

http://www.agh.edu.pl/pub/tex/GUST/doc/

http://tug.org/utilities/texconv/pctotex.html