Kategoria: LaTeX

LaTeX FAQ Kompilacja do PDF i DVI

2008 Czerwiec 8 – 18:22

W tym odcinku naszych przygod z LaTeXem dowiemy sie jak poprawic kod LaTeXa aby kompilowal sie zarowno do PDFa jak i do DVI(PS) bez kazdorazowego zmieniania. Naturalnie czysty kod bez zadnych skomplikowanych pakietow od razu bedzie sie kompilowal do obu formatow, dlatego to zagadnienie dotyczy glownie plikow z obrazkami.

Zwykle nie ma z tym problemu, ale jesli chcemy komus wyslac nasz plik LaTeX i nie wiemy czym on to bedzie chcial kompilowac, to napewno jest lepiej jesli plik bedzie sie kompilowal do wszystkich formatow wyjsciowych.

Założenia

  • plik LaTeXa ma sie kompilowac do PDF, DVI i PS (np poprzez dvips) bez kazdorazowej zmiany kodu
  • plik wyjsciowy ma wygladac tak samo we wszystkich formatach
  • zalaczone obrazki beda w formacie PNG
    (zamiast PS/EPS uzywam formatu PNG, latwiej mi sie nim operuje edytuje itp, nawet wykresy zalaczam z natury w tym formacie)
  • plik LaTeX ma sie kompilowac bez potrzeby konwersji obrazkow

PDF

Najprosciej zalaczona grafika, za pomoca pakietu graphicx (\usepackage{graphicx}) wyglada mniej wiecej tak:

\includegraphics[scale=0.5]{obrazek.png}

Taki plik kompiluje sie bez problemu do PDF, jednak przy probie kompilacji do DVI(PS) wyskakuja komunikaty typu:

! LaTeX Error: Cannot determine size of graphic in obrazek.png (no BoundingBox).
See the LaTeX manual or LaTeX Companion for explanation.

No wiec co to jest to BoundingBox ? Na marne sa proby wpisywania obrazka w \mbox \box itp, bo nie o to tu chodzi. Kompilator latex radzi sobie jedynie z PS/EPSami ktore w srodku maja wpisany rozmiar obrazka (BoundingBox), poniewaz sam nie potrafi go odczytac (np z JPGa albo PNGa). W tej sytuacji pdflatex radzi sobie lepiej.

DVI(PS)

Tak wiec aby skompilowac poprawnie DVI z obrazkami, nalezy kazdy obrazek wrzucic do PS/EPS. Nie jest wymagana nawet jego konwersja, wystarczy zeby EPS zawieral opis BoundingBox, a w srodku moze siedziec zwykly PNG/JPG. Tutaj jednak pdflatex sobie nie radzi, wyrzucajac erory.

PDF i DVI(PS) !

Rozwiazanie jest proste, jednak chwilke mi zajelo zeby do tego dojsc.

\includegraphics[bb=0 0 330 270, scale=0.5]{obrazek.png}

Fragment bb=0 0 330 270 to wlasnie BoundingBox. Wpisane wartosci, to pozycja lewego gornego oraz prawego dolnego rogu w pixelach, czyli dokladny wymiar obrazka (np InfranView->Image->Information->Original size).
Nalezy wykadrowac obrazek np InfranViewem a potem wpisac dokladnie 0 0 i maxx maxy, poniewaz pdflatex ignoruje ten wpis (odczytujac wielkosc z pliku obrazka). Za to kompilator latex ignoruje wielkosc obrazka i bierze pod uwage wlasnie wartosci bb.
Zeby obrazki byly takiej samej wielkosci w obu formatach, wazne jest aby nie zmieniac ustawien dpi (najlepiej usuwajac wartosc dpi w InfranView->Image->Information->Resolution), poniewaz znowu pdflatex bierze je pod uwage, a latex nie.
Jesli wartosc dpi nie jest ustawiona, obrazki beda rowne w obu formatach, a uzycie scale odpowiednio zmniejszy/powiekszy obrazek.

Wyskakujacych warningow raczej uniknac sie nie da, pozatym nie przeszkadzaja one w poprawnej kompilacji naszego pliku z obrazkami.

