Skriptum - Hochschule Karlsruhe

Transcription

Skriptum - Hochschule Karlsruhe
Ausgewählte LATEX-Kapitel
Tabellen, Grafiken und Postscript-Schriften
Prof. Dr. Ottmar Beucher
Fakultät Maschinenbau und Mechatronik
©2006
Ausgewählte LATEX-Kapitel
Microsoft isn’t the answer.
Microsoft ist the question.
And the answer is NO!
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
1
Vorwort
Das vorliegende Skriptum ist ein Beitrag zu einem Kompaktkurs in LATEX, welcher zusammen mit den Kollegen Eberhard Halter und Oliver Stumpf erstmals
im November 2001 für Studierende der Hochschule Karlsruhe - Technik und
Wirtschaft abgehalten wurde.
Das Skriptum deckt die Themengebiete Tabellen, Grafikimport und PostScriptSchriften ab.
Die Kapitel enthalten zahlreiche Übungen, die während des Kurses zu bearbeiten waren. Ihre praktische Bearbeitung ist für das Verständnis des Inhalts
wesentlich und unverzichtbar.
Gegenüber der ersten Version haben sich der Aufbau des Kurses und des zugehörigen Skriptums grundlegend verändert. So wurde etwa das Thema „Tabellen“ ursprünglich umfassend und unter weitreichender Verwendung selbst
geschriebener Makros behandelt, um die etwas schwerfälligen Tabellendefinitionen abzukürzen und übersichtlicher zu machen. Im Verlauf des ersten
Kurses hatte sich jedoch gezeigt, dass dieses Konzept beim Anfänger zu Verwirrungen führt. Dieser Tatsache wurde im vorliegenden Skriptum insofern
Rechnung getragen, als in dem entsprechenden Kapitel (Kapitel 2) auf diese
Technik zunächst verzichtet wird. Zudem wurden einige Themenbereiche zu
Gunsten einer intensiveren Behandlung der grundlegenden Tabellenkonstrukte weggelassen.
Für den interessierten Leser wurden die so aus dem Kapitel verbannten Dinge,
welche dem Autor jedoch nichts desto trotz als nützlich erscheinen, in einem
eigenen Kapitel am Ende des Skriptums zusammengefasst. Diese können so
bei Bedarf und Neigung im Selbststudium erarbeitet werden.
Auch die Kapitel zur Grafikeinbindung und zur Verwendung von PostscriptSchriften wurden „entrümpelt“. Dem Kursteilnehmer und Leser soll so eine Konzentration auf das Wesentliche ermöglicht werden, also auf Techniken,
welche häufig vorkommen und nach Meinung des Autors von größtem Nutzen sind.
Wie bereits erwähnt, stießen die Teilnehmer des ersten Kurses auf Schwierigkeiten, die so vom Autor nicht erwartet und vorhergesehen wurden. Diese
2
Ausgewählte LATEX-Kapitel
3
betrafen in erster Linie die häuslichen Übungen. Es stellte sich heraus, dass
vielen Teilnehmern das Konzept der Paketeinbindung von LATEX noch nicht
klar war, was nicht nur zu Problemen bei der Verwendung der schon erwähnten selbst geschriebenen Makros führte, sondern auch generell zu Problemen
bezüglich der Verwendung von Standardpaketen. Es erschien daher ratsam,
in einem eigenen Kapitel, welches neu in das Skriptum aufgenommen wurde,
vorab darauf einzugehen. Der Kursteilnehmer sollte so in der Lage sein, auf
entsprechende Schwierigkeiten zu reagieren und sich gegebenenfalls selbst
helfen zu können.
Landau und Karlsruhe
im Oktober 2006
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
O. Beucher
Inhaltsverzeichnis
1
2
Vorwort
3
Grundlagen und Voraussetzungen
7
1.1
LATEX-Pakete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7
1.2
Aufbau der verwendeten LATEX-Dokumente . . . . . . . . . . . .
11
1.3
Informationsbeschaffung und Trouble-Shooting . . . . . . . . .
15
1.4
Übungen zum Thema Grundlagen und Voraussetzungen . . . .
17
Tabellensatz mit LATEX
19
2.1
Das array-Paket . . . . . . . . . . . . . . . . . . . . . . . . . . .
19
2.1.1
Die array-Umgebung . . . . . . . . . . . . . . . . . . . .
20
2.1.2
Die tabular-Umgebung . . . . . . . . . . . . . . . . . .
21
2.2
Übungen zum array-Paket . . . . . . . . . . . . . . . . . . . . .
23
2.3
Das array-Paket (Fortsetzung) . . . . . . . . . . . . . . . . . . .
24
2.3.1
Wiederholung von Spaltendefinitionen . . . . . . . . . .
27
2.3.2
Unterdrückung der Spaltenzwischenräume . . . . . . . .
29
2.3.3
Anpassung der Schriftgrößen . . . . . . . . . . . . . . . .
29
2.3.4
Allgemeine Anpassungen für Spalten . . . . . . . . . . .
30
2.3.5
Tafeln mit vertikalen Linien . . . . . . . . . . . . . . . . .
32
2.4
Übungen zum array-Paket . . . . . . . . . . . . . . . . . . . . .
34
2.5
Der multicolumn-Befehl . . . . . . . . . . . . . . . . . . . . . .
36
2.6
Übungen zum multicolumn-Befehl . . . . . . . . . . . . . . . .
39
2.7
Tabellen im Querformat . . . . . . . . . . . . . . . . . . . . . . .
40
2.8
Übungen zu Tabellen im Querformat . . . . . . . . . . . . . . . .
43
2.9
Automatische Berechnung von Spaltenbreiten . . . . . . . . . .
45
4
Ausgewählte LATEX-Kapitel
3
4
5
6
5
2.10 Übungen zu Tabellen mit automatischer
Berechnung von Spaltenbreiten . . . . . . . . . . . . . . . . . . .
46
2.11 Setzen von mehrseitigen Tabellen . . . . . . . . . . . . . . . . . .
47
2.12 Übungen zu mehrseitigen Tabellen . . . . . . . . . . . . . . . . .
52
2.13 Schlussbemerkungen . . . . . . . . . . . . . . . . . . . . . . . . .
54
LATEX und Grafiken
58
3.1
Das graphicx-Paket . . . . . . . . . . . . . . . . . . . . . . . . .
58
3.2
Übungen zum graphicx-Paket . . . . . . . . . . . . . . . . . .
63
3.3
Das caption2-Paket . . . . . . . . . . . . . . . . . . . . . . . . .
63
3.4
Übungen zum caption2-Paket . . . . . . . . . . . . . . . . . .
65
3.5
Graphiken nebeneinander setzen . . . . . . . . . . . . . . . . . .
66
3.6
Übungen zum Nebeneinandersetzen von Grafiken . . . . . . . .
67
3.7
Graphiken als Gleitobjekte . . . . . . . . . . . . . . . . . . . . . .
69
Postscript-Schriften für LATEX
70
4.1
Pakete für PostScript-Schriften . . . . . . . . . . . . . . . . . . .
70
4.2
Übungen zu den Paketen für
PostScript-Schriften . . . . . . . . . . . . . . . . . . . . . . . . . .
71
4.3
PostScript-Pi-Fonts . . . . . . . . . . . . . . . . . . . . . . . . . .
72
4.4
Übungen zu PostScript-Pi-Fonts . . . . . . . . . . . . . . . . . .
75
Acrobatik mit LATEX
77
5.1
Pdf via Postscript . . . . . . . . . . . . . . . . . . . . . . . . . . .
77
5.2
Übung zur Erzeugung von Pdf via Postscript . . . . . . . . . . .
78
5.3
Pdf mit pdfLATEX . . . . . . . . . . . . . . . . . . . . . . . . . . . .
78
5.4
Übung zur Erzeugung von Pdf via pdfLATEX . . . . . . . . . . . .
79
Tabellen und Grafiken - fortgeschrittene Themen
80
6.1
Makros für den Tabellensatz . . . . . . . . . . . . . . . . . . . . .
80
6.2
Übungen zu den Makros für den Tabellensatz . . . . . . . . . .
83
6.3
Das dcolumn-Paket . . . . . . . . . . . . . . . . . . . . . . . . . .
84
6.4
Übungen zum dcolumn-Paket . . . . . . . . . . . . . . . . . . .
86
6.5
Zusammenfassen mehrerer Zeilen . . . . . . . . . . . . . . . . .
87
6.6
Übungen zum Zusammenfassen mehrerer Zeilen . . . . . . . .
90
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
6
6.7
Gedrehte und gestürzte Tabelleneinträge . . . . . . . . . . . . .
90
6.8
Übungen zu gedrehten Tabelleneinträgen . . . . . . . . . . . . .
93
6.9
Textumflossene Grafiken . . . . . . . . . . . . . . . . . . . . . . .
93
6.10 Übungen zu textumflossenen Grafiken . . . . . . . . . . . . . . .
97
6.11 Mehrere Grafik-Pakete verwenden . . . . . . . . . . . . . . . . .
98
6.12 Postscript-Schriften verwenden . . . . . . . . . . . . . . . . . . . 101
6.13 Übungen zu PostScript-Schriften . . . . . . . . . . . . . . . . . . 105
6.14 Mathematische PostScript-Fonts . . . . . . . . . . . . . . . . . . 106
6.15 Übung zu mathematischen PostScript-Fonts . . . . . . . . . . . 107
7
Lösungen zu den Übungen
A Pi-Font-Tabellen
108
130
A.1 Die Zapf-Dingbats-Tabelle . . . . . . . . . . . . . . . . . . . . . . 130
A.2 Die Symbol-Font-Tabelle . . . . . . . . . . . . . . . . . . . . . . . 132
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Kapitel 1
Grundlagen und Voraussetzungen
In diesem Kapitel soll zum einen nochmals auf ein paar grundlegende Begriffe
eingegangen werden, auf die im ersten Kursteil zum Teil schon hingewiesen
wurde, zum anderen sollen spezielle Hinweise gegeben werden, die den Kursteilnehmer in die Lage versetzen sollen, die Inhalte der nachfolgenden Kapitel
besser einordnen und selbstständig bearbeiten zu können.
1.1
LATEX-Pakete
TEX und seine Erweiterung LATEX stellen eine Programmierumgebung zur Verfügung, die es, wie schon im ersten Kursteil gezeigt, erlaubt, Texte nahezu
jeglicher Art in typografisch einwandfreier Form zu setzen.
Viele der von LATEX dabei zur Verfügung gestellten Befehle werden dabei durch
die so genannte Dokumentklasse festgelegt, welche in der ersten Zeile des Vorspanns eines LATEX-Dokuments, der so genannten Präambel, durch den Befehl
\documentclass
bekannt gemacht wird.
Beispielsweise wird durch die Präambel-Anweisung
\documentclass[...<Optionen>...]{book}
die Dokumentklasse book eingestellt. Die Definitionen der durch diese Dokumentklasse zur Verfügung gestellten LATEX-Befehle und Umgebungen befinden sich in der Datei book.cls. Im MiKTeX-Verzeichnisbaum sollte diese Datei im Verzeichnis \texmf\tex\latex\base liegen und es lohnt sich,
Ausgewählte LATEX-Kapitel
einmal mit einem Texteditor einen Blick darauf zu werfen, selbst wenn man
die dortigen TEX-Anweisungen nicht versteht.
Man erkennt zumindest, dass dort u.A. LATEX-Befehle (mit der Anweisung
\newcommand), LATEX-Umgebungen (mit der Anweisung \newenvironment), Zähler und Längen definiert werden, welche dem LATEX-Anwender
dann zur Verfügung stehen. Wir werden weiter unten auf die Bedeutung von
Befehlen und Umgebungen noch näher eingehen. Wie diese im LATEX-Text zu
verwenden sind, kann natürlich der Datei book.cls nicht entnommen werden. Hierfür gibt es die entsprechenden Dokumentationen und Sekundärliteratur [7, 8, 9].
Die Dokumentklasse alleine liefert jedoch u.U. nicht alle notwendigen Befehle
und Umgebungen, die nötig sind, um spezielle Dinge, wie etwa den Satz von
Tabellen und das Einbinden externer Grafiken zu realisieren.
Hierzu gibt es dann ggf. Sammlungen von LATEX-Makros, so genannte Pakete, welche von verschiedenen Autoren geschrieben wurden und der Allgemeinheit auf dem Netz zur Verfügung gestellt werden. Jeder LATEX-Nutzer
kann diese Pakete auf den entsprechenden Servern, etwa dem Dante-Server
(www.dante.de) suchen und herunterladen. Die entsprechenden Paketsammlungen gibt es auch auf CD-ROM. Den Teilnehmern des Kurses kann
eine solche Sammlung mit nahezu allen relevanten Paketen auf Wunsch zur
Verfügung gestellt werden. Die Standard-MiKTeX-Installation enthält darüber hinaus bereits die wichtigsten Pakete. Die entsprechenden Dateien
(so genannte Style-Files), welche die Endung .sty tragen sind im MiKTeXVerzeichnisbaum meist unter \texmf\tex\latex zu finden.
Wie man zusätzliche Pakete installiert ist von Installation zu Installation verschieden. Prinzipiell hat man nur das neue .sty-File in einen Ordner einzufügen, in dem LATEX nach solchen Dateien sucht, also etwa \texmf\tex\latex\
<Ordnername> und dann die Datenbasis mit einem entsprechenden Systembefehl auf den neuesten Stand zu bringen. Da dies jedoch von System zu System unterschiedlich sein kann, soll dies hier nicht näher beschrieben werden.
Hier muss auf die Dokumentation des jeweiligen MiKTeX-Systems verwiesen
werden.
Pakete einbinden
Das Einbinden eines Pakets in der Präambel erfolgt mit dem Befehl
\usepackage
Beispielsweise wird durch die Präambel-Anweisung
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
8
Ausgewählte LATEX-Kapitel
\usepackage{longtable}
das Paket longtable eingebunden. Dieses Paket stellt Befehle und Umgebungen zur Verfügung, die es erlauben, lange Tabellen, also Tabellen, die über
mehrere Seiten hinweg gehen, zu setzen (vgl. Kapitel 2).
Eine Präambel enthält i.A. sehr viele solcher usepackage-Anweisungen.
Normalerweise erzeugt man sich als LATEX-Anwender im Laufe der Zeit geeignete Vorlagen (Template-Files) für den jeweils gewünschten Dokumenttyp.
Wir werden im Folgenden ein Template-File vorstellen und besprechen, welches für die Übungen zu den nachfolgenden Kapiteln verwendet werden sollte.
Befehle und Umgebungen
In den vorangegangenen Abschnitten war schon mehrfach von LATEX-Befehlen
und -Umgebungen gesprochen worden, ohne das diese Begriffe näher erläutert
wurden.
Ein LATEX-Befehl besteht aus einem mit einem Backslash (\) eingeleiteten Schlüsselwort, welches ggf. Argumente benötigt, die ihrerseits in geschweiften
Klammern eingeschlossen werden. Die Wirkung solcher Befehle erstreckt sich
entweder auf das ganze nachfolgende Dokument oder auf das Argument oder
auf einen vom Nutzer durch geschweifte Klammern definierten Abschnitt des
Dokuments.
Beispielsweise wird durch den Befehl \emph mit
\emph{Befehle}
das Wort Befehle zur Hervorhebung (emphasis) in kursiver Form gesetzt. Die
Wirkung beschränkt sich dabei auf den Inhalt der nachfolgenden geschweiften
Klammern.
Durch die Anweisung
\bfseries
wird der nachfolgende Text fett gedruckt. Die Wirkung erstreckt sich somit bis
zum Ende des Dokuments bzw. bis zu einem Befehl, der diese Anweisung wieder aufhebt. Die Wirkung kann allerdings auch dadurch eingegrenzt werden,
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
9
Ausgewählte LATEX-Kapitel
dass man den Befehl zwischen zwei geschweifte Klammern setzt. So bewirkt
beispielsweise
Der Text {\bfseries wird nun fett gesetzt} und dann wieder normal!
die Ausgabe:
Der Text wird nun fett gesetzt und dann wieder normal!
Die Umstellung auf Fettdruck hat sich also nur lokal, d.h. innerhalb der geschweiften Klammern ausgewirkt.
Eine LATEX-Umgebung wird durch
\begin{<Umgebungsname>}
Anweisungen
···
Anweisungen
\end{<Umgebungsname>}
definiert.
Innerhalb der begin...end Klammer werden die LATEX-Anweisungen entsprechend der Definition der Umgebung interpretiert. Ihre Wirkung ist auf diese
Klammer beschränkt.
So wird etwa mit
Der Text
\begin{bfseries}
wird nun fett gesetzt
\end{bfseries}
und dann wieder normal!
ebenfalls die Wirkung
Der Text wird nun fett gesetzt und dann wieder normal!
erzielt.
Viele LATEX-Anweisungen, wie etwa bfseries, sind sowohl in der Befehlsform
als auch in der Umgebungsform definiert und können entsprechend verwendet werden. Einzelheiten sind der Dokumentation des jeweiligen Pakets zu
entnehmen, in dem die Befehle und Umgebungen definiert werden.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
10
Ausgewählte LATEX-Kapitel
Eigene Befehle definieren und einbinden
Besitzt man einige etwas weiter gehende TEX-Kenntnisse, so kann man natürlich auch eigene Makros und Befehle definieren. Fasst man diese Befehle dann
in einem eigenen Style-File zusammen, so kann man dieses File, wie oben beschrieben, im MiKTeX-Verzeichnis installieren und die Definitionen mit dem
\usepackage-Befehl in sein Dokument einbinden.
Wir haben von dieser Möglichkeit in Kapitel 6 Gebrauch gemacht, um die etwas schwerfälligen Tabellendefinitionen durch entsprechende Abkürzungen
übersichtlicher und leichter handhabbar zu machen. Der Nachteil dieses Verfahrens ist natürlich, dass man die sicheren Pfade des Standard-LATEX verlässt.
Die Einbindung des selbst verfassten Pakets ist in diesem Falle unbedingt notwendig, damit das Dokument TEX-bar bleibt.
1.2
Aufbau der verwendeten LATEX-Dokumente
Im Folgenden werden zur Einübung des Erlernten zahlreiche Übungsaufgaben angeboten. Die Bearbeitung der Übungsaufgaben setzt voraus, dass sämtliche verwendeten Pakete mit dem \usepackage-Befehl in der Präambel eingebunden werden.
Um dies sicherzustellen, werden vorgefertigte LATEX-Dokumente angeboten,
so genannte Template-Files, welche alle notwendigen Präambel-Befehle schon
enthalten. Um Fehler und Ärger, etwa bei der häuslichen Nacharbeit der
Übungsaufgaben zu vermeiden, wird dringen empfohlen, diese Templates zu
verwenden und die unten beschriebene Vorgehensweise einzuhalten.
Template-Files für dieses Skript
Für die Übungsaufgaben der Kapitel 1 bis 4 sollte das Template-File LatexVor2006VorlageUebungen.tex verwendet werden. Es hat folgende Gestalt:
%%%%%%%%
%%%%%%%%
%%%%%%%%
%%%%%%%%
%%%%%%%%
%%%%%%%%
%%%%%%%%
%%%%%%%%
LatexVor2006VorlageUebungen.tex - Vorlesung LaTeX
Oktober 2006
Dieses Template-File sollte zur Bearbeitung der
Übungsaufgaben der Kapitel 1 bis 4 verwendet werden.
Die Vorgehensweise wird im Skript und in den
nachfolgenden Kommentaren erläutert!
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
11
Ausgewählte LATEX-Kapitel
%%%%%%%%
%%%%%%%%
%%%%%%%%
%%%%%%%%
%%%%%%%%
%%%%%%%%
%%%%%%%%
%%%%%%%%
Um Probleme zu vermeiden, wird dringend empfohlen,
sich an diese Struktur zu halten!
Autor: Prof. Dr. Ottmar Beucher
email: [email protected]
Bug-reports: bitte nur mit Beispielfile und kompletter
Fehlerbeschreibung zusenden!!
\documentclass[a4paper,oneside,12pt]{article}
%%%%%%% Pakete zur Einstellung der Schrift auf die Palatino%%%%%%% Familie
\usepackage{palatino}
\usepackage{pifont}
\usepackage[scaled=0.92]{helvet}
%%%%%%% Pakete zur Einstellung der T1-Fontcodierung (empfohlen)
%%%%%%%
\usepackage[T1]{fontenc}
\usepackage{textcomp}
%%%%%%% Einstellungen für die deutsche Sprache (Trennung etc.)
%%%%%%%
\usepackage{ngerman}
%%%%%%% Ifthen-Paket
%%%%%%% wird unten verwendet, um einen Schalter zu definieren, der
%%%%%%% erkennt, ob pdfLaTeX oder LaTeX läuft. Je nach dem werden
%%%%%%% mit \includegraphics dann andere Grafikformate eingebunden
%%%%%%%
\usepackage{ifthen}
%%%%%%% Ansi-Paket, damit im Text Umlaute geschrieben und richtig
%%%%%%% erkannt werden
%%%%%%%
\usepackage[ansi]{umlaute}
%%%%%%% Übliche Pakete, die für das Scheiben von Mathematik
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
12
Ausgewählte LATEX-Kapitel
%%%%%%% gebraucht werden
%%%%%%%
\usepackage{theorem}
\usepackage{latexsym}
\usepackage{verbatim}
\usepackage{a4}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{amsmath}
\usepackage{mathpple}
% mathematische Zeichen passen zu Palatino
\usepackage{fancybox}
%%%%%%% Pakete für die Tabellengestaltung
%%%%%%%
\usepackage{array}
\usepackage{longtable}
\usepackage{booktabs}
\usepackage{dcolumn}
\usepackage{tabularx}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%
%%% Spezielle Definition für Tabellen:
%%% siehe Latex-Begleiter Seite 110
%%% Sichert die Definition des Zeilenumbruchs für die Umgebungen
%%% array und tabular, damit dort Flattersatz mit \raggedright
%%% verwendet werden kann
%%%
\newcommand{\PreserveBackslash}[1]{\let\temp=\\#1\let\\=\temp}
\let\PBS=\PreserveBackslash
%%%%%%% Es wird automatisch ermittelt, ob LaTeX oder PdfLaTeX
%%%%%%% läuft, damit bei den Bildern entsprechend umgeschaltet
%%%%%%% werden kann. Hierzu wird der Schalter ispdftex definiert
\newboolean{ispdftex}
\ifthenelse{\isundefined{\pdfoutput}}{%
\setboolean{ispdftex}{false}}{%
\setboolean{ispdftex}{true}}
%%%%%%% Mit Hilfe des Schalters ispdftex wird je nach dem
%%%%%%% bei PdfLaTeX das graphicx-package, bei LaTeX das
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
13
Ausgewählte LATEX-Kapitel
14
%%%%%%% epsfig-package geladen
\ifthenelse{\boolean{ispdftex}}{%
\usepackage[pdftex]{graphicx}
\usepackage[pdftex]{color}}{%
\usepackage[dvips]{epsfig}
\usepackage{color}}
\usepackage{rotating}
\usepackage{caption2}
%%%%%%% Vergrößerung der Toleranz für den Zeilenumbruch
%%%%%%% es werden größere Zwischenräume zwischen den Wörtern
%%%%%%% zugelassen
\tolerance=1000
%%%%%%% Das eigentliche LaTeX-Dokument beginnt hier!!!
%%%%%%%
%%%%%%%
%%%%%%%
\begin{document}
%%%%%%%
%%%%%%%
%%%%%%%
%%%%%%%
%%%%%%%
%%%%%%%
%%%%%%%
%%%%%%%
%%%%%%%
%%%%%%%
Die einzelnen Dateien mit den Lösungen der
Übungsaufgaben einbinden. Befinden sich die Aufgaben
in einem Unterverzeichnis, so muss dies, wie im
folgenden Beispiel mit angegeben werden.
Bitte tragen Sie in das File
LatexVor2006VorlageUebungen.tex keine LaTeX-Anweisungen
ein, sondern erzeugen Sie für jede Lösung eine eigene
Datei und binden Sie diese dann mit dem \input-Befehl
hier ein!
\input{Uebungen/aufgabetest.tex}
% oder ähnlich!
\end{document}
Für die Bearbeitung der Aufgaben des letzten Kapitels, in welchem weiter gehende Themen behandelt werden und in dem dann auch in weit reichendem
Maße eigene Makros und Befehlsdefinitionen verwendet werden, sollte dann
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
das Template-File LatexVor2006VorlageAdvanced.tex verwendet werden. Unbedingte Voraussetzung für dessen Verwendung ist jedoch, dass zuvor
das Style-File skriptdefs.sty in der oben beschriebenen Weise im MiKTeXSystem installiert wurde. Anderenfalls werden die Befehle nicht gefunden.
Der \input-Mechanismus
Die Übungsaufgaben sollten in separaten Dateien bearbeitet und abgespeichert werden und mit dem \input-Befehl in das Dokument eingefügt werden.
Dieser Befehl bewirkt die textuelle Einbindung der Datei in Ihr Dokument. Die
Wirkung ist so, als ob Sie den Text direkt an diese Stelle geschrieben hätten.
Dieser Befehl gestattet es, das Dokument übersichtlich zu halten, da einzelne
Abschnitte, oder auch, wie im vorliegenden Fall Übungsaufgaben, in getrennten Dateien gehalten werden können.
Bearbeitung von Übungsaufgaben
Die Bearbeitung der Übungsaufgaben erfolgt nun auf folgende Weise:
• Eintragen der Lösung in ein eigenes *.tex-File.
• Einfügen der Anweisung \input{*.tex} in eines der Template-Files.
Ggf. muss der relative Pfad mit angegeben werden.
• LATEX-Lauf des Template-Files.
• Begutachtung des Ergebnisses im Previewer (yap, AcroReader oder
GhostView).
Um die Korrektheit der Installation zu testen, sollte vorab ein Testlauf mit dem
File aufgabetest.tex gemacht werden. Werden von LATEX fehlende Pakete
moniert, so sollten diese auf die oben beschriebene Weise nachinstalliert werden.
1.3 Informationsbeschaffung und Trouble-Shooting
Im Folgenden sollen noch einige Hinweise gegeben werden, wie man sich
(über die im Literaturverzeichnis angegebenen Quellen hinaus) Informationen
über LATEX beschaffen kann. Die Hauptinformationsquelle ist dabei natürlich
das Internet.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
15
Ausgewählte LATEX-Kapitel
Begeitmaterial
Alle vom Autor zur Verfügung gestellten Dateien sind im Ordner MaterialLaTeXVorlesung2006 zusammengefasst und stehen den Kursteilnehmern
auf dem lokalen Netzwerk zur Verfügung. Dieser Ordner enthält folgende
Dateien und Verzeichnisse
• LatexVor2006VorlageAdvanced.tex - Template-File
• LatexVor2006VorlageUebungen.tex - Template-File
• skriptdefs.sty - Style mit Makros und Sonderdefinitionen
• LatexVor2006.pdf (Skriptum im *.pdf-Format)
• FHlogo (Verzeichnis) mit den Dateien:
– fhlogo.pdf (.png,.eps) - Testgrafik
– scharfaufLatex.png (.eps) - Testgrafik
• Uebungen (Verzeichnis) mit den Dateien:
– aufgabetest.tex - Lösung einer Testaufgabe
• Zusatzinfos (Verzeichnis) mit den Dateien:
– fntguide.pdf (.tex) - Dokumentation zu Fonts
– psnfss2e.pdf - Dokumentation zum Font Selection Scheme
– tabsatz.tex - Dokumentation zum Tabellensatz
– array.dvi - Dokumentation zum array-Paket
– dcolumn.dvi - Dokumentation zum dcolumn-Paket
– longtable.dvi - Dokumentation zum longtable-Paket
– tabularx.dvi - Dokumentation zum tabularx-Paket
– epslatex.ps - Dokumentation zur Verwendung von *.eps-Dateien
– grfguide.ps - Dokumentation zur Einbindung von Grafiken
– List of all latex packages.htm - Liste aller (?) auf dem
Netz verfügbaren Pakete
– de-tex-faq.pdf - Frequently Asked Questions zu LATEX
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
16
Ausgewählte LATEX-Kapitel
Informationsbeschaffung via Internet
Als Zusatzinformation ist insbesondere die Datei de-tex-faq.pdf zu empfehlen. In den meisten Fällen erhält man hier Antwort auf brennende Fragen, wobei allerdings zugegeben werden muss, dass die behandelten Probleme oft über dem Anfängerniveau liegen. Diese Datei wird vom LATEX3Projektteam regelmäßig gepflegt und auf dem Server der deutschen LATEXUser-Vereinigung, dem so genannten dante-server unter www.dante.de veröffentlicht. In der LATEX-newsgroup comp.text.tex.de wird sie darüber hinaus
regelmäßig gepostet.
Der Dante-Server ist natürlich die erste Anlaufstelle, falls Informationen zu
LATEX gesucht werden, sei es Dokumentationen, sei es fehlende Pakete. Über
die Suchmaschine kann jedes Dokument, sofern vorhanden, bequem gefunden
werden. Zusätzlich empfiehlt es sich, bei speziellen Problemen das Archiv der
LATEX-newsgroup mit der Suchmaschine www.google.de zu durchstöbern.
Nicht zu verachten ist natürlich auch die Methode „Wir fragen einen Experten“, falls man einen solchen gerade greifbar hat.
Die CD zum Kurs
Um den Kursteilnehmern die Suche nach Paketen und Dokumentationen auf
dem Dante-Server und damit online-Kosten zu ersparen, wurde der ServerInhalt auf CD-ROM gebrannt. Diese steht den Teilnehmern auf Anfrage zu
Kopierzwecken zur Verfügung.
1.4
Übungen zum Thema Grundlagen und Voraussetzungen
Übung 1 (Lösung S. 108)
Suchen Sie im Netz das Style-File url.sty und installieren Sie das Paket in Ihrem
MiKTeX-Verzeichnis.
Ergänzen Sie anschließend das Template-File LatexVor2006VorlageUebungen.tex so, dass das Paket url verwendet werden kann.
Das Paket enthält den Befehl \url{<Argument>}. Der Befehl setzt das Argument
in Form einer Internet-URL. Das Besondere daran ist, dass man sich keine Gedanken
um Sonderzeichen wie \ , / , _ oder @ zu machen braucht, die in URLs oder e-mailAdressen vorkommen und in LATEX normalerweise den Status von Sonderzeichen
annehmen, was zu Problemen führt.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
17
Ausgewählte LATEX-Kapitel
Probieren Sie diesen Befehl an folgendem Beispieltext aus:
Mein Name ist Manfred Mustermann. Meine e-mail-Adresse ist mannis.
[email protected].
Die Adresse meiner Homepage ist http://www.t-online/home/manni_
mustermann-home.de und Sie sollten sich diese wunderbare Homepage
dringend mal anschauen.
Schreiben Sie diesen Beispieltext zu diesem Zweck in eine eigene *.tex-Datei und
binden Sie diese Datei anschließend mit Hilfe des \input-Mechanismus in Ihr MainFile LatexVor2006VorlageUebungen.tex ein.
Versuchen Sie anschließend mit einem LATEX-Lauf ein korrektes Dokument zu erzeugen.
Übung 2 (Lösung S. 109)
Suchen Sie in den Frequently Asked Questions de-tex-faq.pdf einen Hinweis
darauf, wie man das Trademark-Zeichen setzen kann.
Wenn Sie eine Lösung gefunden haben, probieren Sie diese an folgendem Beispieltext aus:
WürgFürWindoofs™ ist ein einbetrogenes Warenzeichen der Billy the Gates
Time Destruction Company Inc.
Verwenden Sie beim Ausprobieren bezüglich der Dateiorganisation dieselbe Vorgehensweise wie in Übung 1.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
18
Kapitel 2
Tabellensatz mit LATEX
Der Tabellensatz mit LATEX ist ein Kapitel für sich, denn der Entwurf einer Tabelle gestaltet sich meist schwierig und oft ist die Editierung recht unübersichtlich. Es empfiehlt sich daher, sich im Laufe der Zeit Vorlagen für Tabellen
anzulegen, die man oft verwendet und zwischendrin die Geduld nicht zu verlieren.
Dafür wird man dann aber mit typografisch einwandfreien „schönen“ Tabellen belohnt.
Im Folgenden sollen die wesentlichen Pakete zum Satz von Tabellen mit Beispielen vorgestellt werden.
2.1
Das array-Paket
Das zentrale Paket für das Setzen von Tabellen ist das array-Paket. Das zugehörige Style-File array.sty gehört normalerweise zur Standardinstallation
von LATEX. Das Einbinden dieses Pakets in der Präambel erfolgt mit:
\usepackage{array}
Wesentliche Umgebungen dieses Pakets [5, 7] für den Tabellensatz sind array
und tabular. Diese genügen folgender allgemeiner Syntax:
\begin{array}{spaltendefinition}
Spalten
···
Spalten
\end{array}
Ausgewählte LATEX-Kapitel
20
und
\begin{tabular}{spaltendefinition}
Spalten
···
Spalten
\end{tabular}
2.1.1
Die array-Umgebung
Die array-Umgebung setzt die Tabelle grundsätzlich im Mathematik-Modus
(im nachfolgenden Beispiel durch \[ und \] definiert) und ist so am besten
geeignet für das Setzen von Matrizen oder Zahlenkolonnen.
Beispielsweise wird durch die Anweisungen
\[\left(
\begin{array}{rrr}
1
&
2
&
-1
&
-302
&
201
&
0
&
\end{array}
\right)\]
3
-15
-101
\\
\\
die folgende 3 × 3-Matrix gesetzt:


1
2
3
 −1 −302 −15 
201
0 −101
Man erkennt, dass in diesem Fall die Spaltendefinition aus der Buchstabenkombination rrr besteht. Dies bedeutet, dass die Einträge in der Matrix rechtsbündig gesetzt werden. Wir werden im Laufe der nachfolgenden Abschnitte
die möglichen Spaltendefinitionen nach und nach kennenlernen.
Wie man sieht, muss man, da die Matrix aus 3 Spalten besteht, die Spaltenoption r drei mal angeben. Jeder Spalte muss also eine Spaltenoption entsprechen,
ansonsten reagiert LATEX mit einer Fehlermeldung.
Die Einträge der einzelnen Spalten sind im nachfolgenden Rumpf der Umgebung durch ein & voneinander getrennt. Der Übergang in die nächste Zeile
erfolgt mit \\.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
21
Im nachfolgenden Beispiel wird die obige Matrix so gesetzt, dass die erste
Spalte linksbündig (Option l), die zweite Spalte zentriert (Option c) und die
dritte Spalte rechtsbündig (Option r) gesetzt wird.
Dies wird durch die Anweisungen
\[\left(
\begin{array}{l c r}
1
&
2
&
-1
&
-302
&
201
&
0
&
\end{array}
\right)\]
3
-15
-101
\\
\\
erreicht und setzt die Matrix in folgender Form:


1
2
3
 −1 −302 −15 
201
0
−101
2.1.2
Die tabular-Umgebung
Mit der tabular-Umgebung können Tabellen mit Texteinträgen gesetzt werden. Die Umgebung wird jedoch nicht innerhalb einer mathematischen Umgebung verwendet.
Zur Erläuterung zunächst ein Beispiel. Durch die Anweisungen
\begin{tabular}{l
Schnitzel
&
Steak
&
Brötchen
&
Pop Corn
&
\end{tabular}
c r }
Fleisch
Fleisch
Getreide
Getreide
&
&
&
&
Schwein \\
Rind
\\
Weizen \\
Mais
wird die Tabelle
Schnitzel
Steak
Brötchen
Pop Corn
Fleisch Schwein
Fleisch
Rind
Getreide Weizen
Getreide
Mais
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
22
gesetzt.
Man erkennt, dass der Satz dieser Tabelle dem gleichen Prinzip wie bei der
array-Umgebung folgt. LATEX berechnet dabei selbst, wie breit die benötigten
Spalten werden und setzt diese dann entsprechend den in den Umgebungsparametern angegebenen Formatanweisungen, im vorliegenden Beispiel also
linksbündig, zentriert und rechtsbündig.
Die entstandene Tabelle ist sehr einfach und ihre Gestaltung wurde i.W. LATEXs
Algorithmen überlassen. Es ist aber für den Anwender selbstverständlich
möglich, hierauf größeren Einfluss zu nehmen. So wäre es im vorliegenden
Beispiel etwa wünschenswert, die Tabelle mit einem Kopf zu versehen, mit
Trennlinien aufzulockern und die Spaltenbreite zu beeinflussen.
Dies erreicht man etwa durch folgende Anweisungen:
\begin{tabular}{p{4cm} p{3cm} p{4cm} }
\toprule
Nahrungsmittel
&
Art
&
Ausgangsprodukt \\
\cmidrule{1-3}
Schnitzel
&
Fleisch
&
Schwein \\ \addlinespace
Steak
&
Fleisch
&
Rind
\\ \addlinespace
Brötchen
&
Getreide
&
Weizen \\ \addlinespace
Pop Corn
&
Getreide
&
Mais
\\ %%% hier \\ !!
\bottomrule
\end{tabular}
Die Tabelle sieht dann folgendermaßen aus:
Nahrungsmittel
Art
Ausgangsprodukt
Schnitzel
Fleisch
Schwein
Steak
Fleisch
Rind
Brötchen
Getreide
Weizen
Pop Corn
Getreide
Mais
Wie im obigen Beispiel zu sehen ist werden die Tabelleneinträge mit der Option p und einer Breitenangabe für die Spalten gesetzt. Dadurch erhalten
die Spalten in jedem Fall die angegebene Breite. Durch die Anweisungen
\toprule und \bottomrule werden die begrenzenden Linien oben und unten erzeugt und durch die Anweisung \cmidrule{1-3} entsteht die TrennFachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
23
linie zwischen Kopf und Rumpf der Tabelle. Bei dieser Anweisung muss in
den geschweiften Klammern mit angegeben werden, über welche Spalten sich
die Linie erstrecken soll.
Für die Verwendung dieser Kommandos allerdings ist das Hinzuladen des
booktabs-Paketes nötig. Ansonsten müssen die Kommandos \hline und
\cline verwendet1 werden, die weiter unten vorgestellt werden.
2.2
Übungen zum array-Paket
Übung 3 (Lösung S. 109)
Setzen Sie die folgende 4 × 2-Matrix:


−2024
204
 1
−23006 


 0
−1 
25561
−255
Gehen Sie dabei folgendermaßen vor:
• Schreiben Sie Ihre Lösung in eine eigene Datei (namens ue3.tex).
• Binden Sie anschließend diese Datei mit dem \input-Kommando in das
Template-File LatexVor2006VorlageUebungen.tex ein. Diese Datei
soll für LATEX das main-File sein. Stellen Sie Ihre TEX-Umgebung entsprechend
ein.
• TEXen Sie das main-File und korrigieren Sie ggf. die Fehler in ue3.tex solange, bis die obige Matix korrekt gesetzt ist.
Wichtige Bemerkung: Bei allen Übungen und insbesondere bei der häuslichen Nacharbeit sollten Sie stets diese Vorgehensweise beibehalten. Keinesfalls sollten Sie
dabei die Präambel des Template-Files ändern. Binden Sie lediglich die separat erstellte Datei mit den Lösungen ein!
Übung 4 (Lösung S. 109)
Setzen Sie die nachfolgende Tabelle:
1 Es ist nicht garantiert, dass sich diese Kommandos innerhalb einer Tabelle mischen lassen.
Also entweder nur die eine oder die andere Kommandogruppe verwenden.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
Der Kommentar
24
Zahlen
Fakten
Kosten
2.00
14
Gebühren
5.30
12
Daten
1.33
13.3
Werte
0.00
unbekannnt
Beachten Sie, dass die Zahlenkolonnen im mathematischen Modus zu setzen sind.
2.3
Das array-Paket (Fortsetzung)
Innerhalb der Spalten versucht LATEX bei der p-Option im Blocksatz zu setzen,
was oft nicht gut aussieht, wie das folgende Beispiel zeigt:
\begin{tabular}{p{4cm} p{3cm}
\toprule
Nahrungsmittel
&
Art
\cmidrule{1-3}
Schnitzel
&
Fleisch
p{4cm} }
&
Kommentar \\
&
Schwein, ist bei Massen-%
tierhaltung hormonbe-%
lastet \\ \addlinespace
Rind, birgt immer noch %
BSE-Gefahr \\ \addlinespace
Weizen, gegebenenfalls
gentechnisch verän-%
dert
\\ \addlinespace
Mais, s.\ Weizen
\\
Steak
&
Fleisch
&
Brötchen
&
Getreide
&
Pop Corn
\bottomrule
\end{tabular}
&
Getreide
&
Die Tabelle sieht dann folgendermaßen aus:
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
25
Nahrungsmittel
Art
Kommentar
Schnitzel
Fleisch
Schwein,
ist bei
Massentierhaltung
hormonbelastet
Steak
Fleisch
Rind, birgt immer
noch BSE-Gefahr
Brötchen
Getreide
Weizen, gegebenenfalls
gentechnischverändert
Pop Corn
Getreide
Mais, s. Weizen
Wie man sieht, versucht LATEX, den Text in der letzten Spalte im Blocksatz zu
setzen, was u.U. zu großen Lücken führt, wie in der ersten Zeile der Tabelle. Man kann versuchen, dies durch Anpassung (Erhöhung) der Zeilenbreite
abzumildern, besser ist es jedoch, LATEX dazu zu zwingen, die Spalte im Flattersatz zu setzen.
Man erreicht dies im vorliegenden Fall etwa durch folgende Anweisung:
\begin{tabular}{p{4cm} p{3cm} >{\PBS\raggedright\hspace{0pt}}p{4cm}}
\toprule
Nahrungsmittel
&
Art
&
Kommentar \\
\cmidrule{1-3}
Schnitzel
&
Fleisch
&
Schwein, ist bei Massen-%
tierhaltung hormonbe-%
lastet \\ \addlinespace
Steak
&
Fleisch
&
Rind, birgt immer noch %
BSE-Gefahr \\ \addlinespace
Brötchen
&
Getreide
&
Weizen, gegebenenfalls
gentechnisch verän-%
dert
\\ \addlinespace
Pop Corn
&
Getreide
&
Mais, s.\ Weizen
\\
\bottomrule
\end{tabular}
Die Tabelle sieht dann folgendermaßen aus:
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
26
Nahrungsmittel
Art
Kommentar
Schnitzel
Fleisch
Schwein, ist bei
Massentierhaltung
hormonbelastet
Steak
Fleisch
Rind, birgt immer
noch BSE-Gefahr
Brötchen
Getreide
Weizen,
gegebenenfalls gentechnischverändert
Pop Corn
Getreide
Mais, s. Weizen
Die letzte Spalte wirkt nun etwas harmonischer.
Die Anweisung >\PBS\raggedright\hspace{0pt} verändert dabei die
Eigenschaften der p-Option so, dass die Spalte zwar die angegebene Breite
behält, jedoch im Flattersatz gesetzt wird. Wir werden auf die Möglichkeiten die Spaltenoptionen durch voranstellen von >{...} und Nachstellen von
<{...} im Abschnitt 2.3.4 noch genauer eingehen.
An dieser Stelle sei speziell darauf hingewiesen, dass wir mit der Anweisung
>\PBS\raggedright\hspace{0pt} die Pfade der Standard-LATEX-Pakete
für kurze Zeit verlassen, da wir auf das spezielle Makro \PBS zurückgreifen,
so wie es in [7] beschrieben wird. Das Makro muss, wenn man von dieser Möglichkeit der Umstellung auf Flattersatz Gebrauch machen will, in der Präambel
des Dokuments definiert werden. In den Template-Files des Begleitmaterials
ist dies bereits geschehen (vgl. Seite 11ff). Auf die Details der Struktur dieser
speziellen Konstruktion soll an dieser Stelle nicht eingegangen werden. Hierfür sei der interessierte Leser auf [7] verwiesen.
Natürlich wird durch die zusätzliche Anweisung nur die letzte Spalte im Flattersatz gesetzt. Will man dies für alle Spalten haben, so muss die Anweisung
für jede Spalte wiederholt werden:
\begin{tabular}{>{\PBS\raggedright\hspace{0pt}}p{4cm} %
>{\PBS\raggedright\hspace{0pt}}p{3cm} %
>{\PBS\raggedright\hspace{0pt}}p{4cm}}
\toprule
Schnitzel und Eisbein & Fleisch &
Schwein, ist bei Massen-%
tierhaltung hormonbelastet \\ %
\addlinespace
Steak, Kalbsschnitzel
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
und
Rouladen
27
&
Fleisch &
Rind, birgt immer noch %
BSE-Gefahr\\
\bottomrule
\end{tabular}
Schnitzel und
Eisbein
Fleisch
Schwein, ist bei
Massentierhaltung
hormonbelastet
Steak, Kalbsschnitzel
und Rouladen
Fleisch
Rind, birgt immer
noch BSE-Gefahr
Die Wiederholung dieser Anweisung macht die Definition der Spaltenoptionen sehr schwerfällig. Dies gilt im Übrigen auch für andere Modifikationen
der Standardoptionen, die wir im Folgenden noch kennenlernen.
Wir werden für dieses Problem verschiedene Lösungen angeben. Im vorliegenden Fall bietet sich die Definition einer eigenen Spaltenoption an, die dann
statt der Option p verwendet werden kann. Wir werden auf diese Möglichkeiten erst im vorletzten Kapitel dieses Skriptums (Kapitel 6) detailliert eingehen
und machen daher an dieser Stelle davon keinen Gebrauch, um nicht den Rahmen der Möglichkeiten der vorgestellten Standardpakete zu verlassen.
Sollen die Spalten immer gleich sein, so kann man sich das Konstrukt zu Nutze
machen, das im folgenden Abschnitt vorgestellt wird.
2.3.1
Wiederholung von Spaltendefinitionen
Soll in mehreren hintereinander liegenden Spalten die gleiche Spaltendefinition verwendet werden, so kann dies durch Voranstellen von *{anzahl} abgekürzt werden.
Beispielsweise liefert
\begin{tabular}{*{3}{>{\PBS\raggedright\hspace{0pt}}p{4cm}}}
\toprule
Schnitzel und Eisbein & Fleisch &
Schwein, ist bei Massen%
tierhaltung hormonbelastet \\ %
\addlinespace
Steak, Kalbsschnitzel
und Rouladen
& Fleisch &
Rind, birgt immer noch %
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
28
BSE-Gefahr\\
\bottomrule
\end{tabular}
die Tabelle:
Schnitzel und
Eisbein
Fleisch
Schwein, ist bei
Massentierhaltung
hormonbelastet
Steak, Kalbsschnitzel
und Rouladen
Fleisch
Rind, birgt immer
noch BSE-Gefahr
Es wird also jede der drei Spalten in der Breite 4 cm im Flattersatz gesetzt.
Ein etwas einfacheres Beispiel, da es sich nur auf Standardspaltenoptionen
bezieht wäre:
\begin{tabular}{*{4}l}
\toprule
Schnitzel
&
Fleisch
Steak
&
Fleisch
Brötchen
&
Getreide
Pop Corn
&
Getreide
\bottomrule
\end{tabular}
&
&
&
&
Schwein
Rind
Weizen
Mais
was die Tabelle
Schnitzel
Steak
Brötchen
Pop Corn
Fleisch
Fleisch
Getreide
Getreide
Schwein
Rind
Weizen
Mais
gut
prima
schmeckt
lecker
liefert.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
&
&
&
&
gut\\
prima\\
schmeckt\\
lecker\\
Ausgewählte LATEX-Kapitel
2.3.2
29
Unterdrückung der Spaltenzwischenräume
Um überstehende Linien, wie sie etwa in dem vorangegangenen Beispiel zu
sehen sind, zu vermeiden sollte @{} vor und/oder nach der Spaltendefinition
eingefügt werden, etwa so:
\begin{tabular}{@{}spaltendefinition@{}}
Zum Beispiel liefert
\begin{tabular}{*{3}{@{}{p{5cm}}@{}}}
eine Tabelle mit 3 Spalten à 5 cm Breite und unterdrückt die Trennlücke zwischen den Spalten. Dadurch werden Linien direkt über dem Text platziert und
stehen nicht über. Dies zeigt das folgende Beispiel:
\begin{tabular}{*{4}{@{}p{3cm}@{}}}
\toprule
Schnitzel
&
Fleisch
&
Schwein
\cmidrule{3-4}
Steak
&
Fleisch
&
Rind
\cmidrule{1-4}
Brötchen
&
Getreide
&
Weizen
\cmidrule{3-4}
Pop Corn
&
Getreide
&
Mais
\bottomrule
\end{tabular}
&
gut\\ \addlinespace
&
prima\\\addlinespace
&
schmeckt\\ \addlinespace
&
lecker\\
Schnitzel
Fleisch
Schwein
gut
Steak
Fleisch
Rind
prima
Brötchen
Getreide
Weizen
schmeckt
Pop Corn
Getreide
Mais
lecker
2.3.3 Anpassung der Schriftgrößen
In manchen Fällen, insbesondere bei Tabellen mit sehr vielen Einträgen, empfiehlt es sich, kleinere Schriftgrößen zu verwenden. Diese kann etwa innerhalb
der tabular-Umgebung durch Umschalten der Größe mit den entsprechenden Befehlen geändert werden.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
30
Beispielsweise liefert
\begin{tabular}{*{4}{>{\scriptsize}p{2cm}}}
\toprule
Schnitzel
&
Fleisch
&
Schwein &
\cmidrule{3-4}
Steak
&
Fleisch
&
Rind
&
\cmidrule{1-4}
Brötchen
&
Getreide
&
Weizen
&
\cmidrule{3-4}
Pop Corn
&
Getreide
&
Mais
&
\bottomrule
\end{tabular}
gut\\ \addlinespace
prima\\\addlinespace
schmeckt\\ \addlinespace
lecker\\
die Tabelle
Schnitzel
Fleisch
Schwein
gut
Steak
Fleisch
Rind
prima
Brötchen
Getreide
Weizen
schmeckt
Pop Corn
Getreide
Mais
lecker
mit Einträgen in der Schriftgröße scriptsize.
In diesem Beispiel wurde die Schriftgröße der Tabelleneinträge durch Voranstellen des Befehls \scriptsize in allen Spalten auf die Schriftgröße
scriptsize geändert.
2.3.4 Allgemeine Anpassungen für Spalten
Wie in den obigen Beispielen gezeigt, kann durch Voranstellen von >{Definitionen} das Aussehen der Spalten verändert werden. Allgemein stellt
>{Definitionen} den in Definitionen definierten Text oder Befehl dem
Spalteneintrag voran. Ähnliches leistet ein nachgestelltes <{Definitionen}.
Beispielsweise liefert
\begin{tabular}{*{4}{>{$--$\scriptsize}p{3cm}<{ $\clubsuit$}}}
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
\toprule
Schnitzel
&
\cmidrule{3-4}
Steak
&
\cmidrule{1-4}
Brötchen
&
\cmidrule{3-4}
Pop Corn
&
\bottomrule
\end{tabular}
31
Fleisch
&
Schwein
&
gut\\ \addlinespace
Fleisch
&
Rind
&
prima\\\addlinespace
Getreide
&
Weizen
&
schmeckt\\ \addlinespace
Getreide
&
Mais
&
lecker\\
die Tabelle
−−Schnitzel ♣
−−Fleisch ♣
−−Schwein ♣
−−gut ♣
−−Steak ♣
−−Fleisch ♣
−−Rind ♣
−−prima ♣
−−Brötchen ♣
−−Getreide ♣
−−Weizen ♣
−−schmeckt ♣
−−Pop Corn ♣
−−Getreide ♣
−−Mais ♣
−−lecker ♣
Hier wird also auf die Schriftgröße scriptsize umgestellt und jedem Eintrag ein −− voran und ein ♣ nachgestellt.
Eine andere Anwendung könnte beispielsweise sein, die Einträge einer bestimmten Spalte hervorzuheben.
So wird etwa die zweite Spalte der folgenden Tabelle durch die Spaltendefinition fett gesetzt.
\begin{tabular}{ l >{\bfseries}p{3cm} *{2}{p{3cm}}}
\toprule
Schnitzel
&
Fleisch
&
Schwein & gut\\ \addlinespace
\cmidrule{3-4}
Steak
&
Fleisch
&
Rind
& prima\\\addlinespace
\cmidrule{1-4}
Brötchen
&
Getreide
&
Weizen
& schmeckt\\ \addlinespace
\cmidrule{3-4}
Pop Corn
&
Getreide
&
Mais
& lecker\\
\bottomrule
\end{tabular}
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
32
Schnitzel
Fleisch
Schwein
gut
Steak
Fleisch
Rind
prima
Brötchen
Getreide
Weizen
schmeckt
Pop Corn
Getreide
Mais
lecker
2.3.5 Tafeln mit vertikalen Linien
Durch Einfügen des Symbols | in die Spaltendefinitionen und durch Verwendung von \hline und \cline für die horizontalen Linien statt der oben verwendeten \toprule, \cmidrule und \bottomrule können die Spalten
und Zeilen mit Linien umrahmt werden.
So liefert
\begin{tabular}{|l|p{3cm}|r|r|}
\hline
Schnitzel
&
Fleisch
&
\cline{3-4}
Steak
&
Fleisch
&
\cline{1-4}
Brötchen
&
Getreide
&
\hline
\end{tabular}
Schwein
&
gut\\
Rind
&
prima\\
Weizen
&
schmeckt\\
die Tafel
Schnitzel
Steak
Brötchen
Fleisch
Fleisch
Getreide
Schwein
Rind
Weizen
gut
prima
schmeckt
Wie an dem obigen Beispiel zu sehen ist, „kleben“ die Tabelleneinträge am
oberen Rand. Dies kann durch Erhöhung der Zeilenhöhe behoben werden,
wie das Beispiel
{\setlength{\extrarowheight}{4pt}
\begin{tabular}{|l|p{3cm}|r|r|}
\hline
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
Schnitzel
&
\cline{3-4}
Steak
&
\cline{1-4}
Brötchen
&
\hline
\end{tabular}
}
33
Fleisch
&
Schwein
&
gut\\
Fleisch
&
Rind
&
prima\\
Getreide
&
Weizen
&
schmeckt\\
zeigt:
Schnitzel
Fleisch
Schwein
gut
Steak
Fleisch
Rind
prima
Brötchen
Getreide
Weizen
schmeckt
Wie der Name schon sagt, fügt de Befehl \extrarowheight{...} eine zusätzliche Höhe in die Zeilen der Tabellen ein. Die Höhe muss als Parameter
angegeben werden. Im obigen Beispiel sind dies 4 Pixelpunkte. Die zusätzliche Höhe könnte aber auch in mm oder cm angegeben werden.
\extrarowheight gehört zu den Tabellenstilparametern. Eine Minimalübersicht hierzu findet man in Abschnitt 2.13 am Schluss des Kapitels. Die
Wirkung des Parameters erstreckt sich prinzipiell auf alle nachfolgenden Tabellen derselben Gruppe von LATEX-Anweisungen. Wenn der Befehl also irgendwo im Text auftritt, so wirkt er normalerweise im ganzen nachfolgenden
Dokument.
Im obigen Beispiel ist die Wirkung auf die nachfolgende Tabelle beschränkt
worden. Dies wurde dadurch erreicht, dass Befehl und Tabelle in ein { }Paar geklammert wurden. \extrarowheight wirkt somit nur innerhalb der
Klammern.
Vertikale Linien können auch weggelassen werden oder doppelt und mehrfach vorkommen.
So liefert
{\setlength{\extrarowheight}{4pt}
\begin{tabular}{ |*{2}{|p{3cm}|} p{3cm} >{\large}p{3cm}|||}
\hline
Schnitzel
&
Fleisch
&
Schwein & gut\\
\cline{3-4}
Steak
&
Fleisch
&
Rind
& prima\\
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
\cline{1-4}
Brötchen
&
\hline
\end{tabular}
}
Getreide
34
&
Weizen
&
schmeckt\\
die Tabelle:
Schnitzel
Fleisch
Schwein
Steak
Fleisch
Rind
Brötchen
Getreide
Weizen
gut
prima
schmeckt
Die ersten beiden Linien sind verdoppelt, wobei die zweite durch die Wiederholungsoption verdoppelt wird. Die vierte Linie ist offenbar weggefallen,
während die äußerst rechte Begrenzung explizit als Dreifachlinie definiert ist.
2.4
Übungen zum array-Paket
Übung 5 (Lösung S. 110)
Setzen Sie die Tabelle aus Übung 4 so, dass die erste Spalte eine Breite von 4 cm
hat und in der Größe scriptsize gesetzt ist und dass die beiden andern Spalten
in der Breite 3 cm gesetzt sind.
Die Tabelle muss somit folgende Gestalt haben:
Der Kommentar
Zahlen
Fakten
Kosten
2.00
14
Gebühren
5.30
12
Daten
1.33
13.3
Werte
0.00
unbekannnt
Übung 6 (Lösung S. 110)
Setzen Sie die Tabelle aus Übung 5 so, dass die Einträge in den Spalten von Linien
umrahmt sind. Außerdem sollen alle übrigen Texteinträge auch in der scriptsizeFachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
35
Größe gesetzt werden.
Beachten Sie, dass die Linien nicht am Text „kleben“.
Die Tabelle sollte somit folgende Gestalt haben:
Der Kommentar
Zahlen
Fakten
Kosten
2.00
14
Gebühren
5.30
12
Daten
1.33
13.3
Werte
0.00
unbekannnt
Übung 7 (Lösung S. 111)
Setzen Sie die Tabelle aus Übung 6 so, dass die Texteinträge in normale Größe
gesetzt werden.
Beachten Sie, dass die Linien nicht am Text „kleben“.
Darüber hinaus sollten die Zahleneinträge in der zweiten Spalte standardmäßig mit
einem voran gestellten ± und einem nachgestellten mm versehen werden. Die
Einträge sollten darüber hinaus zentriert sein. Verwenden Sie dazu den Befehl
\centering.
Die Tabelle sollte somit folgende Gestalt haben:
± Zahlen mm
± 2.00 mm
14
Gebühren
± 5.30 mm
12
Daten
± 1.33 mm
13.3
Werte
± 0.00 mm
unbekannnt
Der Kommentar
Kosten
Übung 8 (Lösung S. 111)
Setzen Sie die nachfolgend abgebildete Tabelle.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Fakten
Ausgewählte LATEX-Kapitel
36
Artikel
Preis/ EUR
Kopfsalat
1, 49 EUR
Tomaten
2, 99 EUR
Kilopreis, Herkunftsland Italien
Apfelsinen
3, 99 EUR
1,5-Kilo Netz, Navelinas
Herkunftsland Südafrika
Ananas
2, 99 EUR
„Wenn hier einer Anna nass
macht, dann bin ich das!“
Preisfrage: woher stammt dieses
Zitat? Preis: eine Ananas!
Besonderheit
Für diese Tabelle sollten die ersten beiden Spalten eine Breite von 3 cm, wobei die
zweite Spalte im mathematischen Modus gesetzt sein sollte. Das Euro-Kürzel sollte
dabei automatisch angehängt werden. Die dritte Spalte sollte eine Breite von 5 cm
haben. Diese Spalte sollte im Flattersatz gesetzt sein und Schriftgröße (außer für die
Überschrift) footnotesize entsprechen.
Beachten Sie, dass die Linien nicht am Text „kleben“.
2.5
Der multicolumn-Befehl
Mit diesem Befehl kann man nach folgender Syntax Tabellenspalten zusammenfassen [7]:
\multicolumn{spaltenzahl}{format}{Ausgabetext}
Bei diesem Befehl handelt es sich um eine für den Tabellensatz sehr wichtige
Konstruktion, da neben dem eigentlichen Zweck, nämlich eben der Zusammenfassung mehrerer Spalten zu einer Spalte, ein wichtiger Nebeneffekt erzielt
werden kann. Mit diesem Befehl kann die eigentliche, im Kopf der tabularoder array-Umgebung definierte Spaltenoption überschrieben werden! Wir
werden im Folgenden Beispiele für diese nützliche Anwendungsmöglichkeit
geben.
Ein Beispiel soll die Verwendung illustrieren. Die Anweisungen
\begin{tabular}{*{3}{>{$}p{3cm}<{$}}}
\toprule
22.8
& 4.0
& 26.0
\\ \addlinespace
\cmidrule{2-3}
& \multicolumn{2}{>{\scriptsize}l}%
{Die wesentlichen Größen}\\\addlinespace
\cmidrule{2-3}
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
18.078 & 123.678 & -23.78
66.9
& 0.0
& 0.0
\bottomrule
\end{tabular}
37
\\ \addlinespace
\\
setzen die Tabelle:
22.8
4.0
26.0
Die wesentlichen Größen
18.078
123.678
−23.78
66.9
0.0
0.0
In dieser Tabelle werden zunächst einmal drei Spalten mit je 3 cm Breite gesetzt. Da die Einträge Zahlen sind, wurden die Zeilen durch Voranstellen von
>{$} und Nachstellen von <{$} im mathematischen Modus gesetzt.
in der zweiten Zeile ist der erste Eintrag leer und die beiden nachfolgenden
Einträge werden mit dem \multicolum-Befehl gesetzt. Dabei wird die Voreinstellung für die Spalten durch >{\scriptsize}l überschrieben, d.h. der
Text wird im Textmodus linksbündig und in der Schriftgröße scriptsize
gesetzt.
Ein weiteres Beispiel für die Verwendung des multicolumn-Befehls ist folgende Anweisungsfolge:
{\setlength{\extrarowheight}{4pt}
\begin{tabular}{*{3}{>{$}c<{$}}}
\toprule
22.8
&
4.0
&
26.0 \\ \addlinespace
\cmidrule{1-3}
\multicolumn{3}{>{\PBS\centering\hspace{0pt}}p{10cm}}%
{Dies sind die wesentlichen Größen}\\\addlinespace
\cmidrule{1-3}
18.078 &
123.678 &
-23.78 \\ \addlinespace
66.9
&
0.0
&
0.0
\\
\bottomrule
\end{tabular}
}
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
38
Diese Anweisungen liefern die Tabelle:
22.8
4.0
26.0
Dies sind die wesentlichen Größen
18.078
123.678
−23.78
66.9
0.0
0.0
In diesem Fall wurde die ganze zweite Zeile zusammengefasst und der zugehörige Text zentriert in einer 10 cm langen Zelle gesetzt.
Der multicolumn-Befehl bietet, wie bereits angedeutet und wie in den obigen Beispielen auch schon zu sehen, über die reine Möglichkeit der Zusammenfassung von Spalten hinaus noch die Möglichkeit, die globale Spaltendefinition zu durchbrechen. Dies soll ein weiteres Beispiel verdeutlichen.
Die Anweisungen
{\setlength{\extrarowheight}{4pt}
\begin{tabular}{ |>{\centering$}p{4cm}<{$\,DM} %
*{2}{|>{$}p{2cm}<{$}}|}
\hline
22.80
& 4.0
& 26.0
\\ \hline
\multicolumn{1}{|c|}{fehlt!} & 123.678 & -23.78
\\ \hline
66.90
& 0.0
& \multicolumn{1}%
{>{\scriptsize\PBS\raggedright\hspace{0pt}}p{5cm}|}%
{Das fehlt auch!} \\\hline
\end{tabular}
}
liefern
22.80 DM
fehlt!
66.90 DM
4.0
26.0
123.678
−23.78
0.0
Das fehlt auch!
Hier wurde die Fähigkeit der Spaltenredefinition des multicolumn-Befehls
genutzt, um das Format einzelner Zellen neu zu definieren. Nicht immer ist
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
39
für diesen Zweck die Anwendung des multicolumn-Befehls nötig. Wenn
beispielsweise in einer Tabellenzelle eine Zahl im mathematischen Modus gesetzt werden soll, so ist es natürlich einfacher dort direkt die $$-Form zu verwenden. Für komplexere Fälle bleibt aber häufig nur die Möglichkeit einer
Neudefiniton via multicolumn.
2.6
Übungen zum multicolumn-Befehl
Übung 9 (Lösung S. 112)
Versuchen Sie, folgende Tabelle zu setzen:
Name/Monat
Mai
Juni
Juli
Schulz
2,56$
3,45$
26,00$
Müller
18,07$
123,60$
23,70$
Meier
66,90$
0,00$
0,02$
Hund
8,07$
12,60$
23,70$
Katz
6,90$
1,00$
0,02$
Die Tabellenspalten sollten jeweils eine Breite von 3 cm haben.
Zentrieren Sie dabei die Monatseinträge mit Hilfe des multicolumn-Befehls.
Übung 10 (Lösung S. 112)
Setzen Sie die nachfolgende Tabelle:
Schönes
Fräulein
darf ich’s
wagen,
mein
Geleit
ihr
anzutragen
!
Bin weder Fräulein, weder schön,
kann ungeleit
Die Breite der Spalten ist dabei jeweils 4 cm.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
nach Hause geh’n!
Ausgewählte LATEX-Kapitel
2.7
Tabellen im Querformat
Oft ist man beim Satz von Tabellen vor das Problem gestellt, dass der Platz
einer Seite für die Tabellenbreite nicht ausreicht. Dies gilt insbesondere für
Tabellen mit wenigen Zeilen und vielen Spalten.
In diesem Fall ist es üblich, dass die Tabelle gedreht wird, um für die Spalten
die i.A. größere Seitenlänge auszunutzen.
Das Drehen einer Tabelle um 90 Grad kann durch die Umgebung turn erreicht
werden [14, 7].
Diese Umgebung gehört zum rotating-Paket, welches durch
\usepackage{rotating}
in der Präambel eingebunden2 wird.
Das Paket liefert Umgebungen, die das Drehen von Texten und Grafiken gestatten.
Es muss jedoch gleich zu Beginn erwähnt werden, dass nicht alle Previewer dieses Drehen unterstützen. Zwar gibt es bei korrekter Anwendung keine
Fehler im LATEX-Lauf, aber die Tabelle oder die Grafik erscheint, beispielsweise im Previewer yap nicht gedreht. Teilweise überlappen sich Fließtextbereich
und gedrehte Texte und Grafiken.
Man sollte in diesem Falle Previewer verwenden, die mit postscript-Treibern
zusammenarbeiten. So werden die gedrehten Objekte bei Verwendung von
pdfLATEX im Acrobat Reader oder bei Umsetzung nach Postscript mit dvips im
GhostView-Previewer korrekt dargestellt.
Für Testzwecke kann aber zunächst der yap verwendet werden.
Ein Beispiel soll nun die Verwendung der turn-Umgebung illustrieren. Der
LATEX-Code
\begin{turn}{90}
\begin{tabular}%
{*{3}{@{}>{\scriptsize\PBS\raggedright\hspace{0pt}}p{2cm}@{}}}
\toprule
Schnitzel
&
Fleisch
&
Schwein \\\addlinespace
\cmidrule(r){2-2}
Steak
&
Fleisch
&
Rind
\\\addlinespace
\cmidrule(c){2-3}
Pop Corn
&
Getreide
&
Mais
\\
2 Das
Paket graphics (oder graphicx), auf dem rotating aufsetzt, muss ebenfalls vorhanden sein, sonst gibt es eine entsprechende Fehlemeldung beim LATEX-Lauf.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
40
Ausgewählte LATEX-Kapitel
\bottomrule
\end{tabular}
\end{turn}
Getreide
Pop Corn
Mais
Fleisch
Steak
Rind
Fleisch
Schnitzel
Schwein
setzt die nachfolgende Tabelle.
Die eigentliche Tabelle, die mit der tabular-Umgebung auf die übliche Weise
gesetzt wird, ist dabei in eine turn-Umgebung gepackt worden, welche als
Parameter den Drehwinkel in Grad (im vorliegenden Falle 90) aufnimmt. Die
Tabelle wird um 90 Grad im Gegenuhrzeigersinn gedreht.
Oft entsteht durch diese Art der Tabellensetzung eine große Lücke zwischen
Fließtext und Tabelle. Ein ähnliches Problem ergibt sich im Übrigen auch bei
Grafiken, wie wir in Kapitel 3 noch sehen werden. Die übliche Lösung besteht
darin, dass man die Tabelle mit einer Nummer sowie Über- oder Unterschrift
versieht und im Fließtext auf die Nummer referenziert. Das Objekt kann dann
an eine andere Stelle platziert werden und der Fließtext kann weitergeführt
werden, ohne dass eine Lücke entsteht.
In LATEX wird dies dadurch erreicht, dass man aus der Tabelle (oder der Grafik)
ein so genanntes Gleitobjekt [7, 13] macht.
Dies geschieht durch Einfügen der Tabellendefinition in eine entsprechende
Umgebung, der table-Umgebung. Das nachfolgende Beispiel illustriert die
Verwendung
\begin{table}
\caption{Eine gedrehte Tabelle}\label{TabGedreht}
\begin{turn}{90}
\begin{tabular}%
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
41
Ausgewählte LATEX-Kapitel
Getreide
Pop Corn
Mais
Fleisch
Steak
Rind
Fleisch
Schnitzel
Schwein
Tabelle 2.1: Eine gedrehte Tabelle
{*{3}{@{}>{\scriptsize\PBS\raggedright\hspace{0pt}}p{2cm}@{}}}
\toprule
Schnitzel
&
Fleisch
&
Schwein \\\addlinespace
\cmidrule(r){2-2}
Steak
&
Fleisch
&
Rind
\\\addlinespace
\cmidrule(c){2-3}
Pop Corn
&
Getreide
&
Mais
\\
\bottomrule
\end{tabular}
\end{turn}
\end{table}
Diese Anweisungsfolge setzt die Tabelle 2.1.
Offenbar ist die Tabelle nun an eine LATEX geeignet erscheinende Stelle gerutscht. Durch Einfügen eines caption-Befehls wurde die Tabelle mit einer
Überschrift versehen. Der label-Befehl erlaubt es nun, im Fließtext an einer
beliebigen Stelle durch einen entsprechenden ref-Befehl zu referenzieren. Im
vorliegenden Fall also durch \ref{TabGedreht}. Im Text erscheint dann die
Nummer der Tabelle. Ein weiterer Vorteil ist, dass durch so referenzierte Tabellen mit \listoftables an beliebiger Stelle ein Tafelverzeichnis angelegt
werden kann. Ähnliches gilt für Grafiken (vgl. Kapitel 3).
Ein Problem ist, dass die mit dem caption-Befehl definierte Tabellenüberschrift
nicht mitgedreht wird!
Soll dies erreicht werden, so muss die Umgebung sidewaystable verwendet
werden, die ebenfalls zum rotating-Paket gehört.
Hier ein Beispiel:
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
42
Ausgewählte LATEX-Kapitel
\begin{sidewaystable}
\centering
\caption{Eine gedrehte Tabelle}\label{TabGedreht2}
\begin{tabular}
{*{3}{@{}>{\scriptsize\PBS\raggedright\hspace{0pt}}p{2cm}@{}}}
\toprule
Schnitzel
&
Fleisch
&
Schwein \\\addlinespace
\cmidrule(r){2-2}
Steak
&
Fleisch
&
Rind
\\\addlinespace
\cmidrule(c){2-3}
Pop Corn
&
Getreide
&
Mais
\\
\bottomrule
\end{tabular}
\end{sidewaystable}
Das Ergebnis ist in Tabelle 2.2 zu sehen.
Die Tabelle wird auf eine eigene Seite gesetzt. Die Überschrift wurde mitgedreht. Auch ist offensichtlich, dass sidewaystable wieder ein Gleitobjekt
erzeugt.
2.8
Übungen zu Tabellen im Querformat
Übung 11 (Lösung S. 113)
Setzen Sie eine Tabelle mit folgendem Aussehen:
el
itz
hn
Sc
k
ea
St
n
ch
or
C
s
ei
Fl
p
Po
ch
s
ei
Fl
e
ei
hw
Sc
id
re
et
G
n
d
in
R
s
ai
M
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
43
Ausgewählte LATEX-Kapitel
44
Steak
Schnitzel
Getreide
Fleisch
Fleisch
Mais
Rind
Schwein
Tabelle 2.2: Eine gedrehte Tabelle
Pop Corn
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
45
Übung 12 (Lösung S. 113)
Setzen Sie die Tabelle aus Übung 11 auf einer eigenen Seite mit Hilfe der Umgebung
sidewaystable.
2.9
Automatische Berechnung von Spaltenbreiten
In den bisherigen Beispielen musste man die Spaltenbreite vorgeben. Oft hat
man jedoch das Bedürfnis, dass die Spaltenbreite automatisch an bestimmte
Gegebenheiten angepasst werden soll. So möchte man häufig etwa die Spalten
so breit wählen, dass die Tabellenbreite der Seitenbreite entspricht.
Eine Umgebung, die das automatische Berechnen der Spaltenbreiten erlaubt
ist tabularx[4]. Diese wird in der Präambel durch
\usepackage{tabularx}
eingebunden.
Die Umgebung definiert die Spaltenoption X. Dies bedeutet, dass die Spaltenbreite entsprechend der angegebenen Gesamtbreite und der Spaltenzahl,
sowie ihres Inhalts ausgerechnet wird.
Ein Beispiel illustriert die Verwendung für eine über die ganze Seitenbreite
ausgedehnte Tabelle.
\begin{tabularx}{\linewidth}{*{3}{X}}
\toprule
Schnitzel
&
Fleisch
&
Schwein
\cmidrule(r){2-2}
Steak
&
Fleisch
&
Rind
\cmidrule(c){2-3}
Pop Corn
&
Getreide
&
Mais
\bottomrule
\end{tabularx}
\\\addlinespace
\\\addlinespace
\\
Schnitzel
Fleisch
Schwein
Steak
Fleisch
Rind
Pop Corn
Getreide
Mais
Hier alternativ dazu eine 10 cm breite Tabelle mit:
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
46
\begin{tabularx}{10cm}%
{*{3}{>{\small\raggedright\arraybackslash\hspace{0pt}}X}}
\toprule
Schnitzel
&
Fleisch
&
Schwein \\\addlinespace
\cmidrule(r){2-2}
Steak
&
Fleisch
&
Rind
\\\addlinespace
\cmidrule(c){2-3}
Pop Corn
&
Getreide
&
Mais
\\
\bottomrule
\end{tabularx}
Schnitzel
Fleisch
Schwein
Steak
Fleisch
Rind
Pop Corn
Getreide
Mais
Hierbei wurde die Spaltenoption so verändert, dass der Text linksbündig mit
kleiner Schrift gesetzt wird. Der Befehl \arraybackslash ersetzt in diesem
Fall das schon bekannte \PBS zur temporären Neudefinition des Zeilenumbruchzeichens (\\). Der Befehl funktioniert allerdings nur in Verbindung mit
der tabularx-Umgebung.
2.10
Übungen zu Tabellen mit automatischer
Berechnung von Spaltenbreiten
Übung 13 (Lösung S. 114)
Setzen Sie eine Tabelle mit folgendem Aussehen:
Schnitzel
Fleisch
Schwein
gut
ungesund
Steak
Fleisch
Rind
prima
eiweißhaltig
Pop Corn
Getreide
Mais
lecker
kalorisch
Übung 14 (Lösung S. 114)
Setzen Sie eine Tabelle mit folgendem Aussehen:
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
47
1
66
-11
Zahl
Text
langer Text
Und
nach
einer
Myrthenlaube
führt
er
des
Alkalden
Tochter.
Pauken
und
Trommettenjubel
klingt
herunter
von
dem
Schlosse.
2.11
Setzen von mehrseitigen Tabellen
Wird eine Tabelle länger als eine Seite, so kann diese mit den bisher vorgestellten Umgebungen nicht mehr gesetzt werden.
Tabellen, die sich über mehrere Seiten erstrecken müssen, können mit der
longtable-Umgebung gesetzt werden [3]. Zugriff auf diese Umgebung erhält
man durch das Einbinden in der Präambel mit:
\usepackage{longtable}
Damit wird die Umgebung
\begin{longtable}{spaltendef}
Spalte
···
Spalte
\end{longtable}
definiert.
Diese erzeugt ein Tabellen-Gleitobjekt, welches sich über mehrere Seiten erstrecken kann.
Die Funktion muss vom Befehl
\setlongtables
aktiviert werden. Allerdings sollte dies erst geschehen, wenn das Layout der
Tabelle steht. Bis dahin kann die erzeugte Tabelle merkwürdig aussehen. Es
empfiehlt sich, dieses Kommando bis zum letzten LATEX-Lauf auszukommentieren.
Ein Beispiel:
\setlongtables
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
48
\begin{center}
\setlength{\extrarowheight}{4pt}
\begin{longtable}{|l|l|l|}
\caption{Eine sehr sehr lange Tabelle}\\\hline
\multicolumn{3}{|l|}{\emph{Die sehr lange Tabelle beginnt ...}} %
\\\hline\hline\endfirsthead\hline
\multicolumn{3}{|l|}
{\emph{Die sehr lange Tabelle geht hier weiter ...}}%
\\\hline\hline\endhead
\multicolumn{3}{|r|}{\emph{Fortsetzung auf der nächsten Seite}}%
\\\hline \endfoot
\multicolumn{3}{|r|}{\emph{Die sehr lange Tabelle hört hier auf}}%
\\\hline \endlastfoot
\hline
xxxxxxxxxx
& xxxxxxxxxxxxxxxxxxxxxxxxx & xxxxxxxxxxxxxxxxxxxxx \kill
Schnitzel
&
Fleisch
&
Schwein \\ \hline
Steak
&
Fleisch
&
Rind
\\ \hline
Brötchen
&
Getreide
&
Weizen \\ \hline
Pop Corn
&
Getreide
&
Mais
\\ \hline
Schnitzel
&
Fleisch
&
Schwein \\ \hline
Steak
&
Fleisch
&
Rind
\\ \hline
Brötchen
&
Getreide
&
Weizen \\ \hline
Pop Corn
&
Getreide
&
Mais
\\ \hline
Schnitzel
&
Fleisch
&
Schwein \\ \hline
Steak
&
Fleisch
&
Rind
\\ \hline
Brötchen
&
Getreide
&
Weizen \\ \hline
Pop Corn
&
Getreide
&
Mais
\\ \hline
...
Schnitzel
&
Steak
&
Brötchen
&
Pop Corn
&
\end{longtable}
\end{center}
Fleisch
Fleisch
Getreide
Getreide
&
&
&
&
Schwein
Rind
Weizen
Mais
Dies liefert die nachfolgende Tabelle.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
\\
\\
\\
\\
\hline
\hline
\hline
\hline
Ausgewählte LATEX-Kapitel
49
Tabelle 2.3: Eine sehr sehr lange Tabelle
Die sehr lange Tabelle beginnt ...
Schnitzel
Fleisch
Schwein
Steak
Fleisch
Rind
Brötchen
Getreide
Weizen
Pop Corn
Getreide
Mais
Schnitzel
Fleisch
Schwein
Steak
Fleisch
Rind
Brötchen
Getreide
Weizen
Pop Corn
Getreide
Mais
Schnitzel
Fleisch
Schwein
Steak
Fleisch
Rind
Brötchen
Getreide
Weizen
Pop Corn
Getreide
Mais
Schnitzel
Fleisch
Schwein
Steak
Fleisch
Rind
Brötchen
Getreide
Weizen
Pop Corn
Getreide
Mais
Schnitzel
Fleisch
Schwein
Steak
Fleisch
Rind
Brötchen
Getreide
Weizen
Pop Corn
Getreide
Mais
Schnitzel
Fleisch
Schwein
Steak
Fleisch
Rind
Brötchen
Getreide
Weizen
Pop Corn
Getreide
Mais
Schnitzel
Fleisch
Schwein
Steak
Fleisch
Rind
Brötchen
Getreide
Weizen
Pop Corn
Getreide
Mais
Fortsetzung auf der nächsten Seite
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
50
Die sehr lange Tabelle geht hier weiter ...
Schnitzel
Fleisch
Schwein
Steak
Fleisch
Rind
Brötchen
Getreide
Weizen
Pop Corn
Getreide
Mais
Schnitzel
Fleisch
Schwein
Steak
Fleisch
Rind
Brötchen
Getreide
Weizen
Pop Corn
Getreide
Mais
Schnitzel
Fleisch
Schwein
Steak
Fleisch
Rind
Brötchen
Getreide
Weizen
Pop Corn
Getreide
Mais
Schnitzel
Fleisch
Schwein
Steak
Fleisch
Rind
Brötchen
Getreide
Weizen
Pop Corn
Getreide
Mais
Schnitzel
Fleisch
Schwein
Steak
Fleisch
Rind
Brötchen
Getreide
Weizen
Pop Corn
Getreide
Mais
Schnitzel
Fleisch
Schwein
Steak
Fleisch
Rind
Brötchen
Getreide
Weizen
Pop Corn
Getreide
Mais
Schnitzel
Fleisch
Schwein
Steak
Fleisch
Rind
Brötchen
Getreide
Weizen
Pop Corn
Getreide
Mais
Schnitzel
Fleisch
Schwein
Steak
Fleisch
Rind
Fortsetzung auf der nächsten Seite
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
51
Die sehr lange Tabelle geht hier weiter ...
Brötchen
Getreide
Weizen
Pop Corn
Getreide
Mais
Schnitzel
Fleisch
Schwein
Steak
Fleisch
Rind
Brötchen
Getreide
Weizen
Pop Corn
Getreide
Mais
Schnitzel
Fleisch
Schwein
Steak
Fleisch
Rind
Brötchen
Getreide
Weizen
Pop Corn
Getreide
Mais
Schnitzel
Fleisch
Schwein
Steak
Fleisch
Rind
Brötchen
Getreide
Weizen
Pop Corn
Getreide
Mais
Schnitzel
Fleisch
Schwein
Steak
Fleisch
Rind
Brötchen
Getreide
Weizen
Pop Corn
Getreide
Mais
Schnitzel
Fleisch
Schwein
Steak
Fleisch
Rind
Brötchen
Getreide
Weizen
Pop Corn
Getreide
Mais
Schnitzel
Fleisch
Schwein
Steak
Fleisch
Rind
Brötchen
Getreide
Weizen
Pop Corn
Getreide
Mais
Die sehr lange Tabelle hört hier auf
Man beachte die Zeile
xxxxxxxxxx & xxxxxxxxxxxxxxxxxxxxxxxxx & xxxxxxxxxxxxxxxxxxxxx \kill
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
in der Definition der Tabelle. Auf Grund des kill-Befehls wird diese Zeile
nicht gesetzt, aber zur Berechnung der Spaltenbreiten herangezogen. Damit ist
es also möglich, bestimmte Spaltenbreiten voreinzustellen, die nicht von den
übrigen Einträgen abhängen. Diese Möglichkeit ist allerdings nicht gerade
elegant.
Durch die multicolumn-Befehle am Anfang der Tabelle werden die Beschriftungen des ersten Tabellenkopfs, der Tabellenköpfe und Tabellenendezeilen
bei Seitenumbruch und der letzten Tabellenzeile eingestellt.
Im vorliegenden Fall sollen sie sich über alle drei Tabellenspalten erstrecken.
Natürlich müssen nicht alle diese Einstellungen wirklich vorkommen. So kann
beispielsweise nur der Tabellenkopf oder nur das Tabellenende spezifiziert
werden.
Die Spaltenbreitendefinition mit Hilfe des kill-Befehls ist selbstverständlich
auch nicht zwingend. Natürlich können die bisher bekannten Spaltendefinitionen mit expliziter Breitenangabe weiter verwendet werden.
Manchmal kann der kill-Befehl in der oben angewandten Weise jedoch zu Vereinfachung des Tabellensatzes beitragen. So kann die Spaltenbreite mit Hilfe dieses Befehls unabhängig vom gewählten Format damit definiert werden.
Voraussetzung ist, dass man für die kill-Zeile einen Spalteneintrag mit vorbestimmter Länge definieren kann.
Eine in [7] vorgeschlagene Möglichkeit dafür ist etwa die Angabe einer unsichtbaren Linie einer bestimmten Länge mit Hilfe des hrule-Befehls.
So würde die Zeile
\rule{2cm}{0pt} & \rule{4cm}{0pt} & \rule{5cm}{0pt} \kill
die Spaltenbreiten auf 2, 4 und 5 cm festlegen, indem drei Linien entsprechender Länge und der Dicke 0 pt3 festgelegt werden. Dies setzt natürlich voraus,
das keine anderen Spalteneinträge breiter sind.
2.12
Übungen zu mehrseitigen Tabellen
Übung 15 (Lösung S. 115)
Setzen Sie eine Tabelle, die in ihren Spalten zentriert die ersten hundert ganzen
Zahlen, ihre Quadrate und ihre dritten Potenzen auflistet. Die Zahlen sind dabei im
3 Im
Grunde ist es gleich, ob die Linien sichtbar sind oder nicht, da die Zeile ja ohnehin
nicht gesetzt wird.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
52
Ausgewählte LATEX-Kapitel
53
mathematischen Modus zu setzen.
Die Tabelle soll (auf jeder Seite) mit entsprechenden Köpfen beschriftet sein und am
Seitenende den Eintrag Fortsetzung auf der nächsten Seite enthalten. Am Tabellenende soll der Eintrag Ende der Tabelle stehen.
Die Spalten sollen die Breite 1.5 cm, 2 cm und 5 cm haben. Definieren Sie diese
Spaltenbreiten auf die herkömmliche Weise und vergleichen Sie dies mit der Möglichkeit, den \kill-Befehl zu verwenden und die Spaltenbreite mit dem Befehl \hrule{Breite}{Dicke}) festzulegen.
Die Tabelle sollte in jedem Fall etwa folgendes Aussehen haben:
Zahlen
Quadrate
dritte Potenzen
1
1
1
2
4
8
3
9
27
4
16
64
···
100
10000
1000000
Ende der Tabelle
Übung 16 (Lösung S. 116)
Setzen Sie eine Tabelle, die in ihren Spalten zentriert die Polynome xn und ihre
Ableitungsfunktionen bis zum Grad n = 30 auflistet.
Die Tabelle soll auf der ersten Seite mit dem zentrierten Eintrag Ableitungstabelle
und (wie auch auf jeder Seite) mit entsprechenden Köpfen beschriftet sein. Am Seitenende soll sie zentriert den Eintrag · · · enthalten. Am Tabellenende soll der Eintrag
Ende der Ableitungstafel stehen.
Sie hat also etwa folgendes Aussehen:
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
54
Ableitungstabelle
xn
Ableitung
1
0
x
1
x2
2x
x3
3x2
x4
4x3
x5
5x4
x6
6x5
x7
7x6
···
x8
8x7
x9
9x8
x10
10x9
x27
27x26
x28
28x27
x29
29x28
x30
30x29
Ende der Ableitungstafel
2.13
Schlussbemerkungen
In den vorangegangenen Abschnitten wurden natürlich bei Weitem nicht alle
Möglichkeiten, Tabellen zu setzen vorgestellt. Hierfür sei auf die einschlägige
Literatur wie etwa den LATEX-Begleiter [7] oder die Paketdokumentationen [2,
3, 4, 5, 14, 13] hingewiesen.
Es soll aber noch auf ein paar Stilparameter hingewiesen werden, die, wie etwa
\extrarowheight in den vorangegangen Beispielen, mit \setlength angepasst
werden können.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
55
\extrarowheight
erhöht die Tabellenzeile
\arraycolsep
Hälfte des Spaltenabstandes in array
\tabcolsep
Hälfte des Spaltenabstandes in tabular
\arrayrulewidth
Dicke der Linien
\doublerulesep
Abstand zweier aufeinanderfolgender Linien
\arraystretch
Streckfaktor für den Zeilenabstand
Ein abschließendes Beispiel hierzu soll die Verwendung erläutern.
Die LATEX-Anweisungen
{%
\setlength{\extrarowheight}{4pt}
\renewcommand{\arraystretch}{2}
\setlength{\arrayrulewidth}{5pt}
\begin{tabular}{|>{$}c<{$}|>{$}c<{$}|>{$}c<{$}|}
\hline
$Zahlen$ & $Quadrate$ & $dritte Potenzen$ \\\hline%
1
& 1
& 1
\\\hline
2
& 4
& 8
\\\hline
3
& 9
& 27
\\\hline
4
& 16
& 64
\\\hline
\multicolumn{3}{|c|}{\emph{$\cdots$}}\\\hline
100
& 10000
& 1000000\\\hline
\end{tabular}
}%
liefern:
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
56
Zahlen
Quadrate
dritte Potenzen
1
1
1
2
4
8
3
9
27
4
16
64
···
100
10000
1000000
In diesem Beispiel wurde neben der schon bekannten Anhebung der Zeilenhöhe mit \setlength{\arrayrulewidth}{5pt} die Dicke der Linien
auf 5 Punkte erhöht. Außerdem wurde der voreingestellte Zeilenabstand mit
\renewcommand{\arraystretch}{2} um den Faktor 2 erhöht.
Die Parameter sind meist Längen und werden auf die obige Weise mit dem
Kommando setlength auf neue Werte gesetzt. arraystretch bildet eine Ausnahme. Dies ist keine Länge sondern ein TEX-Kommando. Infolgedessen muss
dies mit renewcommand auf einen neuen Wert eingestellt werden.
Man beachte, dass die Wirkung der Kommandos auch in diesem Beispiel
durch die Klammerung in geschweiften Klammern auf die Tabelle beschränkt
wurde! Wenn wir anschließend die obige Tabelle mit
\begin{tabular}{|>{$}c<{$}|>{$}c<{$}|>{$}c<{$}|}
\hline
$Zahlen$ & $Quadrate$ & $dritte Potenzen$ \\\hline%
1
& 1
& 1
\\\hline
2
& 4
& 8
\\\hline
3
& 9
& 27
\\\hline
4
& 16
& 64
\\\hline
\multicolumn{3}{|c|}{\emph{$\cdots$}}\\\hline
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
100
& 10000
\end{tabular}
57
& 1000000\\\hline
nochmals setzen, so erhalten wir:
Zahlen
1
2
3
4
100
Quadrate dritte Potenzen
1
1
4
8
9
27
16
64
···
10000
1000000
Für detailliertere Informationen, auch zu den hier nicht angegeben Stilparametern, sollten [7] und [14] konsultiert werden.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Kapitel 3
LATEX und Grafiken
LATEX bietet mehrere Pakete an, mit denen Grafiken erstellt werden können.
Beispiele sind das picture-Paket zum Erstellen von Strichzeichnungen, das
bar-Paket zum Erstellen von Balkendiagrammen oder das curves-Paket zum
Zeichen von beliebigen Kurven [7]. Darüber hinaus gibt es zahlreiche spezialisierte Pakete, etwa zum Zeichen elektrischer Schaltkreise, chemischer Formeln, ja sogar von Schach-Stellungen.
Umfangreiche Möglichkeiten bietet auch das pstricks-Paket, welches die Möglichkeit bietet innerhalb von LATEX auf die mächtige Postscript-Sprache zuzugreifen.
Über all diese Pakete soll an dieser Stelle nicht berichtet werden.
Stattdessen soll auf die Möglichkeiten hingewiesen werden, in LATEX Grafiken
einzubinden, die mit externen Programmen wie MATLAB, Maple, Powerpoint
oder sonstigen gängigen Werkzeugen erstellt wurden [12]. Nach Ansicht des
Autors ist es realistischer, diese Situation anzunehmen und hierfür Lösungen
anzubieten.
3.1
Das graphicx-Paket
Die besten Möglichkeiten zum Einbinden externer Grafiken bietet das graphics-Paket [1, 7] oder besser noch dessen Erweiterung graphicx. Das Einbinden dieses Pakets in der Präambel erfolgt mit:
\usepackage{graphicx}
Dabei kann das Paket schon mit einer Option im Hinblick auf den verwendeten Ausgabetreiber versehen werden. So bereitet
Ausgewählte LATEX-Kapitel
\usepackage[pdftex]{graphicx}
das Dokument auf die Verwendung von pdfTEX (pdfLATEX) vor, welches das
Dokument direkt in Adobes pdf-Format erzeugt, eine Möglichkeit, die insbesondere im Hinblick auf Internet-Publikationen von Interesse sein dürfte [11].
Wird diese Treiberoption gewählt, so muss das LATEX-Dokument auch mit pdfLATEX geTEXt werden, da es sonst zu Fehlermeldungen1 kommt.
Mit der Anweisung
\usepackage[dvips]{graphicx}
wird das Dokument auf den dvips-Treiber eingestellt, mit dem das von LATEX
erzeugte dvi-File in ein PostScript-File umgewandelt werden kann. Wird diese Option gewählt, so können so genannte encapsulated PostScript-Grafiken in
das Dokument eingebunden werden.
Was die Einbindung externer Grafiken anbetrifft, so bestimmt man mit der
Treiberoption auch die Typen von Grafiken, welche eingebunden werden. Diese werden an der Endung erkannt.
Genaue Auskunft über die möglichen Treiberoptionen und die dadurch verwendbaren Grafikformate gibt [1]. Eine detaillierte Darstellung an dieser Stelle
würde den Rahmen sprengen. Wir werden daher nur die beiden wichtigsten,
oben vorgestellten Optionen, näher besprechen.
Das graphicx-Paket stellt den Befehl includegraphics zu Verfügung, welcher folgender allgemeiner Syntax genügt:
\includegraphics[<Optionen>]{<Grafikdatei>}
Als Optionen können dabei Größen- und Positionsdaten angegeben werden.
Bevor wir in weitere Details eindringen, hier zunächst ein erstes Beispiel2 . Mit
\includegraphics[width=7cm]{abb/fhlogo.png}
1 In
den in Kapitel 1 vorgestellten und empfohlenen Template-Files zur Bearbeitung der
Übungsaufgaben werden die Grafikpaketoptionen mit Hilfe eines Schalters in Abhängigkeit
davon geladen, ob pdfLATEX oder LATEX verwendet wird. Verwendet man diese Templates, so
braucht man sich also keine Gedanken zu machen.
2 Die nachfolgenden Beispiele müssen mit pdfLAT X geT Xt werden, da es sonst zur FehlerE
E
meldung cannot determine bounding box! kommt. Will man pdfLATEX nicht verwenden, so muss die Grafik ein anderes Format konvertiert werden.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
59
Ausgewählte LATEX-Kapitel
wird eine Grafik im pdf-Format mit einer Breite von 5 cm gesetzt. Da es sich
um ein skalierbares Grafikformat handelt, kann die Breite frei gewählt werden
und die Höhe der Grafik wird automatisch angepasst.
Die Grafik fhlogo.png befindet sich im obigen Beispiel in einem Verzeichnis
abb, welches im gleichen Ordner wie das LATEX-Dokument liegt. Also muss
dieses Verzeichnis mit angegeben werden.
Betrachten wir ein weiteres Beispiel:
\begin{figure}[ht!] % Bild wird genau hier oder auf
\begin{center}
% Seitenanfang (zentriert) gesetzt
\includegraphics[width=7cm]{abb/fhlogo.png}
\caption{Das anbetungswürdige FH-Logo}\label{AnbetungFH}
\end{center}
\end{figure}
Abbildung 3.1: Das anbetungswürdige FH-Logo
Wie man sieht, ist \includegraphics-Befehl hier in eine figure-Umgebung gepackt werden. Diese erzeugt ein Gleitobjekt [13] von der Art, wie wir sie schon
im Zusammenhang mit Tabellen kennen gelernt haben (vgl. Kapitel 2). Mit der
Option h kann der Wunsch geäußert werden, dass die Grafik genau an diese
Stelle gesetzt werden soll. Falls dies aus Platzgründen nicht möglich ist, entscheidet LATEX, wohin die Grafik gleitet (meist an den Seitenanfang, entsprechend Option t). Auf die Steuerung dieser Gleitvorgänge gehen wir später
ein.
Der Vorteil der Klammerung in eine figure-Umgebung ist die Möglichkeit, die
Grafik mit einer Nummer und einer Beschriftung zu versehen. Auch dies kennen wir bereits für Tabellen und die table-Umgebung. In diesem Fall kann
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
60
Ausgewählte LATEX-Kapitel
die Grafik auch wieder in ein eigenes Verzeichnis, dem Grafikverzeichnis, aufgenommen werden, welches mit dem Kommando \listoffigures gesetzt
wird.
Will man das Bild nicht mit der \caption-Anweisung mit einer Beschriftung
versehen und auch nicht gleiten lassen, so kann der \includegraphics-Befehl,
wie oben schon gezeigt, auch ohne die figure-Umgebung benutzt werden.
Hier ein weiteres Beispiel, bei dem Gebrauch von einem zweiten Skalierungsparameter gemacht wird:
\begin{center}
% Seitenanfang (zentriert) gesetzt
\includegraphics[width=10cm, height=2cm]{abb/fhlogo.png}
\end{center}
Wie man sieht, wird das Bild verzerrt. Will man also die originalen Größenverhältnisse beibehalten, so empfiehlt es sich, nur Breite oder Höhe anzugeben.
Die andere Seite wird dann automatisch mitskaliert.
Es gibt zahlreiche andere Optionen, von denen hier nur die wichtigsten erwähnt seien:
angle
Rotationswinkel
origin
Bezugspunkt für die Rotation
scale
Skalierungsfaktor
type
Grafiktyp
Hier ein weiteres Beispiel:
\includegraphics[width=7cm, angle=45, origin=c]{abb/fhlogo.png}
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
61
Ausgewählte LATEX-Kapitel
Und noch ein Beispiel:
\includegraphics[width=3cm, angle=45]{abb/fhlogo.png}
Im ersten Fall wird das Bild um die Bildmitte (origin=c), im zweiten Fall um
die linke untere Ecke (default-Einstellung) um 45 Grad im Gegenuhrzeigersinn gedreht.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
62
Ausgewählte LATEX-Kapitel
3.2
Übungen zum graphicx-Paket
Übung 17 (Lösung S. 117)
Setzen Sie das FH-Logo fholgo.png mit einer Breite von 4 cm auf dem Kopf stehend
und mit der Bildunterschrift: Die FH steht Kopf.
Das Bild sollte also wie in Abbildung 3.2 aussehen:
Abbildung 3.2: Die FH steht Kopf
Übung 18 (Lösung S. 118)
Zeichnen Sie mit MS Powerpoint oder einem anderen Programm das in Abbildung
3.3 dargestellte Bild. Speichern Sie es im png- und im eps-Format. Setzen Sie es
in Ihr LATEX-Dokument mit der Breite 6 cm und versehen Sie es mit der zweifelhaften
Bildunterschrift: Scharf auf LATEX!.
Abbildung 3.3: Scharf auf LATEX!
3.3
Das caption2-Paket
Wie wir in den vorangegangenen Beispielen schon gesehen haben, können
Bildunterschriften innerhalb der figure-Umgebung durch die Angabe von
\caption{Bildunterschrift}\label{ReferenzAufBild}
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
63
Ausgewählte LATEX-Kapitel
gesetzt werden. Die Angabe einer Referenz empfiehlt sich, um im Text über
die Bildnummer auf das Bild Bezug nehmen zu können.
Dies ist insbesondere deshalb von Bedeutung, weil, wie schon erwähnt, die
figure-Umgebung Gleitobjekte erzeugt, welche vom zugehörigen Text weggleiten können.
Bei den Bildunterschriften, die mit caption zentriert unter das Bild gesetzt
werden, ergibt sich ein Problem, das durch das Beispiel in Abbildung 3.4 verdeutlicht werden kann.
Abbildung 3.4: Die FH steht Kopf! Kein Mensch weiß, ob der Rektor dafür Verständnis hätte. Ich glaub’ nicht.
Der Umbruch unter das Wort Abbildung sieht nicht schön aus. Abhilfe schafft
hier das caption2-Paket. Mit dem Kommando \captionstyle{hang} kann die
Unterschrift hängend eingezogen werden, wie im Beispiel von Abbildung 3.5.
{%
\captionstyle{hang}
\begin{figure}[ht]
\begin{center}
\includegraphics[width=3cm, angle=180]{abb/fhlogo.png}
\caption{\emph{Die FH steht Kopf! Kein Mensch weiß, ob der Rektor %
dafür Verständnis hätte. Ich glaub’ nicht.}}\label{FHstehtKopf3}
\end{center}
\end{figure}
}%
Soll der hängende Einzug für alle Bild- und Tabellenunter- bzw. -überschriften
des Dokuments gelten, so kann das caption2-Paket alternativ mit der Option
hang auf folgende Weise geladen werden:
\usepackage[hang] {caption2}
Das caption2-Paket bietet noch mehr Möglichkeiten zur Gestaltung der Bildunterschrift. Man konsultiere hierzu die Paketdokumentation.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
64
Ausgewählte LATEX-Kapitel
Abbildung 3.5: Die FH steht Kopf! Kein mensch weiß, ob der Rektor dafür Verständnis hätte. Ich glaub’ nicht.
3.4
Übungen zum caption2-Paket
Übung 19 (Lösung S. 118)
Setzen Sie die Grafik aus Übung 17 mit der Bildunterschrift: Scharf auf LATEX! Dies
könnte mißverstanden werden. Aber hier handelt es sich um das einmaligeTextsatzprogramm!.
Setzen Sie die Unterschrift dabei fett in der Schriftgröße scriptsize und achten Sie
darauf, dass der Einzug hängend ist. Die Optionen sollen sich dabei nur auf dieses
Bild erstrecken. Konsultieren Sie dafür die Dokumentation des caption2-Pakets oder
direkt das caption2.sty-Style-File.
Die Grafik sollte dann so aussehen wie in Abbildung 3.6.
Abbildung 3.6: Scharf auf LATEX! Dies könnte mißverstanden werden. Aber hier handelt es sich um das einmaligeTextsatzprogramm!
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
65
Ausgewählte LATEX-Kapitel
3.5
Graphiken nebeneinander setzen
Normalerweise werden Grafiken, wenn es der Platz zulässt und wenn zwischen den einzelnen \includegraphics-Anweisungen keine Leerzeile für den
Übergang in einen neuen Abschnitt liegt automatisch nebeneinander gesetzt.
Dies zeigt das nachfolgende Beispiel:
\begin{center}
\includegraphics[width=7cm, angle=180, origin=c]{abb/fhlogo.png}
\includegraphics[width=3cm]{abb/scharfaufLatex.png}
\end{center}
Anders verhält es sich bei Gleitobjekten (vgl. dazu auch Abschnitt 3.7).
Hier muss die Abbildung in eine minipage-Umgebung verpackt werden. Minipages können ihrerseits dann nebeneinander gesetzt werden.
Eine Minipage ist, wie der Name schon sagt eine „kleine Seite“, in der Fließtext aber auch Bilder und Tabellen gesetzt werden können. Eine minipageUmgebung darf keine Gleitobjekte enthalten [7]. Daher müssen die Minipages
in die Gleitumgebung integriert werden.
Eine Minipage wird durch die Anweisung
\begin{minipage}[Position]{Breite}
Text, Bilder, etc.
\end{minipage}
definiert, wobei der optionale Parameter Position (entweder [b],[c] oder [t])
angibt, ob der Inhalt der Minipage am Fuß (bottom) einer gedachten Grundlinie orientiert ist, zentriert dazu (center) oder am Kopf der Grundlinie (top).
Verwendet man eine Minipage in einer figure-Umgebung, so können die Bilder wieder mit einer Bildunterschrift versehen werden, wie im Beispiel der
Abbildungen 3.7 und 3.8, die mit folgenden Anweisungen gesetzt wurden:
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
66
Ausgewählte LATEX-Kapitel
67
Abbildung 3.7: FH-Logo
Abbildung 3.8: LATEX-Herz
\begin{figure}
\begin{minipage}[b]{0.6\textwidth}
\begin{center}
\includegraphics[width=7cm, angle=180, origin=c]{abb/fhlogo.png}
\caption{FH-Logo }\label{fhlog3}
\end{center}
\end{minipage}
\begin{minipage}[t]{0.4\textwidth}
\begin{center}
\includegraphics[width=3cm]{abb/scharfaufLatex.png}
\caption{\LaTeX{}-Herz}\label{scharf3}
\end{center}
\end{minipage}
\end{figure}
3.6
Übungen zum Nebeneinandersetzen
von Grafiken
Übung 20 (Lösung S. 119)
Setzen Sie das FH-Logo in der Breite 6 cm jeweils um 0, 90, 180 und 270 Grad um
seinen Mittelpunkt gedreht in Form einer 2 × 2-Matrix und versehen Sie die Bilder mit
einer entsprechenden Beschriftung in scriptsize-Größe.
Das Ergebnis sollte etwa so Aussehen, wie in den Abbildungen 3.9 bis 3.12.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
68
Abbildung 3.9: FH-Logo korrekt
Abbildung 3.10: FH-Logoum 90 Grad gedreht
Abbildung 3.11: FH-Logo um 180 Grad gedreht
Abbildung 3.12: FH-Logo um 270 Grad gedreht
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
3.7
Graphiken als Gleitobjekte
In den vorliegenden Abschnitten wurde des öfteren von der Unterscheidung
zwischen Gleitobjekten und Nicht-Gleitobjekten gesprochen. Grundsätzlich definieren die Umgebungen figure und table Gleitobjekte.
Man sollte an den Mechanismen, nach denen LATEX Gleitobjekte platziert so
wenig als möglich rühren, da LATEX die Gleitobjekte fast immer optimal und
nach typografisch einwandfreien Gesichtspunkten setzt. Es gibt eine Reihe
von Steuerungsparametern (Zähler oder Längen) mit denen man diese Mechanismen beeinflussen kann. Allerdings erfordert dies viel Erfahrung, so dass
man als LATEX-Normalanwender davon die Finger lassen sollte.
Einzig und allein die Optionen [h],[t] und [b], welche nach der \begin{figure}oder \begin{table}-Anweisungen stehen, sollten hier erwähnt werden. Hiermit kann man LATEX bitten (nicht zwingen) das Bild oder die Tabelle genau hier,
am Seitenanfang oder am Seitenende zu setzen.
Besonders die Option [h] scheint in diesem Zusammenhang erwähnenswert,
da oft das Bild genau hier gesetzt werden kann, ohne dass es Sch...ändlich aussieht.
Zum Abschluss sollte noch erwähnt werden, dass die Gleitobjekte manchmal
ganz ans Ende des Dokuments geschoben werden, wenn zu viele oder zu
große Gleitobjekte vorkommen. Dies kann durch die Anweisung \clearpage verhindert werden. Die Anweisung beendet die aktuelle Seite und setzt
alle noch nicht verarbeiteten Gleitobjekte.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
69
Kapitel 4
PostScript-Schriften für LATEX
In diesem Kapitel soll auf die Verwendung von PostScript-Schriften hingewiesen werden. PostScript ist eine mächtige Seitenbeschreibungssprache der Fa.
Adobe. Auf ihre Definition und ihre zahlreichen Möglichkeiten soll und kann
aber an dieser Stelle nicht eingegangen werden.
Für PostScript sind eine Reihe von Schriftfamilien geschaffen worden. Einige sind frei verfügbar, andere können käuflich erworben werden. Wir werden uns hier natürlich auf die freien Schriften beschränken. Diese sind in den
ROMs der gängigen PostScript-fähigen Drucker implementiert.
LATEX-Dokumente werden normalerweise in der vom TEX-Schöpfer Donald
Knuth entworfenen Computer Modern-Schriftfamilie gesetzt.
Im Gegensatz zu diesen Schriften sind die PostScript-Schriften jedoch bezüglich ihrer Größe frei skalierbar und somit speziell interessant. Außerdem sind
die PostScript-Schriften i.A. besonders schön. Das vorliegende Dokument beispielsweise ist in der Palatino-Schriftfamilie gesetzt.
4.1
Pakete für PostScript-Schriften
In der Tabelle 4.1 wird ein Überblick über die LATEX-Pakete gegeben, die mit
dem usepackage-Befehl in der Präambel eingebunden werden müssen, um
ein Dokument in der gewünschten PostScript-Schriftfamilie zu setzen [10, 15].
Das Paket times beispielsweise stellt die default-Schriftarten mit folgenden
Befehlen ein:
\renewcommand{\sfdefault}{phv}
\renewcommand{\rmdefault}{ptm}
\renewcommand{\ttdefault}{pcr}
Ausgewählte LATEX-Kapitel
71
Tabelle 4.1: LATEX-Pakete für die PostScript-Schrift-Familien
Paket
Serifenschrift
Sans-SerifSchrift
TypewriterSchrift
times
Times
Helvetica
Courier
palatino
Palatino
Helvetica
Courier
newcent
NewCenturySchoolbook
AvantGarde
Courier
bookman
Bookman
AvantGarde
Courier
helvet
Helvetica
avant
AvantGarde
Die Buchstabenkombinationen kennzeichnen die PostScript-Schriftfamilien
Helvetica (phv), Times (ptm) und Courier (pcr).
Durch die Anweisungen des Pakets werden diese Schriften zu default-Schriften des Dokuments, d.h. im vorliegenden Beispiel wird durch das times-Paket
für das Dokument die Normalschrift (rmdefault) auf Times, die defaultmäßig verwendete serifenlose Schrift (sfdefault), die z.B. durch den Befehl
\sffamily angewählt würde, auf Helvetica und die Typewriterschrift, die
durch einen Befehl wie \texttt{...} verwendet würde, auf Courier umgestellt.
4.2
Übungen zu den Paketen für
PostScript-Schriften
Übung 21 (Lösung S. 120)
Setzen Sie die Tabelle 4.1 so, dass die Einträge in der Schriftart Bookman gesetzt
werden. Laden Sie dazu das entsprechende Paket mit Hilfe eines geeigneten \usepackage-Befehls.
Falls Sie die Template-Files verwenden, kommentieren Sie den Befehl \usepackage{palatino} kurzzeitig aus und ersetzen ihn durch den richtigen Ladebefehl.
Das Ergebnis sollte dann der Tabelle 4.2 entsprechen.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
72
Tabelle 4.2: LATEX-Pakete für die PostScript-Schrift-Familien
Paket
Serifenschrift
Sans-SerifSchrift
TypewriterSchrift
times
Times
Helvetica
Courier
palatino
Palatino
Helvetica
Courier
newcent
NewCenturySchoolbook
AvantGarde
Courier
bookman
Bookman
AvantGarde
Courier
helvet
Helvetica
avant
AvantGarde
Übung 22 (Lösung S. 121)
Setzen Sie einen Beispieltext in verschiedenen Schriftarten, indem Sie verschiedene
Schriftpakete mit Hilfe eines geeigneten \usepackage-Befehls laden.
4.3
PostScript-Pi-Fonts
Zum Setzen spezieller PostScript-Symbol-Zeichensätze in LATEX kann das die
frei verfügbare Paket pifont eingebunden werden [10, 15]:
\usepackage{pifont}
Mit diesem Paket kann auf Zeichen wie ✆, ➊, ➽ oder ♣ , ℜ und  zugegriffen
werden.
Die ersten drei dieser Zeichen gehören zu den so genannten Zapf Dingbats, die
letzteren zu dem PostScript Symbol Font.
Der Zugriff auf diese Zeichen erfolgt durch den Befehl
\Pisymbol{fontname}{symbolnummer}
wobei für fontname entweder psy (Symbol-Font) oder pzd (Zapf-Dingbats) angegeben werden kann.
Für die Zapf-Dingbats kann einfacher der Befehl
\ding{symbolnummer}
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
angegeben werden. Die Symbolnummer ist eine Zahl zwischen 32 und 254.
Genaueres entnimmt man einer entsprechenden Symboltabelle (vgl. Anhang
A).
Die Anweisungen
\Pisymbol{psy}{42}, \Pisymbol{psy}{72}, \Pisymbol{psy}{122},
\Pisymbol{psy}{228}, \Pisymbol{psy}{211}
\Pisymbol{pzd}{42}, \Pisymbol{pzd}{72}, \Pisymbol{pzd}{122},
\Pisymbol{pzd}{228}, \Pisymbol{pzd}{211}
\ding{42}, \ding{72}, \ding{122},
\ding{228}, \ding{211}
liefert die Ausgabe:
∗, Η, ζ, , 
☛, ★, ❚, ➤, ➓
☛, ★, ❚, ➤, ➓
Mit Hilfe der Anweisung
\Pifont{font}
kann komplett auf einen der Pifonts umgeschaltet werden. Die Anweisungsfolge
Jetzt was im Symbol-Font:
{% halte Umschaltung lokal
\Pifont{psy}
Dieser Text wird in einem der Symbolfonts gesetzt!
Das sieht bizarr aus, aber was soll’s.
}%
Das Gleiche mit Zapf-Dingbats:
{% halte Umschaltung lokal
\Pifont{pzd}
Dieser Text wird in einem der Symbolfonts gesetzt!
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
73
Ausgewählte LATEX-Kapitel
Das sieht bizarr aus, aber was soll’s.
}%
liefert:
Jetzt was im Symbol-Font:
∆ιεσερ Τεξτ ωιρδ ιν εινεµ δερ Σψµβολφοντσ γεσετζτ!
∆ασ σιεητ βιζαρρ αυσ, αβερ ωασ σολλ∋σ.
Das Gleiche mit Zapf-Dingbats:
✤❉❅▲❅❒ ✴❅❘▼ ◗❉❒❄ ❉■ ❅❉■❅❍ ❄❅❒ ✳❙❍❂❏●❆❏■▼▲ ❇❅▲❅▼❚▼✁
✤❁▲ ▲❉❅❈▼ ❂❉❚❁❒❒ ❁◆▲✌ ❁❂❅❒ ◗❁▲ ▲❏●●✇▲✎
Weitere nützliche Befehle liefert das Paket zum Setzen von nummerierten Listen:
\begin{Pilist}{font}{symbolnummer}
alternativ für Zapf-Dingbats
\begin{dinglist}{symbolnummer}
oder auch
\begin{Piautolist}{font}{symbolnummer}
alternativ für Zapf-Dingbats
\begin{dingautolist}{symbolnummer}
Damit kann man beispielsweise folgende Auflistungen setzen:
\begin{dinglist}{164}
\item der erste Eintrag
\item der zweite Eintrag
\item der dritte Eintrag hat Unterpunkte
\begin{dinglist}{68}
\item erster Untereintrag
\item zweiter Untereintrag
\end{dinglist}
\item der vierte Eintrag
\end{dinglist}
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
74
Ausgewählte LATEX-Kapitel
❤ der erste Eintrag
❤ der zweite Eintrag
❤ der ditte Eintrag hat Unterpunkte
✤ erster Untereintrag
✤ zweiter Untereintrag
❤ der vierte Eintrag
Die Autolist-Umgebungen werden für fortlaufende Indizierung der Einträge
genutzt. Etwa so:
\begin{Piautolist}{psy}{97}
\item der erste Eintrag
\item der zweite Eintrag
\item der ditte Eintrag hat Unterpunkte
\begin{Piautolist}{psy}{167}
\item erster Untereintrag
\item zweiter Untereintrag
\end{Piautolist}
\item der vierte Eintrag
\end{Piautolist}
α der erste Eintrag
β der zweite Eintrag
χ der ditte Eintrag hat Unterpunkte
♣ erster Untereintrag
♦ zweiter Untereintrag
δ der vierte Eintrag
4.4
Übungen zu PostScript-Pi-Fonts
Übung 23 (Lösung S. 121)
Setzen Sie den folgenden Text:
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
75
Ausgewählte LATEX-Kapitel
76
Ich habe das ➌, ➍, ➎ mal gesagt und wir haben das Ding doch auf ❤ und
Nieren geprüft. Allerdings ∃ kein Grund, das von α bis ω noch mal durchzukauen.
Es eicht!
Übung 24 (Lösung S. 121)
Setzen Sie eine Tabelle mit fünf Spalten und vier Zeilen mit den Zapf-Dingbats ab
Nummer 161.
Dies sieht dann wie folgt aus:
❡
❢
❣
❤
❥
❦
❧
♣
♦
♥
♠
①
②
③
④
⑤
⑥
⑦
⑧
⑨
Übung 25 (Lösung S. 122)
Setzen Sie folgende nummerierte Aufzählung:
❶ Denk’ ich an Deutschland in der Nacht
❷ so bin ich um den Schlaf gebracht.
❸ Ich kann nicht mehr die Augen schließen,
① und meine heißen Tränen fließen.
② Nach Deutschland lechzst ich nicht so sehr,
③ wenn nicht die Mutter dorten wär.
❹ Der deutsche Geist wird nicht verderben,
❺ jedoch die alte Frau kann sterben!
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Kapitel 5
Acrobatik mit LATEX
In diesem Minikapitel soll auf die Möglichkeiten hingewiesen werden, Dokumente im Portable Document Format (*.pdf-Format) für Adobes Acrobat Reader
zu erzeugen [11].
Da die zur Zeit verfügbaren LATEX-zu-HTML-Konverter keine befriedigenden
Ergebnisse liefern, scheint dies der Königsweg zu sein, seine LATEX-Dokumente
im Internet verfügbar zu machen. Zudem hat sich *.pdf seit einiger Zeit zu einem Standard entwickelt, der der elenden VerWordung der Welt endlich etwas
entgegensetzt.
5.1
Pdf via Postscript
Eine Möglichkeit, pdf-Dokumente zu erzeugen, ist der Umweg über Postscript-Dokumente.
In jeder vernünftigen LATEX-Umgebung sollte es die Möglichkeit geben den
Konverter (Treiber) dvips aufzurufen. Diese Programm konvertiert das von
LATEX erzeugte dvi-File in ein Postscript-Dokument.
Dieses Postscript-Dokument kann nun mit Adobes Acrobat Destiller in ein pdfDokument umgesetzt werden. Voraussetzung ist dabei natürlich, dass man
Zugriff auf diese Programm hat.
Für den Umgang mit diesem Programm sei auf die entsprechende Dokumentation verwiesen.
Ausgewählte LATEX-Kapitel
5.2
Übung zur Erzeugung von Pdf via Postscript
Übung 26 (Lösung S. 122)
Probieren Sie die in Abschnitt 5.1 beschriebene Möglichkeit aus, pdf-Dokumente zu
erzeugen!
5.3
Pdf mit pdfLATEX
Mit Hilfe des Programms pdfLATEX ist es möglich mit LATEX direkt pdf-Dokumente zu erzeugen!
Dies bedeutet, dass statt einer klassischen dvi-Datei direkt ein Dokument im
pdf-Format erzeugt wird!
Interessant ist pdfLATEX vor allen Dingen auch im Zusammenhang mit dem
hyperref-Paket. Diese Paket erlaubt es, im pdf-Dokument Hyperlinks zu definieren und über entsprechende LATEX-Befehle Acrobat-spezifische Befehle abzugeben, die die Gestalt des erzeugten pdf-Dokuments beeinflussen.
Auf diese Möglichkeiten kann an dieser Stelle nicht eingegangen werden, da
dies den Rahmen dieser Einführung in LATEX deutlich sprengen würde.
Allerdings soll kurz die schon in Kapitel 3 angedeutete Möglichkeit beschrieben werden, wie der Anwender zwischen Standard-LATEX und pdfLATEX umschalten kann.
Die Definition des Schalters erfolgt wieder mit Hilfe des Pakets ifthen.
\usepackage{ifthen}
Mit folgenden Präambel-Anweisungen wird nun geprüft, ob es sich um einen
LATEX- oder einen pdfLATEX-Lauf handelt und in Abhängigkeit davon ein Schalter ispdftex gesetzt.
\newboolean{ispdftex}
\ifthenelse{\isundefined{\pdfoutput}}{%
\setboolean{ispdftex}{false}}{%
\setboolean{ispdftex}{true}}
Dabei wird geprüft, ob \pdfoutput definiert ist. Dies ist nur bei einem pdfLATEX-Lauf der Fall.
Anschließend kann in Abhängigkeit vom Wert dieses Schalters agiert werden.
Beispielsweise kann das graphicx-Paket mit der passenden Option geladen
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
78
Ausgewählte LATEX-Kapitel
werden.
\ifthenelse{\boolean{ispdftex}}{%
\usepackage[pdftex]{graphicx}}{%
\usepackage[dvips]{epsfig} }
Das Dokument ist so auf die parallele Verarbeitung zu pdf- und ps-Dokumenten
vorbereitet.
5.4
Übung zur Erzeugung von Pdf via pdfLATEX
Übung 27 (Lösung S. 122)
Probieren Sie die in Abschnitt 5.3 beschriebene Möglichkeit aus, pdf-Dokumente zu
erzeugen! Laden Sie dazu gegebenenfalls das Paket hyperref und Testen Sie dessen Möglichkeiten aus, über die Sie sich mit der entsprechenden Dokumentation informieren.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
79
Kapitel 6
Tabellen und Grafiken fortgeschrittene Themen
In diesem Kapitel sollen weitere nützliche Konstrukte zu den in den Kapiteln
2 und 4 diskutierten Themen vorgestellt werden.
Die betrifft Bereiche wie das Ausrichten von Zahlenkolonnen, das Zusammenfassen mehrerer Zeilen einer Spalte zu einer Zelle, das Setzen gedrehter Tabelleneinträge oder das Setzen textumflossener Grafiken.
Darüber hinaus soll ein kleiner Einblick gegeben werden, wie man sich durch
das Schreiben eigener LATEX-Markros das Leben erleichtern kann.
6.1
Makros für den Tabellensatz
Insbesondere beim Satz von Tabellen kann es, wie wir in den Beispielen gesehen haben, zu sehr unübersichtlichen und unschönen Konstruktionen wie der
folgenden kommen (vgl. Übung 8):
\begin{tabular}{|p{3cm} || >{\centering$}p{3cm}<{\;\mathrm{EUR}$}
| >{\footnotesize\PBS\raggedright\hspace{0pt}}p{5cm} |}
\hline ....
Eine solche unübersichtliche Spaltendefinition ist insbesondere durch die Vielzahl der Klammern sehr fehlerträchtig und im Fehlerfall schwer zu debuggen.
In einem solchen Fall ist es angebracht, sich mit Hilfe von Macros Abkürzungen zu definieren. Wir werden im folgenden in mehreren Beispielen demonstrieren, wie dies möglich ist.
Ausgewählte LATEX-Kapitel
81
Alle in diesem Skript verwendeten Makros sind in einem Style-File skriptdefs.sty zusammengefasst und können auf die übliche Weise in der Präambel durch den Befehl
\usepackage{skriptdefs}
geladen werden. Die Datei skriptdefs.sty ist dazu vorher in einen LATEX
zugänglichen Pfad zu kopieren und auf die in Kapitel 1 beschriebene Weise in
die Datenbasis einzubinden.
Natürlich könnten auch alternativ einzelne Makrodefinitionen direkt in der
Präambel aufgenommen werden.
Um dem Leser die Arbeit mit den Übungen zu erleichtern, ist dem Begleitmaterial ein erweitertes Template-File namens LatexVor2006VorlageAdvanced.tex zugefügt, welches alle notwendigen usepackage-Anweisungen
enthält.
Neue Spaltenoptionen werden mit dem Befehl newcolumntype nach folgender Syntax definiert:
\newcolumntype{<Option>}{Spaltendefinition}
Wir diskutieren zunächst ein einfaches Beispiel:
\newcolumntype{C}{>{$}c<{$}}
\newcolumntype{L}{>{$}l<{$}}
\newcolumntype{R}{>{$}r<{$}}
% Zentiert aber im Mathe-Modus
% linksbündig aber im Mathe-Modus
% rechtsbündig aber im Mathe-Modus
Mit diesen (Präambel- oder Paket-)Anweisungen werden drei neue Spaltenoptionen C, L und R definiert, mit deren Hilfe es möglich ist, Spalten zentriert,
linksbündig und rechtsbündig im mathematischen Modus zu setzen.
Statt
\begin{tabular}{*{3}{>{$}c<{$}}}
.....
für drei zentrierte Spalten im mathematischen Modus kann nun einfacher
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
82
\begin{tabular}{*{3}{C}}
.....
geschrieben werden.
Der Vorteil der obigen Definitionen ist sicherlich noch nicht so eklatant, dass er
der Rede wert wäre. Im nächsten Beispiel verhält es sich schon etwas anders.
Mit
\newcolumntype{v}[1]{%
>{\PBS\raggedright\hspace{0pt}}%
p{#1}%
}
% Typ v für
% Flattersatz rechts
% Argument ist eine Breitenangabe
\newcolumntype{V}[1]{%
% Typ V für
>{\scriptsize\PBS\raggedright\hspace{0pt}}%
% Flattersatz rechts,
% in Größe scriptsize
p{#1}%
% Argument ist eine Breitenangabe
}
\newcolumntype{Y}{%
% Typ Y für tabularx
%
% Flattersatz rechts
>{\small\raggedright\arraybackslash\hspace{0pt}}X}%
werden die Optionen v, V und Y definiert, mit denen sich Spalten im Flattersatz rechts setzen lassen. Die ersten beiden Optionen sind über die p-Option
definiert, die dritte über die für die tabularx-Umgebung gültige X-Option.
Die ersten Optionen können dabei einen Parameter (in diesem Fall die Breite)
aufnehmen. Dies wird durch die eckige Klammer angedeutet, die die Anzahl
der Parameter enthält. Im Rumpf der Definition wird dann der Parameter mit
#Nummer angesprochen. Im obigen Fall gibt es nur einen Parameter. Dieser ist
der, der von der p-Option erwartet wird.
Die obigen Definitionen können nun den Tabellensatz schon deutlicher vereinfachen. So kann beispielsweise die Definition der Tabelle auf Seite 27
\begin{tabular}{>{\PBS\raggedright\hspace{0pt}}p{4cm} %
>{\PBS\raggedright\hspace{0pt}}p{3cm} %
>{\PBS\raggedright\hspace{0pt}}p{4cm}}
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
83
\toprule
Schnitzel und Eisbein .....
durch
\begin{tabular}{v{4cm} v{3cm} v{4cm}}
\toprule
Schnitzel und Eisbein & Fleisch &
Schwein, ist bei Massentierhaltung %
hormonbelastet \\ \addlinespace
Steak, Kalbsschnitzel
und Rouladen
& Fleisch &
Rind, birgt immer %
noch BSE-Gefahr\\
\bottomrule
\end{tabular}
ersetzt werden und liefert ebenfalls:
Schnitzel und
Eisbein
Fleisch
Schwein, ist bei
Massentierhaltung
hormonbelastet
Steak, Kalbsschnitzel
und Rouladen
Fleisch
Rind, birgt immer
noch BSE-Gefahr
6.2
Übungen zu den Makros für den Tabellensatz
Für die Übungen dieses Kapitels muss das Template-File LatexVor2006VorlageAdvanced.tex verwendet werden!
Übung 28 (Lösung S. 122)
Setzen Sie mit Hilfe der V-Option die Tabelle auf Seite 29 neu.
Übung 29 (Lösung S. 123)
Definieren Sie eine neue Spaltenoption, bei die Tabelleneinträge fett, in der Schriftgröße footnotesize und zentriert gesetzt werden.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
84
Setzen Sie damit die Tabelle aus Übung 28 neu.
6.3
Das dcolumn-Paket
Eine häufig auftretende Anwendung für Tabellen ist, besonders im kommerziellen Bereich, das Auflisten von Zahlenkolonnen. Dabei dient es, insbesondere
bei Geldbeträgen der Übersichtlichkeit, wenn diese Zahlen am Komma oder
Dezimalpunkt ausgerichtet sind.
Ein Paket, welches entsprechende Spaltenoptionen bereitstellt ist das dcolumn-Paket.
Das Einbinden dieses Pakets [2] in der Präambel erfolgt mit:
\usepackage{dcolumn}
Das Paket bietet, wie bereits erwähnt, für die tabular-Umgebung Möglichkeiten der Ausrichtung von Zahlen am Dezimalpunkt. Beispielsweise kann die
folgende Tabelle damit gesetzt werden:
22,8
18,078
66,9
4,0
26,0
123,678
−23,78
0,0
0,0
oder die folgende
22·8
18·078
66·9
4·0
26·0
123·678
−23·78
0·0
0·0
Man beachte, dass die Zahlen stets im mathematischen Modus gesetzt werden!
In den obigen Beispielen wurde in der Präambel im ersten Fall ein neuer Spaltentyp d und im zweiten Fall ein neuer Spaltentyp q folgendermaßen vereinbart [14]:
\makeatletter
\newcolumntype{d}[1]{%
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
% Typ d für
Ausgewählte LATEX-Kapitel
85
>{\DC@{.}{,}{#1}}l<{\DC@end}%
%
}
%
\makeatother
%
%
%
%
linksbündig und an Punkt/Komma
ausgerichtete Zahlen
Argument ist die Zahl der
Nachkommastellen
\newcolumntype{q}{D{.}{$\cdot$}{-1}}
Die eigentliche Spaltenoption ist D. Wie bei der Definition von q oben muss
dabei in drei Parametern angegeben werden, welches Trennzeichen bei der
Eingabe benutzt wird (z.B. {.}), welches bei der Ausgabe (z.B. {\cdot\}) und
wieviel Dezimalstellen maximal dargestellt werden sollen (z.B. {-1} für „beliebig“).
So wird mit den Anweisungen
\begin{tabular} {*{3}{D{,}{.}{10}}}
\toprule
22,658
& 4,3450
& 26,0000 \\ \addlinespace
18,078
& 123.678
& -23,7867 \\ \addlinespace
66,9
& 0,0000
& 0,00002 \\
\bottomrule
\end{tabular}
die Tabelle
22.658
18.078
66.9
4.3450
123.678
0.0000
26.0000
−23.7867
0.00002
gesetzt.
Die beiden Eingangsbeispiele wurden mit den Anweisungen
\begin{tabular}{*{3}{d{3}}}
\toprule
22.8
& 4.0
& 26.0 \\ \addlinespace
18.078 & 123.678 & -23.78 \\ \addlinespace
66.9
& 0.0
& 0.0
\\
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
86
\bottomrule
\end{tabular}
und
\begin{tabular} {*{3}q}
\toprule
22.8
& 4.0
& 26.0
18.078
& 123.678 & -23.78
66.9
& 0.0
& 0.0
\bottomrule
\end{tabular}
\\ \addlinespace
\\ \addlinespace
\\
gesetzt.
6.4
Übungen zum dcolumn-Paket
Übung 30 (Lösung S. 123)
Setzen Sie die nachfolgende Tabelle:
2$56
3$45
26$00
18$07
123$60
23$70
66$90
0$00
0$02
8$07
12$60
23$70
6$90
1$00
0$02
Die zulässige maximale Anzahl der Dezimalstellen soll dabei beliebig sein und das
Eingabetrennzeichen soll ein Komma sein!
Übung 31 (Lösung S. 124)
Setzen Sie die nachfolgende Tabelle:
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
Name/Monat
87
Mai
Juni
Juli
Schulz
2$56
3$45
26$00
Müller
18$07
123$60
23$70
Meier
66$90
0$00
0$02
Hund
8$07
12$60
23$70
Katz
6$90
1$00
0$02
Die zulässige maximale Anzahl der Dezimalstellen soll dabei beliebig sein und das
Eingabetrennzeichen soll ein Komma sein!
6.5
Zusammenfassen mehrerer Zeilen
Normalerweise können mehrere, zu einer Zelle zusammengefasste Zeilen einer Spalte mit dem multirow-Paket gesetzt werden [7]. Dieses lädt man durch
Einbinden in der Präambel mit:
\usepackage{multirow}
Allerdings empfiehlt Axel Reichert [14] ein eigenes Kommando
\armultirow{spaltenzahl}{format}{Ausgabetext}
welches, in die Präambel eingebunden, mit der tabular-Umgebung zusammen
arbeitet und besser arbeiten soll als das multirow-Paket.
Dieses Kommando kann in der Präambel 1 durch folgende Anweisungen definiert werden:
\newcommand{\armultirow}[3]{%
%
\multicolumn{#1}{#2}{%
%
\begin{picture}(0,0)%
%
\put(0,0){%
%
\begin{tabular}[t]{@{}#2@{}}%%
#3%
\end{tabular}%
}%
\end{picture}%
}%
1 In
Axel
soll
#1 =
#2 =
#3 =
Reicherts multirow
besser sein, als multirow.sty
Anzahl der Spalten
Art der Spalte (z.B. p{5cm})
Auszugebender Spalteninhalt
dem Style-File skriptdefs.sty des Begleitmaterials ist diese Definition bereits integriert, so dass die obige Definition nicht nochmals in der Präambel aufgenommen werden
muss, wenn man dieses File einbindet.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
88
}%
Ein Beispiel illustriert die Verwendung.
\begin{tabular}{*{3}{v{3cm}}}
\toprule
Text1
& Text2
& Text3
\addlinespace\cmidrule{2-3}
& \multicolumn{2}{>{\scriptsize}l}%
{Die wesentlichen Größen}
\addlinespace\cmidrule{2-3}
Text4
& Text6
& \armultirow{1}{p{6cm}}{Dieser
ist etwas länger und erstreckt sich über mehrere Zeilen
Tabelle}\\ \addlinespace
Text5
& Text7
&
\addlinespace
\bottomrule
\end{tabular}
\\
\\
Text
der
\\
liefert:
Text1
Text2
Text3
Die wesentlichen Größen
Text4
Text6
Text5
Text7
Dieser Text ist etwas länger und
erstreckt sich über mehrere Zeilen der Tabelle
Man beachte, dass die darunter liegenden Zeilen leer bleiben müssen, da es
sonst zu Überlappungen kommt. Hier muss man gegebenenfalls probieren,
wieviel Leerzeilen notwendig sind.
Wir wollen die Verwendung von armultirow an einem weiteren Beispiel illustrieren.
{%
\setlength{\extrarowheight}{5pt}
\begin{tabular}{|v{3cm}|*{3}{v{3cm}}}
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
89
\hline
Fragen:
&
&
\multicolumn{1}{>{\centering}v{3cm}}{Gedicht} %
&
\multicolumn{1}{>{\centering}v{3cm}|}{} \\
\cline{2-4}
& \multicolumn{3}{>{\scriptsize}l|}%
{Eine Strophe geht so:}
\\
\cline{2-4}
woher?
& \armultirow{3}{V{11cm}|}{%
Doch plötzlich wird Minheer van Koek aus seinen Gedanken gerissen.
\newline
Der Schiffschirurgius tritt herein, der Doktor van der Smissen.
\newline
Das ist eine klapperdürre Figur, die Nase voll roter Warzen.
\newline
"‘Nun Wasserfeldscherer"’, spricht van Koek, "‘wie geht’s
meinen lieben Schwarzen?"’}
\\
von wem?
&
&
&
\multicolumn{1}{>{\centering}v{3cm}|}{} \\
&
&
&
\multicolumn{1}{>{\centering}v{3cm}|}{} \\
\hline
\end{tabular}
}
Dies liefert eine Tabelle, bei der über drei Spalten hinweg mehrere Zeilen zusammengefasst wurden:
Fragen:
Gedicht
Eine Strophe geht so:
woher?
von wem?
Doch plötzlich wird Minheer van Koek aus seinen Gedanken gerissen.
Der Schiffschirurgius tritt herein, der Doktor van der Smissen.
Das ist eine klapperdürre Figur, die Nase voll roter Warzen.
„Nun Wasserfeldscherer“, spricht van Koek, „wie geht’s meinen lieben Schwarzen?“
Man beachte bei diesem Beispiel, wie die vertikalen Linien gesetzt wurden.
Dies ist im Fall von armultirow eine besonders knifflige Angelegenheit.
Der Leser ist dazu aufgefordert, einmal mit den verschiedenen Möglichkeiten zu spielen, wie in diesem Beispiel die vertikalen Linien gesetzt werden
können. Auch sollte man einmal die Effekte studieren, die bei einer Veränderung der Zellenbreite für die Gedichtstrophe oder beim Weglassen der multiFachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
90
column-Befehle herauskommen.
6.6
Übungen zum Zusammenfassen
mehrerer Zeilen
Übung 32 (Lösung S. 124)
Setzen Sie eine Tabelle mit folgendem Aussehen:
2.00
2.00
2.00
2.00
2.00
2.00
2.00
2.00
2.00
2.00
2.00
2.00
Nebenstehend sieht man
eine schöne Latte von
Zahlen, die aber leider
wenig Sinn macht, da sie
recht eintönig ist und hier
nur der Illustration dient.
Man könnte meinen der
Autor sei einfallslos.
Aber weit gefehlt!
Übung 33 (Lösung S. 125)
Setzen Sie eine Tabelle mit folgendem Aussehen:
4.00
2.00
2.00
−2.00
0.00
−2.00
2.00
6.7
R1
0
sin( x2 ) dx
Wenn das mal stimmt!
−2.00
4.00
12.00
−2.00
22.00
Gedrehte und gestürzte Tabelleneinträge
Oft findet man bei Tabellen, insbesondere bei Tabellenüberschriften, schräg
gestellte oder um 90 Grad gedrehte Tabelleneinträge. Dies ist insbesondere
dann der Fall, wenn die Spaltenüberschriften viel breiter sind, als die Einträge der Spalten selbst, so dass man Platzprobleme bekommt, wenn man die
Spaltenbreiten an den Breiten der Überschriften ausrichtet.
Gedrehte Tabelleneinträge werden durch Einbinden des rotating-Pakets in der
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
91
Präambel vorbereitet.
\usepackage{rotating}
Man beachte jedoch, dass für die Anzeige PostScript-Treiber nötig sind. Der
Previewer Yap beispielsweise kann die Rotationen nicht darstellen.
Im Folgenden wird nachstehende Definition2 verwendet, die in der Präambel
verankert werden muss:
\newcolumntype{Q}[2]{%
% Typ R für gedrehte Tabelleneinträge
>{\begin{turn}{#1}%
% erster Eintrag #1: Drehwinkel
\begin{minipage}{#2}%
% zweiter Eintrag #2: Breite der minipage
\scriptsize\PBS\raggedright\hspace{0pt}}l%
% linksbündig in scriptsize gesetzt
<{\end{minipage}\end{turn}} % ACHTUNG: PostScript-previewer nötig!
}%
Ein Beispiel illustriert die Verwendung. Dabei wird der multicolumn-Befehl
dazu verwendet, die im tabular-Kopf definierten Einstellungen zu überschreiben.
\begin{tabular}{*{3}{@{}V{3cm}@{}}}
\toprule
Fleisch
&
ist doch gesund &
hoffen wir doch \\
\addlinespace \cmidrule{2-2}
Gemüse
&
\multicolumn{1}{Q{45}{5cm}}{ist viel gesünder}
& das wissen wir \\
\addlinespace \cmidrule{2-3}
Teigwaren &
sind kohlehydratreich& das ist klar!\\
\bottomrule
\end{tabular}
Diese Anweisungen liefern:
2 s.
Style-File skriptdefs.sty
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
ist doch gesund
hoffen wir doch
Teigwaren
das wissen wir
is
Gemüse
tv
ie
lv
ie
lv
ie
lg
es
ün
d
er
Fleisch
92
sind kohlehydratreich
das ist klar!
Solche Rotationen von Tabelleneinträgen eignen sich, wie eingangs bereits erwähnt, vorwiegend zur Gestaltung von Kopfzeilen, wie das folgende Beispiel
zeigt.
{\setlength{\extrarowheight}{4pt}
\begin{tabular} {|p{4cm}|*{3}{D{,}{\$}{-1}|}}
\hline
Name/Monat & \multicolumn{1}{R{45}{1cm}|}{Mai} &%
\multicolumn{1}{R{45}{1cm}|}{Juni} & %
\multicolumn{1}{R{45}{1cm}|}{Juli}
\\\hline
Schulz
& 2,56
& 3,45
& 26,00
\\\hline
Müller
& 18,07 & 123,60 & 23,70
\\\hline
Meier
& 66,90 & 0,00
& 0,02
\\\hline
Hund
& 8,07
& 12,60 & 23,70
\\\hline
Katz
& 6,90
& 1,00
& 0,02\\
\hline
\end{tabular}
}
Ju
li
ni
Ju
M
Name/Monat
ai
Diese Anweisungen liefern:
Schulz
2$56
3$45
26$00
Müller
18$07
123$60
23$70
Meier
66$90
0$00
0$02
Hund
8$07
12$60
23$70
Katz
6$90
1$00
0$02
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
6.8
93
Übungen zu gedrehten Tabelleneinträgen
Übung 34 (Lösung S. 125)
eine Formel
xyz
125
44
x2
0
sin( x2 ) dx
Zahl
abc
Text
R1
Setzen Sie eine Tabelle mit folgendem Aussehen:
Zeichen
?
*
Übung 35 (Lösung S. 126)
Setzen Sie eine Tabelle mit folgendem Aussehen:
n
sin( x2 ) dx
he
ic
R1
Ze
l
ne me
r
Fo
ei
Za
125
hl
xt
Te
xyz
?
0
abc
6.9
44
x2
*
Textumflossene Grafiken
Im vorliegenden Abschnitt verlassen wir jetzt die Gefilde des Tabellensatzes
und kommen zu einer wichtigen Ergänzung der Thematik Grafikeinbindung
aus Kapitel 3.
Ein häufig vorkommendes Problem, insbesondere bei der Integration kleinerer
Grafiken, ist das Umfließenlassen der Grafik mit Text.
Für textumflossene Grafiken können in LATEX die Pakete floatfig und wrapfig
verwendet werden. Diese werden mit
\usepackage{floatfig}
bzw.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
94
\usepackage{wrapfig}
in der Präambel eingebunden.
Die Pakete definieren die Umgebungen floatingfig und wrapfigure mit der
Syntax
\begin{floatingfig}{Breite}
Boxen, Bilder, etc.
\end{floatingfig}
bzw.
\begin{wrapfigure}{Position}{Breite}
Boxen, Bilder, etc.
\end{wrapfigure}
wobei das floatingfig-Paket zusätzlich noch mit dem Befehl \initfloatingfigs
zu Beginn des Dokuments initialisiert werden muss.
Die zu setzenden Objekte werden in der angegebenen Breite entweder links
oder rechts an die Seiten gesetzt. Beim Paket floatingfig erfolgt dies automatisch, bei wrapfigure muss dies im Positionsparameter mit [r] (rechts) oder [l]
(links) angegeben werden.
Der wesentliche Unterschied ist, dass mit floatingfig Gleitobjekte [13] erzeugt
werden (vgl. Abschnitt 3.7) und dass wrapfigure das Objekt fest positioniert.
Wir erläutern die Funktionsweise an Hand eines Beispiels:
\begin{floatingfigure}{5cm}
\fbox{%
\parbox{4.5cm}{%
\scriptsize Dies ist ein Text, der in einer so genannten \textbf{parbox} separat an den Rand
gesetzt wird. Die \textbf{parbox} ist in eine \textbf{floatingfigure}Umgebung gesetzt und mit
einem Rahmen umgeben.
Stattdessen könnte natürlich hier auch ein mit
\textbf{\textbackslash includegraphics}
eingefügtes Bild stehen!
}%
}
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
95
\renewcommand{\captionfont}{\scriptsize}
\caption{Eine Box in einer \textbf{floatingfigure}-Umgebung!}%
\label{dieParbox}
\end{floatingfigure}
1. Abschnitt:
Text Text Text
Text Text Text
Text Text Text
Text Text Text
Text Text Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text.
2. Abschnitt:
Text Text Text
Text Text Text
Text Text Text
Text Text Text
Text Text Text
Text Text Text
Text Text Text
Text Text Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text.
1. Abschnitt: Text Text Text Text
Text Text Text Text Text Text Text
Text Text Text Text Text Text Text
Text Text Text Text Text Text Text
Text Text Text Text Text Text Text
Text Text Text Text Text Text Text
Text Text Text Text Text Text Text
Text Text Text Text Text Text Text
Text Text Text Text.
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Dies ist ein Text, der in einer so
genannten parbox separat an den
Rand gesetzt wird.
Die parbox
ist in eine floatingfigure-Umgebung
gesetzt und mit einem Rahmen umgeben.
Stattdessen könnte natürlich hier
auch ein mit \includegraphics eingefügtes Bild stehen!
Abbildung 6.1: Eine Box in einer floatingfigure-Umgebung!
2. Abschnitt: Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text.
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Bitte beachten Sie, dass die floatingfigure-Umgebung zwischen zwei Absätze
gesetzt werden muss.
Zur Illustration nun das gleiche Beispiel mit einer wrapfigure-Umgebung.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
1. Abschnitt:
Text Text Text
Text Text Text
Text Text Text
Text Text Text
Text Text Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
96
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text.
2. Abschnitt: Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text
\begin{wrapfigure}{l}{5cm}
\fbox{%
\parbox{4.5cm}{%
\scriptsize Dies ist ein Text, der in einer so genannten \textbf{parbox} separat an den Rand
gesetzt wird. Die \textbf{parbox} ist in eine \textbf{wrapfigure}Umgebung gesetzt und mit einem
Rahmen umgeben.
Stattdessen könnte natürlich hier auch ein mit
\textbf{\textbackslash includegraphics}
eingefügtes Bild stehen!
Man beachte, dass man die \textbf{wrapfigure}-Umgebung gegebenenfalls
\emph{von Hand} platzieren muss, falls Sie nicht auf eine Seite passt.
Daher sollte sie nur verwendet werden, wenn das übrige Dokument fertig gesetz ist.
}%
}
\renewcommand{\captionfont}{\scriptsize}
\caption{Eine Box in einer \textbf{wrapfigure}-Umgebung!}%
\label{dieParbox2}
\end{wrapfigure}
Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
97
Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text.
1. Abschnitt: Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text.
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
2. Abschnitt: Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text
Text
Text
Text Text Text Text Text Text Text Text Text Text
Dies ist ein Text, der in einer so
Text Text Text Text Text Text Text Text Text Text
genannten parbox separat an den
Rand gesetzt wird. Die parbox ist in
Text Text Text Text Text Text Text Text Text Text
eine wrapfigure-Umgebung gesetzt
Text Text Text Text Text Text Text Text Text Text
und mit einem Rahmen umgeben.
Stattdessen könnte natürlich hier
Text Text Text Text Text Text Text Text Text Text
auch ein mit \includegraphics einText Text Text Text Text Text Text Text Text Text
gefügtes Bild stehen!
Man beachte, dass man die wrapfiText Text Text Text Text Text Text Text Text Text
gure-Umgebung gegebenenfalls von
Text Text Text Text Text Text Text Text Text Text
Hand platzieren muss, falls Sie nicht
auf eine Seite passt. Daher sollte sie
Text Text Text Text Text Text Text Text Text Text
nur verwendet werden, wenn das
Text Text Text Text Text Text Text Text Text Text
übrige Dokument fertig gesetz ist.
Text Text Text Text Text Text Text Text Text Text
Abbildung 6.2: Eine Box in einer wrapText Text Text Text Text Text Text Text Text Text
figure-Umgebung!
Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text.
Bitte beachten Sie die Hinweise in der Box aus Abbildung 6.2!
6.10
Übungen zu textumflossenen Grafiken
Übung 36 (Lösung S. 126)
Setzen Sie das LATEX-Herz aus Abbildung 3.3 mit Hilfe einer wrapfigure-Umgebung
auf die rechte Seite und lassen Sie das Bild mit einem Text umfließen. Setzen Sie die
Bildunterschrift im footnotesize-Format. Das ganze soll dann etwa so aussehen:
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text.
Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text
auf
Text Text Text Text Text Text Text Text Text Text Text Text Abbildung 6.3: Scharf
LATEX!
Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text.
Übung 37 (Lösung S. 127)
Bearbeiten Sie die Aufgabe aus Übung 36 mit Hilfe einer floatingfigure-Umgebung!
6.11
Mehrere Grafik-Pakete verwenden
Ein Problem bei der Einbindung externer Grafiken sind oft die verschiedenen
Formate. Beispielsweise wurden im vorliegenden Dokument Portable Network
Graphics-Bilder (*.png), Portable Document Format-Bilder (*.pdf) und EncapsuFachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
98
Ausgewählte LATEX-Kapitel
lated PostScript-Bilder (*.eps) verwendet.
Darüber hinaus kommen natürlich oft auch Bilder im Windows-eigenen
(*.wmf)-Format oder im *.gif-, *.tiff- oder Bitmap-Format (*.bmp) vor.
Nicht jeder dvi-Treiber kommt mit jedem Format zurecht. Das graphicx-Paket
muss für die Verarbeitung der verschiedenen Formate mit entsprechenden
Optionen geladen werden, die sich jedoch zum Teil nicht miteinander vertragen.
Eine Möglichkeit, diese Schwierigkeiten zu umgehen ist, sich auf eine Formatgruppe festzulegen.
Im vorliegenden Dokument beispielsweise sollte von der Möglichkeit Gebrauch gemacht werden, sowohl ein *.pdf-Dokument, als auch ein PostScriptDokument zu erstellen. Hierfür wurden die Bilder doppelt, also einerseits im
*.pdf- oder *.png-Format und andererseits im *.eps-Format erstellt. Viele Bildbearbeitungsprogramme erlauben den Export all dieser Formate, so dass dies
im Prinzip kein Problem darstellt.
Mit Hilfe eines in der Präambel definierten Schalters kann dann das Dokument
dann in das gewünschte Format gebracht werden.
Die Definition des Schalters erfolgt dabei auf folgende Weise. Zunächst wird
das Paket ifthen geladen, um den Schalter und Verzweigungen definieren zu
können.
\usepackage{ifthen}
Anschließend wird der Schalter definiert und auf den gewünschten Wahrheitswert gesetzt. Beispielsweise wird durch
\newboolean{istpostscript}
\setboolean{istpostscript}{true}
der Schalter istpostscript definiert und auf true gesetzt.
Anschließend wird in Abhängigkeit von diesem Schalter das graphicx-Paket
mit der passenden Option geladen.
\ifthenelse{\boolean{istpostscript}}{%
\usepackage[dvips]{graphicx}}{%
\usepackage[pdftex]{graphicx} }
Die Figur kann dann, je nachdem, ob ps- oder pdf-Dokumente erstellt werden sollen, was mit der Präambelanweisung setboolean gesteuert wird, auf
folgende Weise gesetzt werden:
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
99
Ausgewählte LATEX-Kapitel
\begin{figure}[ht]
\begin{center}
\ifthenelse{\boolean{istpostscript}}{
\includegraphics[width=3cm, angle=180]{abb/fhlogo.eps}}
{\includegraphics[width=3cm, angle=180]{abb/fhlogo.eps}}
\caption{\emph{Die FH steht Kopf! }\label{dieFHstehtKopf}
\end{center}
\end{figure}
Im vorliegenden Skriptum wurde eine andere Vorgehensweise gewählt um
zwischen der Möglichkeit, Dokumente im *.pdf-Format mit Hilfe von pdfLATEX zu erstellen und mit Hilfe von normalen LATEX-Läufen, zu unterscheiden. Im ersten Fall dürfen dann als Grafikformate *.png- und *.pdf-Formate
verwendet werden, im zweiten Fall sollen *.eps-Grafiken integriert werden,
da Postscript-Dokumente mit dem dvips-Treiber erstellt werden sollen.
Zu diesem Zweck wird mit
\newboolean{ispdftex}
\ifthenelse{\isundefined{\pdfoutput}}{%
\setboolean{ispdftex}{false}}{%
\setboolean{ispdftex}{true}}
zunächst der Schalter ispdftex definiert und auf true gesetzt, falls die Variable
\pdfoutput definiert ist. Dies ist nur der Fall, wenn pdfLATEX verwendet wird.
Ansonsten wird der Schalter auf false gesetzt.
Mit
\ifthenelse{\boolean{ispdftex}}{%
\usepackage[pdftex]{graphicx}
\usepackage[pdftex]{color}}{%
\usepackage[dvips]{epsfig}
wird anschließend das graphicx-Paket mit der Option pdftex geladen, falls
pdfLATEX verwendet wird und das Paket epsfig wenn einer normaler LATEXLauf durchgeführt wird.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
100
Ausgewählte LATEX-Kapitel
Einzufügende Grafiken müssen nun in zwei Formaten, einmal in *.pdf- oder
*.png vorliegen und zum andern in *.eps.
Die Grafiken werden dann beispielsweise folgendermaßen eingebunden:
\ifthenelse{\boolean{ispdftex}}{
\includegraphics[width=3cm, angle=45]{abb/fhlogo.png}}
{\epsfig{figure=abb/fhlogo.eps, width=3cm,angle=45}}
Der Vorteil dieses schreiberischen Mehraufwandes ist der, dass nun keine Veränderungen der Präambel mehr vorgenommen werden müssen, um den Text
einmal in pdfLATEX und dann in LATEX zu setzen.
6.12
Postscript-Schriften verwenden
In Kapitel 4 wurde gezeigt, wie Pakete für freie Postscript-Schriften eingebunden werden. Durch das Paket werden die default-Schriften für die Normalschrift, die serifenlose Schrift und die Typewriterschrift festgelegt.
Es ist jedoch natürlich auch möglich, diese default-Einstellungen im Text zu
ändern, falls dies notwendig erscheint.
Einzelne Zeichensätze können mit den Befehlen
\fontfamily, \fontseries, \fontshape,
\fontsize und \selectfont
definiert und geladen werden.
Beispielsweise setzt die folgende Anweisungsfolge den in { und } gesetzten
Abschnitt in der Schriftfamilie NewCenturySchoolbook (pnc), in der Serie
bold (b) und im Schriftschnitt italic (it) (man beachte dabei, dass nicht alle
Kombinationen definiert sind).
Die Schriftgrad (Fontgröße) wird mit der Angabe von Größe und Durchschuss
definiert. Wegen der freien Skalierbarkeit der PostScript-Schriften kann hier
prinzipiell jeder Wert angegeben werden. Dabei sollte der Durchschuss (Zeilenabstand) etwa das 1.2-fache der Fontgröße betragen.
{%
\fontfamily{pnc}\fontseries{b}\fontshape{n}%
\fontsize{24pt}{28.8pt}
\selectfont
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
101
Ausgewählte LATEX-Kapitel
Dieser Abschnitt ist in der Schrift NewCenturySchoolbook und
in der Serie bold (fett) gesetzt.
Darüber hinaus ist die Schriftgröße deutlich erhöht. Die freie
Skalierbarkeit der Post\-script\--Schrif\-ten macht in dieser Hinsicht
viel möglich.
}%
Dieser
Abschnitt
ist in der Schrift NewCenturySchoolbook und in der Serie bold
(fett) gesetzt.
Darüber hinaus ist die Schriftgröße deutlich erhöht.
Die
freie Skalierbarkeit der Postscript-Schriften macht in dieser
Hinsicht viel möglich.
Man sieht, dass sich sehr große Schriften nicht sehr gut für den Satz von Fließtext eignen, weil LATEX dann Probleme mit dem Randausgleich bekommt.
Hier ein weiteres Beispiel für die Umstellung auf eine andere Schrift.
{%
\fontfamily{pbk}\fontseries{m}\fontshape{it}%
\fontsize{14pt}{18pt}
\selectfont
\textbf{Dieser Abschnitt ist in der Schrift Bookman und
in einem anderen Schriftschnitt gesetzt.}
Darüber hinaus ist die Schriftgröße deutlich erhöht. Die
freie Skalierbarkeit der PostScript-Schriften macht in
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
102
Ausgewählte LATEX-Kapitel
dieser Hinsicht viel möglich.
}%
Dieser Abschnitt ist in der Schrift Bookman und in einem anderen Schriftschnitt gesetzt.
Darüber hinaus ist die Schriftgröße deutlich erhöht. Die freie
Skalierbarkeit der PostScript-Schriften macht in dieser Hinsicht viel möglich.
Da die Definitionen in den Beispielen in { und } gesetzt wurden, wirken sich
die Änderung nur lokal, also nicht auf das ganze Dokument aus.
An dieser Stelle sollte allerdings bemerkt werden, dass von der Möglichkeit
einer solchen Schriftfamilien-Umstellung besser nicht oder nur spärlich Gebrauch gemacht wird. Eine exzessive Schriftartenmischung sieht meist sehr
besch...eiden aus.
Die Umstellung der Schrift kann im Übrigen mit dem \usefont-Befehl vereinfacht werden. Der \usefont-Befehl hat im Wesentlichen die gleichen Parameter wie die Befehle, die in den vorangegangenen Abschnitten verwendet worden sind und setzt automatisch den \selectfont-Befehl zum Laden der Fonts
ab.
Hier ein Beispiel für die Auswahl der Schriftart Times in der Schriftserie medium und dem Schnitt slanted (schräg gestellt):
{%
\fontsize{8}{10}
\usefont{T1}{ptm}{m}{sl}
Ja, dieser Abschnitt ist in der Schriftart \textbf{Times} gesetzt.
Die Buchstabengröße wurde bewusst klein gehalten. Deshalb muss man
auch viel Text zusammenschreiben, um überhaupt mehr als eine Zeile
in einen Abschnitt zu bekommen.
Der Schriftschnitt ist schräg. Ob das schön aussieht, bleibt dem
Leser überlassen!
}%
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
103
Ausgewählte LATEX-Kapitel
Ja, dieser Abschnitt ist in der Schriftart Times gesetzt. Die Buchstabengröße wurde bewusst klein gehalten. Deshalb muss man
auch viel Text zusammenschreiben, um überhaupt mehr als eine Zeile in einen abschnitt zu bekommen.
Der Schriftschnitt ist schräg. Ob das schön aussieht, bleibt dem Leser überlassen!
Will man einzelne Wörter umstellen, so ist es bequemer, sich ein geeignetes
Kommando zu schreiben. In einem Style-File oder in einer Präambel könnte beispielsweise folgendes Kommando definiert sein, um auf die Schriftart
times in der Größe 14 pt mit dem Schnitt Kapitälchen umzustellen.
\newcommand{\totimessc}[1]{
{ \fontsize{14}{18.8}%
\usefont{T1}{ptm}{m}{sc}%
#1 }}
Dies könnte man dann so anwenden:
Dies ist ein ganz normaler Text in Palatino mit Schriftgröße
$12$ pt gesetzt, der der das Wort \totimessc{Nudelholzfirma}
und das Wort \totimessc{Blödsinn} in der Schriftart
\textbf{Times} der Größe $14$ pt enthält.
Dies ist ein ganz normaler Text in Palatino mit Schriftgröße 12 pt gesetzt, der
der das Wort N UDELHOLZFIRMA und das Wort B LÖDSINN in der Schriftart Times der Größe 14 pt enthält.
Man erkennt die Wirkung.
Eine Möglichkeit, die auf das Gleiche hinausläuft, ist die Deklaration eines
neuen Fontkommandos, etwa so:
\DeclareTextFontCommand{\tocourier}{%
\fontsize{14}{18.8}%
\usefont{T1}{pcr}{m}{n}%
}%
Dies definiert ein Kommando \tocourier, welches für sein Textargument lokal
auf Courier umstellt. Hier ein Beispiel für die Verwendung:
Dies ist ein ganz normaler Text in Palatino mit Schriftgröße
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
104
Ausgewählte LATEX-Kapitel
105
$12$ pt gesetzt, der der das Wort \tocourier{Nudelholzfirma}
und das Wort \tocourier{Blödsinn} in der Schriftart
\textbf{Courier} der Größe $14$ pt enthält.
Dies ist ein ganz normaler Text in Palatino mit Schriftgröße 12 pt gesetzt, der
der das Wort Nudelholzfirma und das Wort Blödsinn in der Schriftart Courier der Größe 14 pt enthält.
6.13
Übungen zu PostScript-Schriften
Übung 38 (Lösung S. 128)
Setzen Sie die Tabelle 4.1 so, dass die Einträge zur Schriftart jeweils in der passenden Schriftart erscheinen. Definieren Sie dazu ggf. geeignete neue Fontkommandos.
Das Ergebnis sollte dann der Tabelle 6.1 entsprechen.
Tabelle 6.1: LATEX-Pakete für die PostScript-Schrift-Familien
Paket
Serifenschrift
Sans-Serif-Schrift
TypewriterSchrift
times
Times
Helvetica
Courier
palatino
Palatino
Helvetica
Courier
newcent
NewCenturySchoolbook
AvantGarde
Courier
bookman
Bookman
AvantGarde
Courier
Helvetica
Helvetica
avant
AvantGarde
Übung 39 (Lösung S. 129)
Setzen Sie auf einer zentrierten gerahmten parbox 5 cm hohe fette Frage- und Ausrufungszeichen in Anführungszeichen und in der Schriftart Times. Dies soll dann wie
in Abbildung 6.4 aussehen.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
„?!“
Abbildung 6.4: Ein geschrieenes Fragezeichen
6.14
Mathematische PostScript-Fonts
Normalerweise werden mathematische Symbole in einem zum den Computer-Modern-Fonts (den LATEX-Standard-Fonts) passenden Zeichensatz gesetzt. Und normalerweise empfiehlt es sich, die AMS-Pakete amsmath, amsfonts und amssymb für den Satz mathematischer Symbole zu verwenden.
Zusätzlich kann bei Verwendung von Palatino als Standardschrift (wie in diesem Dokument) mit
\usepackage{mathpple}
das Paket mathpple zur Anpassung der AMS-Symbole an Palatino geladen
werden.
Grundsätzlich müssen die Mathematik-Pakete, wie mathpple und mathptmx
(verwendet Times als grundlegende Schriftart) geladen werden. Es gibt keine
(direkten) Befehle, die Symbole einzeln umschalten. Solche Befehle können
nur in Paketen oder in der Präambel angegeben werden und sind dann für
das ganze Dokument gültig.
Ein Beispiel für die Auswirkung, die das Laden des Pakets mathpple hat:
Die Stammfunktion von $x\sin(x)$ lässt sich mit Hilfe einer
partiellen Integration ermitteln. Es gilt
\begin{equation*}
\int x\sin(x)\,dx = -x\cos(x) - \int (-\cos(x))\,dx
\end{equation*}
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
106
Ausgewählte LATEX-Kapitel
107
damit erhält man dann:
{%
\fontsize{24pt}{28pt}\selectfont
\begin{equation*}
\int x\sin(x)\,dx = -x\cos(x) + \sin(x)
\end{equation*}
}%
was auch stimmt!
Die Stammfunktion von x sin( x) lässt sich mit Hilfe einer partiellen Integration ermitteln. Es gilt
Z
x sin( x) dx = − x cos( x) −
Z
(− cos( x)) dx
damit erhält man dann:
Z
x sin( x) dx = − x cos( x) + sin( x)
was auch stimmt!
Es ist interessant zu beobachten, welche unterschiedlichen Auswirkungen diese Anweisungsfolge hat, wenn das Paket mathpple zugeladen wird, wie im
vorliegenden Fall, oder wenn nicht. Im letzteren Fall wird durch die Skalierungsangabe der am besten passende Computer-Modern-Font gesucht, im
ersten Fall wird (fast) wie gewünscht skaliert.
6.15
Übung zu mathematischen PostScript-Fonts
Übung 40 (Lösung S. 129)
Probieren Sie die Auswirkungen aus, die das Laden bzw. Nicht-Laden des mathpple
oder mathptmx-Pakets auf die obige mathematische Passage hat.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Kapitel 7
Lösungen zu den Übungen
In diesem Kapitel sind die Lösungen zu den im Skriptum vorgeschlagenen
Übungsaufgaben zusammengefasst.
Lösung zu Übung 1, S. 17
Zunächst sucht man url.sty auf dem Dante-Sever mit Hilfe der dortigen
Suchmaschine.
Dann fügt man das Style-File in texmf\tex\latex\etc ein oder man kreiert
ein eigenes Verzeichnis texmf\tex\latex\url und fügt das File dort ein.
Anschließend frischt man die TEX-Datenbasis je nach System auf. Bei MiKTeXSystemen unter Windows muss man wahrscheinlich den den initex-Befehl
initexmf--update-fndb unter DOS (Menü Start - Ausführen) ausführen.
Dann fügt man die Zeile
\usepackage{url}
in die Präambel seines LATEX-Dokumentes ein.
Dann schreibt man folgenden Text in eine eigene *.tex-Datei:
Mein Name ist Manfred Mustermann. Meine e-mail-Adresse ist
\url{[email protected]}.
Die Adresse meiner Homepage ist
\url{http://www.t-online/home/manni_mustermannhome.de} und Sie sollten sich diese wunderbare
Homepage dringend mal anschauen.
Ausgewählte LATEX-Kapitel
Anschließend ist diese Datei mit dem Befehl
\input{<name>.tex}
im Dokumentbereich des main-Files einzubinden und es kann der LATEX-Lauf
durchgeführt werden.
Lösung zu Übung 2, S. 18
Ein Suchlauf in dem pdf-File de-tex-faq.pdf nach dem Stichwort trademark
führt auf eine Frage zu dem Thema.
Man erhält die Antwort, dass es einen Befehl \texttrademark im Paket
textcomp gibt, welcher das Gewünschte leistet. Das entsprechende Style ist
bereits in den Template-Files eingebunden, so dass an dieser Stelle nichts mehr
zu tun ist.
Man bindet dann auf die in Übung 1 beschriebene Weise eine Datei mit folgenden LATEX-Anweisungen ein:
{
WürgFürWindoofs\texttrademark{} ist ein einbetrogenes
Warenzeichen der Billy the Gates Time Destruction
Company Inc.
}
Lösung zu Übung 3, S. 23
\[\left(
\begin{array}{l r}
-2024
&
204 \\
1
&
-23006 \\
0
&
-1
\\
25561
&
-255
\end{array}
\right)\]
Lösung zu Übung 4, S. 23
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
109
Ausgewählte LATEX-Kapitel
\begin{tabular}{l
\toprule
Der Kommentar
&
\cmidrule{2-3}
Kosten
&
Gebühren
&
Daten
&
Werte
&
\addlinespace
\bottomrule
\end{tabular}
110
c c}
Zahlen
$2.00$
$5.30$
$1.33$
$0.00$
&
Fakten
\\ \addlinespace
&
$14$
&
$12$
&
$13.3$
& unbekannt \\
\\ \addlinespace
\\ \addlinespace
\\ \addlinespace
Zu beachten ist, dass die Spalten zwei und drei auf Grund der Spaltendefinition im mathematischen Modus gesetzt werden. Daher muss dieser durch
zusätzliche $ $ für die Texteinträge wieder einzeln aufgehoben werden.
Lösung zu Übung 5, S. 34
\begin{tabular}{>{\scriptsize}p{4cm} *{2}{>{$}p{3cm}<{$}}}
\toprule
Der Kommentar & $Zahlen$ & $Fakten$
\\ \addlinespace
\cmidrule{2-3}
Kosten
& 2.00
& 14
\\ \addlinespace
Gebühren
& 5.30
& 12
\\ \addlinespace
Daten
& 1.33
& 13.3
\\ \addlinespace
Werte
& 0.00
& $\scriptsize unbekannnt$\\
\addlinespace
\bottomrule
\end{tabular}
Lösung zu Übung 6, S. 34
{\setlength{\extrarowheight}{4pt}
\begin{tabular}{|>{\scriptsize}p{4cm} *{2}{|>{$}p{2cm}<{$}}|}
\hline
Der Kommentar & $\scriptsize Zahlen$ & $ \scriptsize Fakten$
\\
\cline{2-3}
Kosten
& 2.00
& 14
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
\\
Ausgewählte LATEX-Kapitel
\hline
Gebühren
& 5.30
\hline
Daten
& 1.33
\hline
Werte
& 0.00
kannnt$ \\
\hline
\end{tabular}
}
111
& 12
\\
& 13.3
\\
& $\scriptsize unbe-
Lösung zu Übung 7, S. 35
{\setlength{\extrarowheight}{4pt}
\begin{tabular}{|p{5cm} |
>{\centering$\pm\;}p{3cm}<{\;\mathrm{mm}$} |%
>{$}p{3cm}<{$} |}
\hline
Der Kommentar
& $Zahlen$
& $ Fakten$
\\
\cline{2-3}
Kosten
& 2.00
& 14
\\ \hline
Gebühren
& 5.30
& 12
\\ \hline
Daten
& 1.33
& 13.3
\\ \hline
Werte
& 0.00
& $unbekannnt$ \\ \hline
\end{tabular}
}
Lösung zu Übung 8, S. 35
{\setlength{\extrarowheight}{4pt}
\begin{tabular}{|p{3cm} || >{\centering$}p{3cm}<{\;\mathrm{EUR}$}
| >{\footnotesize\PBS\raggedright\hspace{0pt}}p{5cm} |}
\hline
Artikel
& $Preis/$
& {\nomalsize Besonderheit}
\\
\hline\hline
Kopfsalat
&
1,49
&
\\
Tomaten
&
2,99
& Kilopreis, Herkunftsland Italien \\
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
Apfelsinen
&
ka
\\
\hline
Ananas
&
na nass macht,
112
3,99
&
1,5-Kilo Netz, Navelinas
Herkunftsland Südafri-
2,99
&
"‘Wenn hier einer An-
%
dann bin ich das!"’
%
%
Preisfrage: woher stammt die-
ses %
Zitat?
Preis: eine Ananas!
\hline
\end{tabular}
}
\\
Lösung zu Übung 9, S. 39
{\setlength{\extrarowheight}{4pt}
\begin{tabular} {|p{3cm}|*{3}{>{\PBS\raggedleft\hspace{0pt}}p{3cm}<{\$}|}}
\hline
Name/Monat & \multicolumn{1}{c|}{Mai} &
\multicolumn{1}{c|}{Juni} &
\multicolumn{1}{c|}{Juli}
\\\hline
Schulz
& 2,56
& 3,45
& 26,00
\\\hline
Müller
& 18,07
& 123,60
& 23,70
\\\hline
Meier
& 66,90
& 0,00
& 0,02
\\\hline
Hund
& 8,07
& 12,60
& 23,70
\\\hline
Katz
& 6,90
& 1,00
& 0,02
\\\hline
\end{tabular}
}
Lösung zu Übung 10, S. 39
{\setlength{\extrarowheight}{4pt}
\begin{tabular}{|*{3}{>{\PBS\raggedright\hspace{0pt}}p{4cm}}|}
\hline
Schönes
& Fräulein
& darf ich’s \\
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
wagen,
& mein
& Geleit
\\
ihr
& anzutragen
& !
\\\hline
\multicolumn{3}{|l|}{Bin weder Fräulein, weder schön,} \\\hline
\multicolumn{1}{|l}{kann ungeleit} & \multicolumn{2}{|r|}{nach Hause geh’n!}\\
\hline
\end{tabular}
}
Lösung zu Übung 11, S. 43
\begin{turn}{-45}
\begin{tabular}%
{*{3}{@{}>{\scriptsize\PBS\raggedright\hspace{0pt}}p{2cm}@{}}}
\toprule
Schnitzel
&
Fleisch
&
Schwein \\\addlinespace
\cmidrule(r){2-2}
Steak
&
Fleisch
&
Rind
\\\addlinespace
\cmidrule(r){2-3}
Pop Corn
&
Getreide
&
Mais
\\
\bottomrule
\end{tabular}
\end{turn}
Lösung zu Übung 12, S. 43
\begin{sidewaystable}
\centering
\caption{Eine gedrehte Tabelle}\label{einlabel}
\begin{tabular}%
{*{3}{@{}>{\scriptsize\PBS\raggedright\hspace{0pt}}p{2cm}@{}}}
\toprule
Schnitzel
&
Fleisch
&
Schwein \\\addlinespace
\cmidrule(r){2-2}
Steak
&
Fleisch
&
Rind
\\\addlinespace
\cmidrule(r){2-3}
Pop Corn
&
Getreide
&
Mais
\\
\bottomrule
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
113
Ausgewählte LATEX-Kapitel
\end{tabular}
\end{sidewaystable}
Lösung zu Übung 13, S. 46
\begin{tabularx}{\linewidth}%
{*{5}{>{\small\raggedright\arraybackslash\hspace{0pt}}X}}
\toprule
Schnitzel &
Fleisch
&
Schwein & gut
& ungesund
\\
\addlinespace
\cmidrule(r){2-2}
Steak
&
Fleisch
&
Rind
& prima & eiweißhaltig \\
\addlinespace
\cmidrule(r){2-3}
Pop Corn
&
Getreide &
Mais
& lecker & kalorisch
\\
\bottomrule
\end{tabularx}
Lösung zu Übung 14, S. 46
{\setlength{\extrarowheight}{4pt}
\begin{tabularx}{\linewidth}%
{*{6}{|>{\small\raggedright\arraybackslash\hspace{0pt}}X}|}
\hline
1
& 66
& -11
& Zahl
& Text & langer Text \\
\hline
Und
& nach
& einer
& Myrthenlaube & führt & er
\\
\hline
des
& Alkalden & Tochter. & Pauken
& und
& Trommettenjubel\\
\hline
klingt & herunter & von
& dem
& Schlosse. & \\
\hline
\end{tabularx}
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
114
Ausgewählte LATEX-Kapitel
}
Lösung zu Übung 15, S. 52
\setlongtables
\begin{center}
\setlength{\extrarowheight}{4pt}
\begin{longtable}
{|>{\PBS\centering\hspace{0pt}$}p{1.5cm}<{$}|
>{\PBS\centering\hspace{0pt}$}p{2cm}<{$}|
>{\PBS\centering\hspace{0pt}$}p{5cm}<{$}|}
\hline
$Zahlen$ & $Quadrate$ & $dritte Potenzen$ %
\\\hline\hline\endfirsthead\hline
$Zahlen$ & $Quadrate$ & $dritte Potenzen$ %
\\\hline\hline\endhead
\multicolumn{3}{|r|}
{\emph{Fortsetzung auf der nächsten Seite}}
\\\hline \endfoot
\multicolumn{3}{|r|}
{\emph{Ende der Tabelle}}
\\\hline \endlastfoot
%\rule{1.5cm}{0pt} & \rule{2cm}{0pt} & \rule{5cm}{0pt} \kill
1
&
1
& 1
\\\hline
2
&
4
& 8
\\\hline
3
&
9
& 27
\\\hline
4
&
16
& 64
\\\hline
....
100 &
10000 & 1000000\\\hline
\end{longtable}
\end{center}
oder
\setlongtables
\begin{center}
\setlength{\extrarowheight}{4pt}
\begin{longtable}
{|>{$}p{1.5cm}<{$}|>{$}p{2cm}<{$}|>{$}p{5cm}<{$}|}
\hline
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
115
Ausgewählte LATEX-Kapitel
$Zahlen$ & $Quadrate$ & $dritte Potenzen$ %
\\\hline\hline\endfirsthead\hline
$Zahlen$ & $Quadrate$ & $dritte Potenzen$ %
\\\hline\hline\endhead
\multicolumn{3}{|r|}
{\emph{Fortsetzung auf der nächsten Seite}}
\\\hline \endfoot
\multicolumn{3}{|r|}
{\emph{Ende der Tabelle}}
\\\hline \endlastfoot
\rule{1.5cm}{0pt} & \rule{2cm}{0pt} & \rule{5cm}{0pt} \kill
1
&
1
& 1
\\\hline
2
&
4
& 8
\\\hline
3
&
9
& 27
\\\hline
4
&
16
& 64
\\\hline
....
100 &
10000 & 1000000\\\hline
\end{longtable}
\end{center}
Lösung zu Übung 16, S. 53
\setlongtables
\begin{center}
\setlength{\extrarowheight}{4pt}
\begin{longtable}{|>{$}c<{$}|>{$}c<{$}|}
\hline
\multicolumn{2}{|c|}{\emph{Ableitungstabelle}}
\\\hline %
x^n & $Ableitung$
\\\hline\hline\endfirsthead\hline
x^n & $Ableitung$ %
\\\hline\hline\endhead
\multicolumn{2}{|C|}{\cdots}
\\\hline \endfoot
\multicolumn{2}{|r|}{\emph{Ende der Ableitungstafel}}
\\\hline \endlastfoot
1
& 0
\\\hline
x
& 1
\\\hline
x^2 & 2x
\\\hline
x^3 & 3x^2
\\\hline
x^4 & 4x^3
\\\hline
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
116
Ausgewählte LATEX-Kapitel
x^5 & 5x^4
\\\hline
x^6 & 6x^5
\\\hline
x^7 & 7x^6
\\\hline
x^8 & 8x^7
\\\hline
x^9 & 9x^8
\\\hline
x^{10} & 10x^9
\\\hline
\multicolumn{2}{|c|}{\emph{$\cdots$}}\\\hline
x^{27} & 27x^{26}\\\hline
x^{28} & 28x^{27}\\\hline
x^{29} & 29x^{28}\\\hline
x^{30} & 30x^{29}\\\hline
\end{longtable}
\end{center}
Lösung zu Übung 17, S. 63
Bei Verwendung von pdfLATEX:
\begin{figure}[ht]
\begin{center}
\includegraphics[width=7cm, angle=180]{abb/fhlogo.png}
\caption{\emph{Die FH steht Kopf}}\label{FHstehtKopf}
\end{center}
\end{figure}
Verwendet man die Template-Files und den dort definierten Schalter, so kann
mit diesem Schalter die Grafik mit dem passenden Format gesetzt werden.
Das Dokument lässt sich dann mit LATEX und mit pdfLATEX gleichermaßen bearbeiten.
\begin{figure}[ht]
\begin{center}
\ifthenelse{\boolean{ispdftex}}{
\includegraphics[width=7cm, angle=180]{abb/fhlogo.png}}
{\epsfig{figure=abb/fhlogo.eps, width=7cm, angle=180}}
\caption{\emph{Die FH steht Kopf}}\label{FHstehtKopf}
\end{center}
\end{figure}
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
117
Ausgewählte LATEX-Kapitel
Lösung zu Übung 18, S. 63
Bei Verwendung von pdfLATEX:
\begin{figure}[ht]
\begin{center}
\includegraphics[width=4cm]{abb/scharfaufLatex.png}
\caption{Scharf auf \LaTeX{}!}\label{schrfLatex}
\end{center}
\end{figure}
Verwendet man die Template-Files und den dort definierten Schalter, so kann
mit diesem Schalter die Grafik mit dem passenden Format gesetzt werden.
Das Dokument lässt sich dann mit LATEX und mit pdfLATEX gleichermaßen bearbeiten.
\begin{figure}[ht]
\begin{center}
\ifthenelse{\boolean{ispdftex}}{
\includegraphics[width=4cm]{abb/scharfaufLatex.png}}
{\epsfig{figure=abb/scharfaufLatex.eps, width=4cm}}
\caption{Scharf auf \LaTeX{}!}\label{schrfLatex}
\end{center}
\end{figure}
Lösung zu Übung 19, S. 65
{%
\captionstyle{hang}
\renewcommand{\captionfont}{\bfseries\scriptsize}
\begin{figure}[ht]
\begin{center}
\ifthenelse{\boolean{ispdftex}}{
\includegraphics[width=6cm]{abb/scharfaufLatex.png}}
{\epsfig{figure=abb/scharfaufLatex.eps, width=6cm}}
\caption{Scharf auf \LaTeX{}! %
Dies könnte mißverstanden werden. Aber hier handelt %
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
118
Ausgewählte LATEX-Kapitel
es sich um das einmalige%
Textsatzprogramm!}\label{schrfLatex2}
\end{center}
\end{figure}
}%
Lösung zu Übung 20, S. 67
{%
\captionstyle{hang}
\renewcommand{\captionfont}{\bfseries\scriptsize}
\begin{figure}
\begin{minipage}[b]{0.5\textwidth}
\begin{center}
\ifthenelse{\boolean{ispdftex}}{
\includegraphics[width=7cm, angle=0, origin=c]{abb/fhlogo.png}}
{\epsfig{figure=abb/fhlogo.eps, width=7cm, angle=0, origin=c}}
\caption{FH-Logo korrekt}\label{fhlog10}
\end{center}
\end{minipage}
\begin{minipage}[b]{0.5\textwidth}
\begin{center}
\ifthenelse{\boolean{ispdftex}}{
\includegraphics[width=7cm, angle=90, origin=c]{abb/fhlogo.png}}
{\epsfig{figure=abb/fhlogo.eps, width=7cm, angle=90, origin=c}}
\caption{FH-Logoum 90 Grad gedreht}\label{fhlog11}
\end{center}
\end{minipage}
\vspace{2\baselineskip}
\begin{minipage}[b]{0.5\textwidth}
\begin{center}
\ifthenelse{\boolean{ispdftex}}{
\includegraphics[width=7cm, angle=180, origin=c]{abb/fhlogo.png}}
{\epsfig{figure=abb/fhlogo.eps, width=7cm, angle=180, origin=c}}
\caption{FH-Logo um 180 Grad gedreht}\label{fhlog12}
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
119
Ausgewählte LATEX-Kapitel
\end{center}
\end{minipage}
\begin{minipage}[b]{0.5\textwidth}
\begin{center}
\ifthenelse{\boolean{ispdftex}}{
\includegraphics[width=7cm, angle=270, origin=c]{abb/fhlogo.png}}
{\epsfig{figure=abb/fhlogo.eps, width=7cm, angle=270, origin=c}}
\caption{FH-Logo um 270 Grad gedreht}\label{fhlog13}
\end{center}
\end{minipage}
\end{figure}
}%
Lösung zu Übung 21, S. 71
In der Präambel ist das Bookman-Paket mit \usepackage{bookman} zu laden. Ggf. müssen andere Ladebefehle für Schriftpakete auskommentiert werden.
\begin{table}[ht]
\caption{\LaTeX{}-Pakete für die PostScript-Schrift-Familien}
\begin{tabular}{>{\PBS\raggedright\hspace{0pt}}p{2.0cm}
>{\PBS\raggedright\hspace{0pt}}p{5cm}
>{\PBS\raggedright\hspace{0pt}}p{2.5cm}
>{\PBS\raggedright\hspace{0pt}}p{3cm} }
\toprule
Paket &
Serifenschrift & Sans-Serif-Schrift & TypewriterSchrift \\
\addlinespace\hline \\
times
&
Times
& Helvetica
& Courier \\
\addlinespace
palatino &
Palatino
& Helvetica
& Courier \\
\addlinespace
newcent
&
NewCenturySchoolbook & AvantGarde
& Courier \\
\addlinespace
bookman
&
Bookman
& AvantGarde
& Courier \\
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
120
Ausgewählte LATEX-Kapitel
\addlinespace
helvet
&
ca
&
\addlinespace
avant
&
de
&
\bottomrule
\end{tabular}
\end{table}
121
& Helveti\\
& AvantGar\\
Lösung zu Übung 22, S. 71
In der Präambel ist das Paket mit \usepackage{<Paketname>} zu laden.
Ggf. müssen andere Ladebefehle für Schriftpakete auskommentiert werden
(vgl. hierzu Übung 21).
Lösung zu Übung 23, S. 75
Ich habe das \ding{204}, \ding{205}, \ding{206} mal gesagt und
wir haben das Ding doch auf \ding{164} und Nieren geprüft.
Allerdings \Pisymbol{psy}{36} kein Grund, das von \Pisymbol{psy}{97}
bis \Pisymbol{psy}{119} noch mal durchzukauen.
Es \Pisymbol{psy}{210}eicht!
Lösung zu Übung 24, S. 76
\begin{center}
\begin{tabular}{ccccc}
\toprule
\ding{161} & \ding{162}
\addlinespace
\ding{166} & \ding{167}
\addlinespace
\ding{171} & \ding{172}
\addlinespace
\ding{176} & \ding{177}
& \ding{163} & \ding{164} & \ding{165}\\
& \ding{168} & \ding{169} & \ding{170}\\
& \ding{173} & \ding{174} & \ding{175}\\
& \ding{178} & \ding{179} & \ding{180}\\
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
122
\bottomrule
\end{tabular}
\end{center}
Lösung zu Übung 25, S. 76
\begin{dingautolist}{182}
\item Denk’ ich an Deutschland in der Nacht
\item so bin ich um den Schlaf gebracht.
\item Ich kann nicht mehr die Augen schließen,
\begin{dingautolist}{172}
\item und meine heißen Tränen fließen.
\item Nach Deutschland lechzst ich nicht so sehr,
\item wenn nicht die Mutter dorten wär.
\end{dingautolist}
\item Der deutsche Geist wird nicht verderben,
\item jedoch die alte Frau kann sterben!
\end{dingautolist}
Lösung zu Übung 26, S. 78
Da der Leser probieren soll, kann an dieser Stelle keine Lösung angegeben
werden.
Lösung zu Übung 27, S. 79
Das Paket hyperref läd man mit \usepackage{hyperref}.
Die zugehörige Dokumentation findet man im Begleitmaterial in der Datei
manual.pdf.
Lösung zu Übung 28, S. 83
\begin{tabular}{*{4}{@{}V{3cm}@{}}}
\toprule
Schnitzel
&
Fleisch
&
Schwein
\cmidrule{3-4}
Steak
&
Fleisch
&
Rind
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
&
gut\\ \addlinespace
&
prima\\\addlinespace
Ausgewählte LATEX-Kapitel
\cmidrule{1-4}
Brötchen
&
Getreide
&
Weizen
& schmeckt\\ \addlinespace
\cmidrule{3-4}
Pop Corn
&
Getreide
&
Mais
\bottomrule
\end{tabular}
123
&
lecker\\
Lösung zu Übung 29, S. 83
\newcolumntype{Z}[1]{%
% Typ Z für
>{\bfseries\footnotesize\PBS\centering\hspace{0pt}}%
% fett, zentriert und
% in Größe footnotesize
p{#1}%
% Argument ist eine Breitenangabe
}
\begin{tabular}{*{4}{@{}Z{3cm}@{}}}
\toprule
Schnitzel
&
Fleisch
&
Schwein
\cmidrule{3-4}
Steak
&
Fleisch
&
Rind
\cmidrule{1-4}
Brötchen
&
Getreide
&
Weizen
& schmeckt\\ \addlinespace
\cmidrule{3-4}
Pop Corn
&
Getreide
&
Mais
\bottomrule
\end{tabular}
Lösung zu Übung 30, S. 86
{\setlength{\extrarowheight}{4pt}
\begin{tabular} {|*{3}{D{,}{\$}{-1}|}}
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
&
gut\\ \addlinespace
&
prima\\\addlinespace
&
lecker\\
Ausgewählte LATEX-Kapitel
\hline
2,56
& 3,45
18,07 & 123,60
66,90 & 0,00
8,07
& 12,60
6,90
& 1,00
\hline
\end{tabular}
}
&
&
&
&
&
26,00
23,70
0,02
23,70
0,02
124
\\\hline
\\\hline
\\\hline
\\\hline
\\
Lösung zu Übung 31, S. 86
{\setlength{\extrarowheight}{4pt}
\begin{tabular} {|p{4cm}|*{3}{D{,}{\$}{-1}|}}
\hline
Name/Monat
& $Mai$
&
$Juni$
& $Juli$
Schulz
& 2,56
& 3,45
& 26,00
Müller
& 18,07
& 123,60
& 23,70
Meier
& 66,90
& 0,00
& 0,02
Hund
& 8,07
& 12,60
& 23,70
Katz
& 6,90
& 1,00
& 0,02
\hline
\end{tabular}
}
\\\hline
\\\hline
\\\hline
\\\hline
\\\hline
\\
Lösung zu Übung 32, S. 90
{\setlength{\extrarowheight}{4pt}
\begin{tabular} {|*{2}{D{.}{.}{-1}}| l |}
\hline
2.00 & 2.00 & \armultirow{1}{V{3.5cm}|}{Nebenstehend sieht %
man eine schöne Latte von Zahlen, die aber leider wenig Sinn macht, %
da sie recht eintönig ist und hier nur der Illustration dient.\\
Man könnte meinen der Autor sei einfallslos.\\
Aber weit gefehlt!%
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
} \\\cline{1-2}
2.00 & 2.00 &
2.00 & 2.00 &
2.00 & 2.00 &
2.00 & 2.00 &
2.00 & 2.00 &
\end{tabular}
}
\\\cline{1-2}
\\\cline{1-2}
\\\cline{1-2}
\\\cline{1-2}
\\\hline
Lösung zu Übung 33, S. 90
{\setlength{\extrarowheight}{4pt}
\begin{tabular} {|L|c|L|}
\hline 2.00 & \armultirow{1}{v{4cm}|}{ \vspace{2ex}
\centering $\int\limits_0^1 \sin(x^2)\,dx$\\
Wenn das mal stimmt!%
}
& 4.00
\\\cline{1-1}\cline{3-3}
2.00
&
& -2.00
\\\cline{1-1}\cline{3-3}
-2.00 &
& 4.00
\\\cline{1-1}\cline{3-3}
0.00
&
& 12.00
\\\cline{1-1}\cline{3-3}
-2.00 &
& -2.00
\\\cline{1-1}\cline{3-3}
2.00
&
& 22.00
\\\hline
\end{tabular}
}
Lösung zu Übung 34, S. 93
{\setlength{\extrarowheight}{4pt}
\begin{tabular} {|l|l|l|l|}
\hline
Text & Zahl & eine Formel & Zeichen \\\hline
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
125
Ausgewählte LATEX-Kapitel
xyz
126
& $125$
& \multicolumn{1}{Q{90}{2cm}|}
{$\int\limits_0^1 \sin(x^2)\,dx$} & ? \\\hline
\multicolumn{1}{|Q{90}{1cm}|}{abc} & $44$ & $x^2$ & * \\\hline
\end{tabular}
}
Lösung zu Übung 35, S. 93
{\setlength{\extrarowheight}{4pt}
\begin{tabular} {|l|l|l|l|}
\hline
\multicolumn{1}{|Q{-45}{1cm}|}{Text}
& \multicolumn{1}{Q{-45}{1cm}|}{Zahl}%
& \multicolumn{1}{Q{-45}{1cm}|}{eine Formel} &
\multicolumn{1}{Q{-45}{1cm}|}{Zeichen} \\\hline
xyz & $125$ & $\int\limits_0^1 \sin(x^2)\,dx$ & ? \\\hline
abc & $44$ & $x^2$
& * \\\hline
\end{tabular}
}
Lösung zu Übung 36, S. 97
Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text Text
\begin{wrapfigure}{r}{4.5cm}
\renewcommand{\captionfont}{\footnotesize}
\captionstyle{hang}
\ifthenelse{\boolean{ispdftex}}{
\includegraphics[width=4cm]{abb/scharfaufLatex.png}}
{\epsfig{figure=abb/scharfaufLatex.eps, width=4cm}}
\caption{Scharf auf \LaTeX{}!}\label{schrfLatexwrapue1}
\end{wrapfigure}
Text Text Text Text Text Text Text Text Text Text Text Text
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text Text
Ausgewählte LATEX-Kapitel
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
127
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text.
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text.
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Lösung zu Übung 37, S. 98
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
Text Text
Text Text
Text Text
Text Text
%Absatz!!
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
128
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text.
\begin{floatingfigure}{4.5cm}
\renewcommand{\captionfont}{\footnotesize}
\captionstyle{hang}
\ifthenelse{\boolean{ispdftex}}{
\includegraphics[width=4cm]{abb/scharfaufLatex.png}}
{\epsfig{figure=abb/scharfaufLatex.eps, width=4cm}}
\caption{Scharf auf \LaTeX{}!}\label{schrfLatexwrap}
\end{floatingfigure}
Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text Text Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text
Text.
Lösung zu Übung 38, S. 105
\begin{table}[ht]
\caption{\LaTeX{}-Pakete für die PostScript-Schrift-Familien}
\begin{tabular}{v{2.5cm} v{5cm} v{3.5cm} >{\ttfamily}v{3cm} }
\toprule
Paket &
Serifenschrift & Sans-Serif-Schrift
& Typewriter- Schrift \\\addlinespace
\hline \\
\totimes{\bfseries times}
&
\totimes{Times}
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
& \tohelvet{Helvetica}
& Courier \\\addlinespace
{\bfseries palatino}
&
Palatino
& \tohelvet{Helvetica}
& Courier \\\addlinespace
\tonewcent{\textbf{newcent}} &
NewCenturySchoolbook
& \toavant{AvantGarde}
& Courier \\\addlinespace
\tobook{\bfseries bookman}
&
\tobook{Bookman}
& \toavant{AvantGarde}
& Courier \\\addlinespace
\tohelvet{\bfseries Helvetica}&
& \tohelvet{Helvetica}
&
\\\addlinespace
\toavant{\bfseries avant}
&
& \toavant{AvantGarde}
&
\\
\bottomrule
\end{tabular}
\end{table}
Lösung zu Übung 39, S. 105
\begin{figure}
\begin{center}
\fbox{%
\parbox{12cm}{
\centering
\vspace{1cm}
{%
\fontsize{5cm}{6cm}
\usefont{T1}{ptm}{b}{n}
"‘?!"’
}% Ende Zeichenbereich
\vspace{1cm}
}% Ende parbox
}% Ende fbox
\caption{Ein geschrieenes Fragezeichen}\label{Fragezeichen}
\end{center}
\end{figure}
Lösung zu Übung 40, S. 107
Hier kann keine Lösung angegeben werden, da der Leser die mathematischen
Fonts ausprobieren sollte.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
129
Anhang A
Pi-Font-Tabellen
A.1
Die Zapf-Dingbats-Tabelle
Tabelle A.1: Zapf-Dingbats-Tabelle
Code
Zeichen
Code
Zeichen
Code
Zeichen
Code
Zeichen
Code
Zeichen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
✁
34
✂
35
✃
36
✄
37
☎
38
✆
39
✇
40
✈
41
✉
42
☛
43
☞
44
✌
45
✍
46
✎
47
✏
48
✐
49
✑
50
✒
51
✓
52
✔
53
✕
54
✖
55
✗
56
✘
57
✙
58
✚
59
✛
60
✜
61
✝
62
✞
63
✟
64
✠
65
✡
66
✢
67
✣
68
✤
69
✥
70
✦
71
✭
72
★
73
✩
74
✪
75
✫
76
✬
77
✭
78
✮
79
✯
80
✰
Fortsetzung auf der nächsten Seite
Ausgewählte LATEX-Kapitel
131
81
✸
82
✲
83
✳
84
✴
85
✵
86
✶
87
✷
88
✸
89
✹
90
✺
91
❃
92
✼
93
✽
94
✾
95
✿
96
❀
97
❁
98
❂
99
❃
100
❄
101
❅
102
❆
103
❇
104
❈
105
❉
106
❊
107
❋
108
●
109
❍
110
■
111
❏
112
❐
113
❑
114
❒
115
▲
116
▼
117
◆
118
❖
119
◗
120
❘
121
❙
122
❚
123
❛
124
❜
125
❝
126
❞
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
❡
162
❢
163
❣
164
❤
165
❥
166
❦
167
❧
168
♣
169
♦
170
♥
171
⑥
172
①
173
②
174
③
175
④
176
⑤
177
⑥
178
⑦
179
⑧
180
⑨
181
❼
182
❶
183
❷
184
❸
185
❹
186
❺
187
❻
188
❼
189
❽
190
❾
191
❿
192
➀
193
➁
194
➂
195
➃
196
➄
197
➅
198
➆
199
➇
200
➈
201
➉
202
➊
203
➋
204
➌
205
➍
206
➎
207
➏
208
➐
209
➑
220
➜
211
➓
212
➔
213
→
214
↔
215
↕
216
➘
217
➙
218
➚
219
➛
220
➜
221
➝
222
➞
223
➟
224
➠
225
➡
226
➢
227
➣
228
➤
229
➥
230
➦
232
➧
232
➨
233
➩
234
➪
235
➫
Fortsetzung auf der nächsten Seite
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
132
236
➬
237
➭
238
➮
239
➯
240
241
➱
242
➲
243
➳
244
➴
245
➵
246
➶
247
➷
248
➸
249
➹
250
➺
251
➻
252
➼
253
➽
254
➾
255
A.2
Die Symbol-Font-Tabelle
Tabelle A.2: Zapf-Dingbats-Tabelle
Code
Zeichen
Code
Zeichen
Code
Zeichen
Code
Zeichen
Code
Zeichen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
!
34
∀
35
#
36
∃
37
%
38
&
39
∋
40
(
41
)
42
∗
43
+
44
,
45
−
46
.
47
/
48
0
49
1
50
2
51
3
52
4
53
5
54
6
55
7
56
8
57
9
58
:
59
;
60
<
61
=
62
>
63
?
64
≅
65
Α
66
Β
67
Χ
68
∆
69
Ε
70
Φ
71
Μ
72
Η
73
Ι
74
ϑ
75
Κ
76
Λ
77
Μ
78
Ν
79
Ο
80
Π
81
Ξ
82
Ρ
83
Σ
84
Τ
85
Υ
86
ς
87
Ω
88
Ξ
89
Ψ
90
Ζ
91
χ
92
∴
93
]
94
⊥
95
_
96

97
α
98
β
99
χ
100
δ
101
ε
102
φ
103
γ
104
η
105
ι
Fortsetzung auf der nächsten Seite
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Ausgewählte LATEX-Kapitel
133
106
ϕ
107
κ
108
λ
109
µ
110
ν
111
ο
112
π
113
θ
114
ρ
115
σ
116
τ
117
υ
118
ϖ
119
ω
120
ξ
121
ψ
122
ζ
123
{
124
|
125
}
126
∼
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
ϒ
162
′
163
≤
164
⁄
165
∞
166
ƒ
167
♣
168
♦
169
♥
170
♠
171
±
172
←
173
↑
174
→
175
↓
176
°
177
±
178
″
179
≥
180
×
181
…
182
∂
183
•
184
÷
185
≠
186
≡
187
≈
188
…
189

190

191
↵
192
ℵ
193
ℑ
194
ℜ
195
℘
196
⊗
197
⊕
198
∅
199
∩
200
∪
201
⊃
202
⊇
203
⊄
204
⊂
205
⊆
206
∈
207
∉
208
∠
209
∇
220
⇐
211

212

213
∏
214
√
215
⋅
216
¬
217
∧
218
∨
219
⇔
220
⇐
221
⇑
222
⇒
223
⇓
224
◊
225
〈
226

227

228

229
∑
230

232

232

233

234

235

236

237

238

239

240
241
〉
242
∫
243
⌠
244

245
⌡
246

247

248

249

250

251

252

253

254

255
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
Literaturverzeichnis
[1] C ARLISLE , D. Packages in the ’graphics’ bundle. ftp.dante.de/texarchive/macros/latex/required/graphics/grfguide.ps.
[2] C ARLISLE , D. The dcolumn-package. ftp.dante.de/tex-archive/macros/latex/required/tools/dcolumn.dtx.
[3] C ARLISLE , D. The longtable-package. ftp.dante.de/tex-archive/macros/latex/required/tools/longtable.dtx.
[4] C ARLISLE , D. The tabularx-package. ftp.dante.de/tex-archive/macros/latex/required/tools/tabularx.dtx.
[5] F. M ITTELBACH , D. C. A new implementation of LATEX’s tabular and
array environement. ftp.dante.de/tex-archive/macros/latex/required/tools/array.dtx.
[6] F EAR , S.
Publication quality tables in LATEX.
ftp.dante.de/tex-archive/macros/latex/contrib/supported/booktabs/booktabs.dtx.
[7] G OOSSENS , M.,
ET AL .
Der LATEX-Begleiter. Addison-Wesley, 1995.
[8] J ÜRGENS , M.
LATEX - Eine Einführung und ein bisschen
mehr.
ftp.fernuni-hagen.de/pub/pdf/urz-broschueren/broschueren/a0260003.pdf.
[9] K OPKA , H. LATEX, Band 1-3. Addison-Wesley, 1993 ff.
[10] LATEX3-P ROJEKT-T EAM. LATEX2e Font Selection. ftp.dante.de/texarchive/macros/latex/doc/html/fntguide/fntguide.pdf.
[11] M.G OOSSENS , S. R. Mit LATEX ins Web. Addison-Wesley, 2000.
[12] R ECKDAHL , K. Using Imported Graphics in LATEX2e. ftp.dante.de/tex-archive/info/epslatex.ps.
134
Ausgewählte LATEX-Kapitel
[13] R EICHERT, A. Gleitobjekte - die richtige Schmierung. ftp.dante.de/tex-archive/info/german/gleitobjekte/gleitobjekte.ps.
[14] R EICHERT, A. Satz von Tabellen. ftp.dante.de/tex-archive/info/german/tabsatz/tabsatz.ps.
[15] S CHMIDT, W. Using common PostScript fonts. ftp.dante.de/texarchive/macros/latex/required/psnfss/psnfss2e.pdf.
Fachhochschule Karlsruhe, Fachbereich Mechatronik, Moltkestraße 30, 76133 Karlsruhe
135