• Aucun résultat trouvé

Włączanie grafiki w formacie EPS

4. Rysunki, skorowidze, generowanie plików PDF

4.1. Włączanie grafiki w formacie EPS

Najprościej przygotować ilustrację w wyspecjalizowanym programie graficz-nym w rodzaju xfig, CorelDraw!, Freehand, gnuplot, itp., a później włączyć gotowy rysunek do dokumentu. Chociaż można to zrobić na wiele sposo-bów, tutaj przedstawimy jedynie sposób na dołączanie grafiki w formacie eps(Encapsulated PostScript), jako że jest to technika prosta i szeroko sto-sowana1. Do pracy z grafiką w formacie eps potrzebujemy albo drukarki wyposażonej w język Postscript, albo programu ghostscript, dostępnego na przykład pod adresem http://www.cs.wisc.edu/~ghost/. Program gho-stscript oraz ułatwiające posługiwanie się nim graficzne nakładki, takie jak:

ghostview, gv czy gsview są dostępne (pod wyżej wymienionym adresem) na wszystkie popularne platformy systemowe.

Wielu poleceń przydatnych do włączania rysunków dostarcza pakiet gra-phicx(autor: D. P. Carlisle), będący częścią zestawu o nazwie „graphics”2. Włączenie grafiki do dokumentu za jego pomocą możemy przedstawić w na-stępujący sposób:

1Użytkownicy programów typu Office, którzy w tym momencie być może po raz pierwszy usłyszeli, że istnieje coś takiego jak język Postscript i jego wariant eps, mogą być tym stwierdzeniem zdziwieni. Tak jednak jest w istocie: inne standardy obowiązuję w biurze, a inne w przemyśle poligraficznym. Więcej na temat grafiki można znaleźć w [19].

2Zestaw „graphics” jest obowiązkową (ang.required) częścią każdej dystrybucji LATEXa, można go też znaleźć w kataloguCTAN://macros/latex/required/graphics.

1. W programie graficznym zachowujemy rysunek w formacie eps3 lub konwertujemy rysunek na format eps, jeżeli dysponujemy już gotową grafiką ale w innym formacie4.

2. Dołączamy pakietgraphicx do preambuły dokumentu:

\usepackage[dvi-ps]{graphicx}

gdziedvi-ps oznacza nazwę programu do konwersji pliku wyjściowego .dvi na plik postscriptowy. Najczęściej używanym do tego celu pro-gramem jest dvips. Nazwa sterownika jest tu konieczna, gdyż brakuje standardu dotyczącego dołączania grafiki postscriptowej w dokumen-tach TEXowych. Kierując się nazwą sterownika, pakietgraphicxpotrafi do wynikowego pliku .dvi włączyć informację potrzebną do tego, by interpreter Postscriptu (w drukarce bądź w komputerze) poprawnie umieścił rysunek na wydruku.

3. Instrukcją:

\includegraphics[klucz=wartość, . . .]{plik}

włączamyplik do dokumentu. Parametr opcjonalny jest listą oddzielo-nych przecinkamikluczy, o określonych przez nas wartościach. Klucze wykorzystujemy do zmiany parametrów dołączanego rysunku, takich jak szerokość, wysokość czy kąt obrotu. W tabeli 4.1 zamieszczono najważniejsze klucze.

Tabela 4.1: Znaczenie ważniejszych kluczy polecenia\includegraphics width=w skalowanie rysunku do podanej szerokościw

height=h skalowanie rysunku do podanej wysokościh

angle=a obrót o kąta (przeciwnie do ruchu wskazówek zegara) scale=s równomierne przeskalowanie w skalis

Poniższy przykład pomoże zrozumieć całą ideę:

3Jeżeli używany przez nas program graficzny na to nie pozwala, to spróbujmy zain-stalować sterownik do drukarki postscriptowej, jak Apple Laser Writer, i drukować tym sterownikiem do pliku. Przy odrobinie szczęścia otrzymamy dokument w formacieeps. Pa-miętajmy, że plikepsmoże zawierać tylko jedną stronę. Sterowniki niektórych drukarek można jawnie ustawić do tworzenia plików wyjściowych właśnie w tym formacie.

4W wypadku grafiki obwiedniowej i rastrowej, można do tego celu użyć programu Ima-geMagick (http://www.imagemagick.org/). Dobrym programem do konwersji, ale tylko grafiki rastrowej, jest gimp (http://www.gimp.org). Do konwersji zdjęć albo innych grafik w formaciejpgwygodnym narzędziem jest jpeg2pshttp://gnuwin32.sourceforge.net/

packages/jpeg2ps.htm. Niestety konwersja plików zapisanych w promowanym przez firmę Microsoft formaciewmf/emf(MS Visio, MS Office, itp.) często daje opłakane rezultaty, ale to już jest wina wspomnianej firmy i stosowanej przez nią „strategii biznesowej”. . .

4.1. Włączanie grafiki w formacie EPS 67

\begin{figure}

%\begin{center} zamiast \begin{center} użyj lepiej

\centering % bo \centering nie wstawia dodatkowego odstępu

\includegraphics[angle=90,width=0.5\textwidth]{sowauszata.eps}

\end{figure}

W powyższym przykładzie do dokumentu jest dołączany rysunek z pliku sowauszata.eps. Rysunek najpierw obracamy o 90o w kierunku przeciw-nym do ruchu wskazówek zegara, a następnie przeskalowujemy tak, by nadać mu szerokość równą połowie szerokości szpalty. Skalowanie grafiki jest rów-nomierne z uwagi na brak klucza height. Szerokość i wysokość rysunku możemy też określić w jednostkach bezwzględnych, takich jak punkty czy centymetry. W tabeli6.5zestawiono jednostki miar w LATEXu. Więcej infor-macji na temat powyższych zagadnień znajdziemy w [2] i [22].

Z powodów opisanych w punkcie 4.7.3, zaleca się podawać nazwę dołą-czanego pliku graficznegobez rozszerzenia, to znaczy lepiej zapisać powyższe polecenie\includegraphics następująco:

\includegraphics[angle=90,width=0.5\textwidth]{sowauszata}

W takiej sytuacji LATEX będzie szukał plikusowauszatao rozszerzeniu ade-kwatnym do możliwości zadeklarowanego w poleceniu\usepackage sterow-nika. Przykładowo, jeżeligraphicx było wywołane z opcjądvips, to szukany będzie pliksowauszata.eps, jeżeli zaś użyjemy opcji pdftex, to będą szu-kane pliki o rozszerzeniach.pdf,.jpgi.png, a pierwszy znaleziony zostanie dołączony.

Rysunki najlepiej jest umieszczać w oddzielnym katalogu, będącym pod-katalogiem tego, w którym jest dokument LATEXa. Bez względu na używany system operacyjny katalogi w ścieżce dostępu należy odzielać znakiem /5:

\includegraphics[width=0.5\textwidth]{rys/sowy/sowauszata}

Czasami wewnątrz jednego otoczenia figurechcemy umieścić kilka plików graficznych. W tym celu wystarczy, że umieścimy je obok siebie i w miarę potrzeby odpowiednio przeskalujemy:

\begin{figure}

\centering

%% http://pl.wikipedia.org/wiki/Ptaki_Polski

\includegraphics[width=.3\textwidth]{sowauszata}

\includegraphics[width=.3\textwidth]{puszczykmszarny}

\includegraphics[width=.3\textwidth]{bubobubo}%puchacz

\end{figure}

W powyższym przykładzie trzy rysunki zostaną umieszczone jeden obok drugiego. Ich łączna szerokość wyniesie 3×0,3 = 0,9 szerokości kolumny

5Wszystkie uwagi dotyczące nazw plików opisane w punkcie1.8dla polecenia\include dotyczą także polecenia\includegraphics.

(\textwidth w języku LATEXa), między rysunkami wstawiony zostanie od-stęp wielkości zwykłej spacji, co wynika z zasady LATEXa, że pojedyncza zmiana wiersza jest traktowana jak odstęp. Całość zostanie wyśrodkowana w osi szpalty. Pamiętajmy, żeby do tego stosować polecenie \centering a nie otoczeniecenter, gdyż to drugie wstawia dodatkowy a zbędny odstęp pionowy.

Aby efekt końcowy na wydruku był zadowalający, rysunki powinny mieć identyczne wymiary. Inaczej, albo poszczególne obrazki będą optycznie niezgodnie (np. sowa uszata będzie 3 razy większa od puchacza), albo też poszczególne rysunki składowe będą miały różne wymiary (rysunek z sową uszatą będzie dwa razy mniejszy niż rysunek z puchaczem).

Czasami rysunki czy tabele zmieściłyby się na stronie, gdyby obrócić je o 90o. W tym celu można skorzystać z pakietu rotating. Do obracania dowolnego fragmentu tekstu, pudełka (por. punkt 6.6), tabeli itp. należy używać otoczeniarotate:

\begin{rotate}{kąt} ... \end{rotate}

Do obrócenia obiektu o kąt 90o należy użyć otoczeniasideways:

\begin{sideways} ... \end{sideways}

Do obrócenia tabeli łącznie z podpisem pod tabelą należy zastosować oto-czeniesidewaystable(uwaga: tabela jest umieszczana na osobnej stronie):

\begin{sidewaystable} ... \end{sidewaystable}

Do obrócenia rysunku łącznie z podpisem pod rysunkiem należy użyć otocze-niasidewaysfigure(uwaga: rysunek jest umieszczany na osobnej stronie):

\begin{sidewayfigure} ... \end{sidewaysfigure}