Mozliwe ze nie do konca jasno przedstawilem aspekty tego problemu, ale rozwiazanie jest dobre, dziala i latwo je zastosowac.

  1. 2 komentarze to “LaTeX FAQ Kompilacja do PDF i DVI”

  2. Rozklad a priori
    Niech w zrandomizowanej grze statystycznej (\Teta, D,R) parametr \teta \in \Teta jest o określonym rozkładzie prawdopodobieństwa, oraz \Sigma będzie najmniejszym \sigma – ciałem podzbiorów zbioru \Teta zawierającym wszystkie jednoelementowe podzbiory zbioru \Teta, oraz oraz względem którego funkcje ryzyka są mierzalne dla każdego \delta \in D.
    Rozkładem a priori parametru \teta nazywamy miarę probabilistyczną \pi określoną na przestrzeni (\Teta, \Sigma). Przez \Pi oznaczamy zbiór wszystkich rozkładów a priori na (\Teta, \Sigma).
    Zbiór \Teta można utożsamić z podzbiorem zbioru \Pi skąłdającym się ze wszystkich rozkładów a priori skoncentrowanych w pojedynczych punktach zbioru \Teta.
    Każdy rozkład a priori \pi pozwala uporządkować funkcje decyzyjne.

    2. BAYES
    Poszukiwanie funkcji decyzyjnej przy zasadzie Bayesa opiera się na ty, że stan natury \teta w grze (\Teta, D, R) jest zmienną losową o znanym rozkładzie prawdopodobieństwa.
    Zasada Bayesa polega na uporządkowaniu zbioru funkcji decyzyjnych według wielkości ryzyka bayesowskiego dla ustalonego rozkładu a priori.
    Definicja
    Ryzykiem bayesowskim zrandomizowanej funkcji decyzyjnej \delta \in \D względem rozkładu a priori \pi \in \Pi nazywamy całkę (o ile istnieje i jest skończona):
    (41)
    Definicja
    Ryzykiem bayesowskim niezrandomizowanej funkcji decyzyjnej d \in D względem rozkładu a priori nazywamy całke
    (41),
    Zakąłdając że ona istnieje i jest skończona.

    By monika on Gru 18, 2010

  3. \documentclass [12pt] {article}
    \usepackage{polski}
    \usepackage[cp1250]{inputenc}
    \usepackage[T1]{fontenc}
    \usepackage{amsmath}
    \usepackage{amssymb}
    \usepackage{amscd}
    \usepackage{latexsym}
    \newtheorem{tw}{TWIERDZENIE}[section]
    \newtheorem{lm}[tw]{LEMAT}
    \newtheorem{wl}[tw]{W{\L}ASNO{\’S}{\’C}}
    \newtheorem{df}[tw]{DEFINICJA}
    \newtheorem{wn}[tw]{WNIOSEK}
    \newtheorem{uw}[tw]{UWAGA}
    \newtheorem{zd}[tw]{ZADANIE}
    \newtheorem{pr}[tw]{Przyk{\l}ad}
    \newcommand{\bd}{\bf Dow{\’o}d:}
    \newcommand{\ed}{\hfill $\Box$\\}

    \begin{document}

    \section{Gry statystyczne}

    W teorii decyzji statystycznych strukturę gry statystycznej tworzą
    następujące elementy:\\
    $\bullet$ $\Theta$ to niepusty możliwy zbiór stanów natury, \\
    $\bullet$ $\theta$ – stan natury, $ \theta \in \Theta,$ \\
    $\bullet$ $A$ to zbiór akcji dostępny graczowi,\\
    $\bullet$ $a$ – decyzja gracza, $ a\in A$,\\
    $\bullet$ $L(\theta,a)$ to funkcja straty określona na zbiorze $\Theta
    × A$, wynikająca z akcji gracza $a \in A$, przy stanie natury $ \theta
    \in \Theta$. \\
    Powyższa gra jest to gra dwuosobowa o sumie zero, gdzie jednym graczem
    jest stan natury $\theta \in \Theta$, oraz gracz zwany statystykiem
    który wybiera akcję $a \in A$ nie znając stanu natury. Konsekwencją jest
    strata (lub zysk przy ujemnych wartościach) wyznaczony przez funkcję $
    L: \Theta \times A\ \rightarrow \mathbb{R} $.\\

    Zagadnienie optymalizacji decyzji polega więc na poszukiwaniu takiej
    decyzji, która będzie najlepszą decyzją w sensie przyjętego wskaźnika
    jakości tzn. decyzją minimalizującą funkcję straty.\\
    Statystyk ma możliwość zebrania informacji o wyborze stanu natury
    poprzez doświadczenia i obserwację zmiennej losowej $X$ o rozkładzie
    $P_{\theta}, \ \theta \in \Theta$. Grę $(\Theta, A, L)$ połączoną z
    wynikiem eksperymentu $X$ nazywamy statystycznym problemem decyzyjnym
    lub grą statystyczną. \\
    Funkcja decyzyjna $d(x)$ wskazuje graczowi, którą decyzje $a \in A$ ma
    wybrać na podstawie eksperymentu $x$.

    \begin{df}
    Gra wyznaczona przez trójkę $(\Theta, A, L)$ nazywana jest pierwotną grą
    statystyczną, odpowiadającą statystycznemu problemowi decyzyjnemu.
    \end{df}

    \subsection{Niezrandomizowane funkcje decyzyjne}

    \begin{df}
    Funkcją ryzyka dla funkcji decyzyjnej $d: \mathcal{X} \rightarrow a$
    jest wartość oczekiwana funkcji strat $ L(\theta, d(X)) $ tzn.
    \begin{equation}
    R(\theta, d(x)) = E_{\theta}[L(\theta, d(X)] = \int_{\mathcal{X}}
    L(\theta, d(x)) dP_{\theta}(x), \ \ \theta \in \Theta
    \end{equation}
    \end{df}

    \begin{df}
    Funkcję $d: \mathcal{X} \rightarrow a$ nazywa się niezrandomizowaną
    funkcją decyzyjną jeśli istnieje i jest skończona funkcja ryzyka
    \end{df}
    Zbiór niezrandomizowanych funkcji decyzyjnych oznacza się przez $D$.\\\\
    Pierwotną grę statystyczną $(\Theta, A, L)$ zastąpimy prze nową, gdzie
    zamiast zbioru $A$ rozpatrujemy zbiór $D$, oraz zamiast funkcji straty
    $L$ funkcję ryzyka $R$. Funkcja ryzyka $R$ oraz przestrzeń $D$ jest
    zależna od funkcji straty $L$, od zbioru akcji $A$ oraz rozkładu
    prawdopodobieństwa zmiennej $X$.

    \end{document}

    By kazia on Gru 28, 2010

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *