diff options
Diffstat (limited to 'help/de-tex-faq/part5')
-rw-r--r-- | help/de-tex-faq/part5 | 998 |
1 files changed, 998 insertions, 0 deletions
diff --git a/help/de-tex-faq/part5 b/help/de-tex-faq/part5 new file mode 100644 index 0000000000..348d40755d --- /dev/null +++ b/help/de-tex-faq/part5 @@ -0,0 +1,998 @@ +Path: senator-bedfellow.mit.edu!bloom-beacon.mit.edu!news.rediris.es!irazu.switch.ch!switch.ch!news-fra1.dfn.de!news-ham1.dfn.de!news.uni-hamburg.de!not-for-mail +From: dantefaq@dante.de (DE-TeX-FAQ-Maintainer) +Newsgroups: de.comp.text.tex,de.answers,news.answers +Subject: TeX, LaTeX, DANTE e.V.: FAQ - Fragen und Antworten (Part 5 of 11) +Supersedes: <de-tex-faq-5-1020876881@dante.de> +Followup-To: de.comp.text.tex +Date: 19 Sep 2003 14:43:16 +0200 +Organization: DANTE, Deutschsprachige Anwendervereinigung TeX e.V. +Lines: 969 +Approved: news-answers-request@MIT.EDU +Distribution: world +Expires: 03 Nov 2003 13:43:13 MET +Message-ID: <de-tex-faq-5-1063975393@dante.de> +References: <de-tex-faq-1-1063975393@dante.de> +Reply-To: dantefaq@dante.de (DE-TeX-FAQ-Maintainer) +NNTP-Posting-Host: sun.dante.de +Mime-Version: 1.0 +Content-Type: text/plain; charset=ISO-8859-1 +Content-Transfer-Encoding: 8bit +X-Trace: rzsun03.rrz.uni-hamburg.de 1063975397 889 134.100.9.52 (19 Sep 2003 12:43:17 GMT) +X-Complaints-To: usenet@news.uni-hamburg.de +NNTP-Posting-Date: 19 Sep 2003 12:43:17 GMT +Summary: This posting contains a list of Frequently Asked Questions + (and their answers) about the typesetting system TeX and + about DANTE e.V., the german-speaking TeX users group. + It is in German and uses the ISO Latin-1 character set. +Keywords: FAQ TYPESETTING TeX USERGROUP DANTE +Xref: senator-bedfellow.mit.edu de.comp.text.tex:117403 de.answers:9380 news.answers:258269 + +Posted-By: auto-faq 3.3 (Perl 5.008) +Archive-name: de-tex-faq/part5 +Posting-Frequency: monthly +Copyright-Notice: siehe Abschnitt 1.1/see Section 1.1 +URL: http://www.dante.de/faq/de-tex-faq/ + +--- DE-TeX-FAQ Beginn Teil 5 --- + + + + Fragen und Antworten (FAQ) über das Textsatzsystem TeX und DANTE, + Deutschsprachige Anwendervereinigung TeX e.V. + + + Bernd Raichle, Rolf Niepraschk und Thomas Hafner + + + Version 72 vom September 2003 + +------------------------------------------------------------------------ + + +5 TeX, LaTeX, Makros etc. (I) + + +5.1 LaTeX - Grundlegendes + + +5.1.1 Was benötige ich, wenn ich von LaTeX 2.09 auf LaTeX2e umsteigen +bzw. eine neuere LaTeX-Version installieren will? + +Grundsätzlich sollte man sich beim Umstieg von 2.09 oder beim Update +einer älteren 2e-Version immer die komplette LaTeX-Distribution im +Verzeichnis ``base'' besorgen und installieren, nie einzelne Dateien +oder nur einzelne Class-Dateien. Nach dem Entpacken der Distribution und +Installation der einzelnen Dateien ist ein neues Format zu generieren. +Die Anleitung ``install.txt'' enthält genauere Informationen und +wichtige Hinweise - bitte durchlesen! + + Notwendig: + + + * alle Dateien im Verzeichnis ``base''. + * alle Zusatzpakete wie `graphics' und damit alle Dateien in den + Verzeichnissen unter dem Verzeichnis ``required''. + * die zusätzlichen CM-Schriften `cmmib' und `cmbsy' in den + Designgrößen 5, 6, 7, 8 und 9 Punkt. + + + Optional, da schon in ``base'' enthalten: + + + * Will man sich, insbesondere auf langsameren Rechnern, das + Entpacken der dtx-Dateien in ``base'' sparen, benötigt man noch + zusätzlich die Dateien im Verzeichnis ``unpacked''. + * Ebenso befindet sich im Verzeichnis ``doc'' die schon + formatierte Dokumentation, also die Dateien + ``base/???guide.tex''. + + + +base: CTAN: macros/latex/base/ + CTAN: macros/latex/required/ +line/lcircle/lasy: CTAN: fonts/latex/mf/ + CTAN: fonts/latex/tfm/ +cmmib/cmbsy: CTAN: fonts/amsfonts/sources/extracm/ + CTAN: fonts/amsfonts/tfm/ + oder + CTAN: fonts/cm/sauter/ +optional: CTAN: macros/latex/unpacked/ + CTAN: macros/latex/doc/ + + + +5.1.2 Ich habe gehört, daß es für meine LaTeX-Versionen Patches gibt. +Welche Dateien benötige ich, was muß ich tun? + +Für jeden LaTeX-Patch benötigt man immer zumindest die Datei +``patches.txt'' +. Sie beschreibt genau, welche weitere Dateien man noch zu einem +_kompletten_ Patch benötigt. In vielen Fällen gibt es neben der Datei +``ltpatch.ltx'' +, die LaTeX-Kernel-Patches enthält, noch neue Versionen weiterer +Dateien! Näheres in +``patches.txt'' +. +Nachdem man die Dateien geholt und installiert hat, muß ein neues Format +erstellt und installiert werden, damit die Patches in ``ltpatch.ltx'' +aktiv werden. Zur Kontrolle: Danach sollte beim Formatieren eines +Dokuments nach der Meldung `LaTeX2e <1999/06/01>' noch der Zusatz `patch +level X' erscheinen, wobei `X' mit dem installierten Patch +übereinstimmen muß. + +patches.txt: CTAN: macros/latex/base/patches.txt + + + +5.1.3 Was kann ich mit einer Datei mit Endung `.dtx' anfangen? Benötige +ich dazu auf alle Fälle LaTeX? + +Dateien mit `.dtx' sind sogenannte `docstrip archive files', also ein +Archiv, aus dem man mit dem Programm `docstrip' verschiedene Dateien +entpacken kann. Zum Entpacken benötigen Sie nur die Datei +``docstrip.tex'' + oder +``docstrip.dtx'' + und das Programm TeX. ``docstrip.tex'' können Sie mit LaTeX 2.09, +LaTeX2e und auch mit Plain-TeX verwenden. +Wie Sie eine `.dtx'-Datei entpacken müssen, sollten Sie aus einer +Beschreibung zu Beginn der `.dtx'-Datei oder einer separaten +README-Datei entnehmen können. Existiert eine gleichnamige Datei mit +Endung `.ins', so können Sie in den meisten Fällen das `.dtx'-Archiv +``file.dtx'' mit ``tex file.ins'' entpacken. In der Regel erzeugt dieser +Aufruf eine oder mehrere `.sty'-Dateien sowie weitere Hilfs- und +Beispieldateien. Näheres entnehmen Sie bitte der Beschreibung des +Archivs. +Die Dokumentation eines Pakets und der Makros sind ebenso in einem +`.dtx'-Archiv enthalten. Zum Formatieren dieser Dokumentation benötigen +Sie jedoch ein installiertes LaTeX2e - für einige ältere Archive reicht +auch noch das alte LaTeX 2.09. Üblicherweise kann die Dokumentation +(`.dvi'-Datei) durch ``latex file.dtx'' oder ``latex file.drv'' erzeugt +werden. +Ein Befehlsindex eines Paketes kann i.d.R. durch + + makeindex -s gind.ist file + +und einen anschließenden erneuten LaTeX-Lauf erzeugt werden. +Bei der Erzeugung der Dokumentation wird der dokumentierte Quellcode +meist nicht aufgenommen; um ihn einzuschließen, kann vor dem LaTeX-Lauf +im aktuellen Verzeichnis eine Datei ``ltxdoc.cfg'' angelegt werden, die +die folgende Zeile enthält: + + \AtBeginDocument{\AlsoImplementation} + +Näheres ist, falls vorhanden, der mitgelieferten Beschreibung des +Archivs zu entnehmen. +Hinweis: Mit LaTeX ab Dezember 1995 wurde eine Version des Tool +``docstrip.dtx'' verteilt, das gleichzeitig mehrere Dateien aus einem +Archiv entpacken kann und damit um einiges schneller ist. Deshalb lohnt +es sich, wenn Sie eine ältere Version benutzen, diese durch die neue +Version zu ersetzen. + +docstrip: CTAN: macros/latex/base/docstrip.dtx + CTAN: macros/latex/base/docstrip.ins + (Bestandteil von LaTeX, kann aber auch mit Plain-TeX + verwendet + werden!) + + +5.1.4 Wie installiert man am besten ein neues Paket, eine neue Klasse +oder eine neue Schrift in einem bestehenden TeX-System? + +Aktuelle TeX-Systeme legen alle Dateien in einer hierarchischen Struktur +gemäß dem TeX-Directory-Structure-Standard (TDS, siehe Frage 3.1.7) an. +Das Wurzelverzeichnis eines solchen Baumes lautet meist ``texmf''. Unter +teTeX, fpTeX und anderen TeX-Systemen werden die Suchpfade in der Datei +``texmf.cnf'' angegeben, deren Ort man mit ``kpsewhich texmf.cnf'' +herausfinden kann. +Für nachträglich installierte Pakete empfiehlt es sich, diese in einer +eigenen lokalen Verzeichnishierarchie zu installieren (beispielsweise +unter dem Verzeichnis ``texmf.local'', siehe Variable TEXMFLOCAL in +``texmf.cnf''). +Besteht ein LaTeX-Paket nach dem eventuell notwendigen Entpacken der +dtx-Dateien aus einer Einzeldatei, so wird diese in der TDS-Hierarchie +in ``texmf.local/tex/latex/misc/'' abgelegt. Gehören zu dem Paket +mehrere sty-, cls-, fd- oder ähnliche Dateien, so werden diese in ein +neu erzeugtes Verzeichnis unter ``texmf.local/tex/latex/_Paketname_'' +verschoben. +Schriften, Dokumentation, BibTeX-Dateien, dvips-Konfigurationsdateien +u.ä. werden analog gemäß TDS in entsprechende Unterverzeichnisse unter +``texmf.local'' verschoben. Näheres sollte in der README-Datei des +Pakets erläutert sein. +Zum Abschluss darf man nicht vergessen, die sogenannte +_Filename-Database_ auf den aktuellen Stand zu bringen, da sonst die neu +installierten Dateien nicht gefunden werden. Näheres finden Sie in der +Dokumentation Ihres TeX-Systems und unter Frage 8.5.10. +Einige TeX-Systeme bieten ein Konfigurations-Werkzeug, um zusätzliche +Pakete nachträglich zu installieren oder vorhandene Pakete zu +aktualisieren. Unter fpTeX geht dies über das Setup-Menü, unter MikTeX +verwendet man das Options-Tool. Beide sorgen nach der Änderung +automatisch für die Aktualisierung der Dateinamens-Datenbank. + +Managing a one-person TeX http://www.ctan.org/installationadvice/ +system: + + + +5.1.5 Wie gehe ich am besten vor, wenn ich eine bestehende LaTeX-Klasse +ändern bzw. an meine eigenen Vorgaben anpassen will? + +Statt von einer bestehenden Klasse wie ``article.cls'' eine Kopie unter +eigenem Namen, hier als Beispiel ``detexfaq.cls'', anzulegen, empfiehlt +es sich, eine schon bestehende Klasse zu laden und anschließend alle +notwendigen Änderungen durchzuführen. Hierzu bietet LaTeX eine Reihe von +Möglichkeiten, die in der Dokumentation für Klassen-Autoren +``clsguide.tex'' beschrieben sind. Als einfaches Beispiel hätte damit +die neue Klasse ``detexfaq.cls'', in der als Standard-Optionen +`11pt,a4paper' verwendet werden und die beiden Pakete `german' und +`remreset' bereits implizit geladen werden, folgendes Aussehen: + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% CUT HERE + %% detexfaq.cls -- DE-TeX-FAQ's modified ``article.cls'' + \NeedsTeXFormat{LaTeX2e}\relax + \ProvidesClass{detexfaq}[2000/05/11 Article Class from DE-TeX-FAQ] + %% Lade nun ``article.cls'', wobei als Default-Optionen ``11pt'' und + %% A4-Papierformat als Default gesetzt werden (fuer diese muss + explizit + %% eine Deklaration hier vorhanden sein) und alle weiteren vom Autor + %% gegebenen Optionen einfach `durchgereicht' werden: + \DeclareOption{a4paper}{\PassOptionsToClass{\CurrentOption}{article}} + \DeclareOption{11pt}{\PassOptionsToClass{\CurrentOption}{article}} + \DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}} + \ExecuteOptions{a4paper,11pt} + \ProcessOptions\relax + \LoadClass{article} + %% Ab hier kann man Aenderungen an den Makros der geladenen Klasse + %% durchfuehren (bitte mit \renewenvironment oder \renewcommand!), + %% Pakete hinzuladen und/oder eigene Anweisungen und Umgebungen + %% definieren: + \RequirePackage{german} + \RequirePackage{remreset} + %% Schliesslich wird die Klassendatei `sauber' beendet': + \endinput + %% End of ``detexfaq.cls'' + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%% CUT HERE + +Diese Vorgehensweise hat einige Vorteile. So bleibt die eigene +Klassendatei relativ klein und enthält nur die notwendigen Änderungen +und Ergänzungen. Ändert sich an der verwendeten Klasse etwas, z.B. +werden Fehler korrigiert, so sind in den meisten Fällen keinerlei +Änderung an der eigenen Klassendatei zum Nachvollziehen dieser +Änderungen notwendig. Daneben dokumentiert man explizit, von welcher +Klasse und Versionsnummer man als Basis ausgegangen ist, zumal diese +Klasse und alle geladenen Pakete mit ihren Versionsnummern bei einem im +Dokumentkopf eingefügten \listfiles auftauchen. + +clsguide.tex: CTAN: macros/latex/base/ + + + +5.1.6 Wie kann ich unter LaTeX eine Anweisung mit optionalem Parameter +definieren? + +In LaTeX kann man mit den Anweisungen \newcommand, \renewcommand, +\newenvironment und \renewenvironment eigene Anweisungen und Umgebungen +definieren, die einen optionalen Parameter als erstes Argument besitzen. +Nähere Informationen finden sich in der Dokumentation für Autoren +``usrguide.tex''. + +usrguide.tex: CTAN: macros/latex/base/ + + + +5.1.7 Wie erkenne ich bei einer Anweisung mit optionalem Parameter, ob +dieser vom Autor angegeben wurde? + +Mit Hilfe des im Paket `ifthen' definierten Vergleichs \equal kann man +das optionale Argument mit dem voreingestellten Wert vergleichen. Das +folgende Beispiel geht davon aus, daß der voreingestellte Wert leer sein +soll: + + \usepackage{ifthen} + \newcommand{\meineanweisung}[2][]{% #1 = optional, #2 = notwendig + \ifthenelse{\equal{#1}{}}{% + % Autor hat kein oder leeres optionales Argument angegeben + }{% + % Autor hat optionales Argument angegeben + }} + + +ifthen: CTAN: macros/latex/base/ + + + +5.1.8 Wie kann ich in LaTeX eine Anweisung mit mehr als einem optionalen +Parameter definieren? + +Mit \newcommand kann man nur ein Makro mit einem einzigen optionalen +Parameter definieren. Will man ein Makro mit mehr als einem optionalen +Parameter definieren, so muß man hierzu mehrere Makros mit jeweils einem +optionalen Parameter definieren, die den Wert des Parameters +zwischenspeichern und das nächste Makro aufrufen. +Hier ist ein Beispiel für ein Makro \cubic[a][b][c]{d} mit drei +optionalen Argumenten: + + \newcommand{\erstesargument}{} + \newcommand{\zweitesargument}{} + + \newcommand{\cubic}[1][a]{% erstes optionales Argument + \begingroup % Definitionen von \...argument lokal halten + \renewcommand{\erstesargument}{#1}% opt. Argument speichern + \cubicZwei} + \newcommand{\cubicZwei}[1][b]{% zweites optionales Argument + \renewcommand{\zweitesargument}{#1}% opt. Argument speichern + \cubicDrei} + \newcommand{\cubicDrei}[2][c]{% drittes opt. + notwendiges Argument + \({\erstesargument}x^3+{\zweitesargument}x^2+#1x+#2\)% + \endgroup} + +Eine weitere Möglichkeit bietet das Paket `twoopt': + + \newcommandtwoopt{\Cmd}[3][DefaultA][DefaultB]{Args: #1, #2, #3} + +In Anlehnung an die Standard-LaTeX-Definitionen existieren auch die +Anweisungen \renewcommandtwoopt und \providecommandtwoopt. + +twoopt: CTAN: macros/latex/contrib/oberdiek/ + + + +5.1.9 Wie kann ich innerhalb des optionalen Arguments einer Anweisung +zusätzliche eckige Klammern, beispielsweise die eines optionalen +Arguments einer anderen Anweisung, verwenden? + +Im Unterschied zu den geschwungenen Klammern {...}, die immer paarweise +und korrekt geschachtelt werden müssen, sucht LaTeX bei eckigen Klammern +einfach nach der nächsten schließenden eckigen Klammer ], ohne auf +korrekte Schachtelung dieser Klammern zu achten. Um dies zu verhindern, +muß man einfach innerhalb der eckigen Klammern [...] ein geschweiftes +Klammerpaar einfügen, wie dies hier als Beispiel für \twocolumn gezeigt +wird: + + \twocolumn[{ ... \sqrt[3]{x^2} ... }] + + +5.2 LaTeX - Probleme beim Umstieg von LaTeX 2.09 + + +5.2.1 Anweisungen wie \tenrm, \twlrm, \fivrm etc., die von einigen +Paketen wie PiCTeX verwendet werden, sind nicht mehr definiert. Was muß +ich da ändern? + +Diese Namen für Schriften wurden nie dokumentiert und sollten im alten +LaTeX 2.09 nur LaTeX-intern verwendet werden. Da das Fontauswahlschema +namens NFSS2 in LaTeX2e komplett neu geschrieben wurde, sind diese +ehemals internen Namen nicht mehr vorhanden. Es ist daher am besten, +diese alten Pakete so umzuschreiben, daß diese internen Schriftnamen +nicht mehr verwendet werden. In der Zwischenzeit kann man mit Hilfe des +Paketes `rawfonts' diese Namen nachdefinieren, wie z.B. mit + + \usepackage[only,fivrm]{rawfonts} + +für PiCTeX. + +rawfonts.sty: CTAN: macros/latex/required/ + + + +5.2.2 Beim Umstieg von LaTeX 2.09 mit NFSS (Version 1) auf LaTeX2e +ändert sich auch das Verhalten der Anweisungen \rm, \bf, \it etc. auf +das Verhalten des Original-LaTeX 2.09. Wie bekomme ich das alte +inkompatible Verhalten von NFSS Version 1? + +Mit dem Paket `newlfont' erhält man das Verhalten von NFSS v1, ohne daß +man in den meisten Fällen das Dokument ändern muß: + + \usepackage{newlfont} + +Für neue Dokumente sollte man jedoch besser gleich die neuen Anweisungen +\textrm{...}, \textbf{...}, \textit{...} etc. verwenden. Diese +Anweisungen haben darüber hinaus den Vorteil, daß eine eventuell +notwendige `italic correction' automatisch eingefügt wird. + +newlfont.sty: CTAN: macros/latex/required/ + + + +5.2.3 Einige mathematische Symbole (\Box, \lhd, \leadsto, \Join, \mho, +\sqsubset etc.) sind nicht mehr definiert - wieso? + +Die LaTeX-Symbolschriften `lasy10' und `lasyb10' enthalten nur sehr +wenige relativ selten benutzte Symbole. Daher werden diese Schriften in +LaTeX2e nicht mehr standardmäßig geladen, sondern müssen vom Benutzer +durch Laden von `latexsym' aktiviert werden: + + \usepackage{latexsym} + + +5.2.4 Kann es sein, daß es in LaTeX2e den Parameter \footheight und die +internen Parameter \@maxsep und \@dblmaxsep nicht mehr gibt? Gibt es +einen Ersatz? + +Der Parameter \footheight und die internen Parameter \@maxsep und +\@dblmaxsep wurden in LaTeX 2.09 nie ausgewertet. Deshalb wurden sie in +LaTeX2e entfernt, um die dadurch gesparten Längenregister für andere +Zwecke einsetzen zu können. Zur Anpassung von alten Dokumentstilen an +LaTeX2e kann man daher eine Zuweisung an diese Parameter einfach +ersatzlos streichen. + +5.2.5 Mit älteren Dokumentklassen bekomme ich den Fehler `! Undefined +control sequence.' oder `! LaTeX Error: \mit undefined.' für die +Schriften \mit und \cal. Wieso? + +Bis LaTeX2e <1994/12/01> wurden \cal und \mit im Kernel definiert. Weil +diese Definitionen aber in jeder Standard-Dokumentklasse durch robustere +Varianten ersetzt werden, hat das LaTeX-Team beschlossen, \cal und \mit +nicht mehr im Kernel vorzudefinieren. Damit ist es aber erforderlich, +daß alle Dokumentklassen, die \cal und \mit nicht definieren oder mit +\renewcommand umdefinieren, angepaßt werden müssen. Bei den +Standard-Dokumentklassen hat das niemand bemerkt, da die notwendigen +Anpassungen dieser Dateien automatisch mit einer neuen LaTeX-Version +mitinstalliert werden. + +5.3 (Silben-)Trennung, Absatz-, Seitenumbruch + + +5.3.1 Wie kann ich LaTeX an die neue deutsche Rechtschreibung anpassen? +Gibt es Trennmuster für die neuen Trennregeln? + +Die ``alten'' Trennmuster wurden von Hand so angepaßt, daß die neuen +Trennregeln beachtet werden, wobei die Trennung weiterhin eher nach +Wortherkunft und nicht nach strikter Silbentrennung, die ebenfalls +erlaubt ist, erfolgt. Diese Trennmuster sind in der Datei +``dehyphn.tex'' (vormals ``gnhyph01.tex'') verfügbar. Um diese +Trennmuster nutzen zu können, benötigt man ``german.sty'' ab +Version 2.5e. + +dehyphn: CTAN: language/hyphenation/dehyphn.tex +german.sty: CTAN: language/german/ + + + +5.3.2 Warum trennt (La)TeX Worte mit Umlauten nicht oder nicht korrekt? + +Wie TeX Worte mit Umlauten trennt, hängt davon ab, ob die verwendete +Schrift Umlaute als eigene Lettern enthält und ob man auf diese Lettern +durch entsprechende Paket-Deklarationen beim Setzen eines Textes auch +zugreift. +Bei den alten CM-Schriften muß TeX Umlaute aus einem Buchstaben und +einem Akzent zusammenbasteln, da diese keine Lettern für Umlaute +enthalten. Diese Akzent-Konstruktion irritiert TeXs Trennalgorithmus, +und so trennt TeX nur den Wortteil bis zum ersten Umlaut. Im Paket +`german' und _einigen_ Babel-Versionen wird durch einen aus dem TeXbook +(Anhang D, S. 394, \allowhyphens) entnommenen Trick erreicht, daß alle +Wortteile zwischen den Umlauten einzeln getrennt werden. Bei dieser +Vorgehensweise werden nicht alle Trennstellen gefunden oder es treten +teilweise falsche Trennungen (Bsp.: "ubert-ragen statt "uber-tra-gen) +auf. +Abhilfe schaffen nur Schriften, die die Umlaute und andere akzentuierte +Zeichen als einzelne Lettern enthalten. Ein Beispiel hierfür sind alle +T1-kodierten Schriften, darunter die EC-Schriftfamilie (siehe Frage +10.1.3) und die T1-kodierten PostScript-Schriften. Unter neueren +Versionen von LaTeX und `german.sty' bzw. Babel lassen sich T1-kodierte +Schriften recht einfach durch die Deklaration + + \usepackage[T1]{fontenc} + +in der Präambel des Dokuments verwenden. + +5.3.3 Wie kann ich Trennungsausnahmen mit Umlauten in \hyphenation +verwenden? + +Auch hier gilt, daß man in \hyphenation in den Trennungsausnahmen nur +Zeichen verwenden kann, für die auch Lettern in der momentan benutzten +Schrift existieren (siehe Frage 5.3.2). Da mit CM-Schriften die Umlaute +aus zwei Lettern zusammengesetzt werden müssen, kann man für Wörter mit +Umlauten keine Trennungsausnahmen angeben. Erst bei Verwendung von +T1-kodierten Schriften, wie der EC-Schriftfamilie, oder auch von +Schriften in einer entsprechenden anderen Kodierung, die eigene Lettern +für Umlaute enthalten, kann man Trennungsausnahmen angeben. +Hier ist ein einfaches Beispiel (`german.sty' ist hier nur zum +Umschalten auf die deutschen Trennmuster ``dehypht.tex'' notwendig): + + \documentclass{article} + \usepackage{german} + \usepackage[T1]{fontenc} + \hyphenation{Ver-st\"ar-ker-aus-gang} + \begin{document} + \showhyphens{Verst\"arkerausgang} + % ohne Trennausnahme: Ver-st^^e4r-ke-r-aus-gang + % mit Trennausnahme: Ver-st^^e4r-ker-aus-gang + \end{document} + + +5.3.4 Wie kann ich `Hurenkinder' (engl. widows), also einzelne Zeilen +eines Absatzes am Kopf von Buchseiten, bzw. +`Schusterjungen/Waisenkinder' (engl. clubs), einzelne Absatzzeilen auf +der Seite unten, verhindern? + +TeX kennt die Parameter \widowpenalty und \clubpenalty, mit denen man +die `Strafpunkte' festlegen kann, falls ein Hurenkind bzw. ein +Schusterjunge beim Seitenumbruch entstehen sollte. Außerdem gibt es noch +den Parameter \displaywidowpenalty für Hurenkinder nach einer +abgesetzten mathematischen Formel. Da TeX den Wert 10000 als unendlich +große Strafe interpretiert, kann man mit den Zeilen + + \clubpenalty = 10000 + \widowpenalty = 10000 \displaywidowpenalty = 10000 + +Hurenkinder und Schusterjungen komplett unterdrücken. (Das Paket +`schuster' enthält genau diese Zeilen.) +Man sollte jedoch bedenken, daß man bei einem Satzspiegel mit fester +Höhe (\flushbottom) und registerhaltigem Satz Hurenkinder und +Schusterjungen nur schwerlich verhindern kann - insbesondere wenn man +dies bei zweiseitigem Druck für jede Doppelseite beachten muß. Hier ist +es oft besser, die einzelne Zeile zuzulassen oder zu versuchen, einen +Absatz durch geringfügige Umformulierung eine Zeile länger oder kürzer +zu machen. +Weiterhin gibt es die Möglichkeit, Absätze, die schon sehr voll sind, +mit \looseness=1 um eine Zeile zu dehnen oder Absätze, die recht leer +sind, mit \looseness=-1 um eine Zeile zu kürzen. Manchmal führt dies +jedoch zu merklichen Änderungen des Grauwerts des Absatzes. (Achtung: +Der Wert von \looseness gilt außerhalb von Listen-Umgebungen nur für den +aktuellen Absatz. Innerhalb einer Listen-Umgebung muß die Zuweisung +zusammen mit \par durch eine Gruppe lokal gehalten werden {\looseness=1 +\par}, wenn die Änderung nur für einen Absatz gelten soll.) + +5.3.5 Wie muß in LaTeX die Datei ``hyphen.cfg'' aussehen, um die +deutschen Trennmuster ``dehypht.tex'' (vormals ``ghyph31.tex'') in das +LaTeX-Format einzubinden? + +Eine Anleitung zur Installation der deutschen Trennmuster enthält +``gerdoc'', die Kurzbeschreibung des German-Styles vom Mai 1997. Diese +Anleitung beschreibt auch die Installation der Trennmuster in Plain-TeX +und LaTeX 2.09. Beispiel von ``hyphen.cfg'' für LaTeX: + + %% Konfigurationsdatei -- Trennmuster: `hyphen.cfg' + \message{== Loading hyphenation patterns:} + + \chardef\l@USenglish=\language + \chardef\l@english=\l@USenglish %% british english als `Dialekt' + \input hyphen + + \newlanguage\l@german \language=\l@german + \chardef\l@austrian=\l@german + \input dehypht + + \newlanguage\l@ngerman \language=\l@ngerman + \input dehyphn + + %% weitere Sprachen nach folgendem Schema: + % \newlanguage\l@SPRACHE \language=\l@SPRACHE + % \chardef\l@DIALEKT=\l@SPRACHE + % \input SPRACHhyphen + + %% Default-Trennmuster: USenglish + \language=\l@USenglish \lefthyphenmin=2 \righthyphenmin=3 + \endinput + +_Hinweis:_ Einige Distributionen benutzen stillschweigend die Datei +``hyphen.cfg'' aus dem Babel-Paket. Außerdem wurde meist ``hyphen.tex'' +in ``ushyph1.tex'' umbenannt, um unter dem Namen ``hyphen.tex'' die +Datei ``hyphen.cfg'' aus Babel auch für Plain-TeX einbinden zu können. +In diesem Fall führt ein ``\input hyphen'', wie im obigen Beispiel +beschrieben, zu einer Endlosschleife! + +gerdoc: CTAN: language/german/gerdoc.tex + + + +5.3.6 Wieso werden Texte in `typewriter'-Schriften nicht getrennt? Gibt +es eine Möglichkeit, daß doch getrennt werden kann? + +TeX trennt nur, wenn die aktuell verwendete Schrift einen Divis +(Trennungsstrich) besitzt. Dazu ist jeder Schrift ein Divis durch den +Parameter \hyphenchar<font> zugeordnet, der bei den meisten Schriften +auf den Wert `\-, also auf das Zeichen ``-'', gesetzt ist. Bei den +`typewriter'-Schriften ist dieser Wert aber auf -1 gesetzt, d.h. auf ein +nicht vorhandenes Zeichen. Damit ist die Trennung für diese Schriften +unterdrückt, was in den meisten Fällen auch sinnvoll ist. +Will man dennoch, daß TeX einen in `typewriter' gesetzten Textteil +automatisch trennt, so muß man den \hyphenchar für diese Schriften auf +`\- setzen. Dies geht in LaTeX am einfachsten, wenn man die Anweisung +\ttfamily umdefiniert: + + \newcommand{\origttfamily}{}% sollte noch nicht definiert sein! + \let\origttfamily=\ttfamily % alte Definition von \ttfamily sichern + \renewcommand{\ttfamily}{\origttfamily \hyphenchar\font=`\-} + +Man könnte alternativ dazu auch die Dateien ``*cmtt*.fd'' ändern und die +Anweisung \hyphenchar\font\m@ne in \DeclareFontFamily entfernen. Dies +ist jedoch nicht ratsam, wenn man Texte an andere weitergeben will, da +man dann nicht vergessen darf, die so geänderten `*.fd'-Dateien +mitzugeben. +Für LaTeX 2.09 (oder analog auch für Plain-TeX) muß das Makro \tt +umdefiniert werden: + + \newcommand{\origtt}{} + \let\origtt=\tt + \renewcommand{\tt}{\origtt \hyphenchar\font=`\-} + +Wichtiger Hinweis: TeX kann eine Schrift unter unterschiedlichen Namen +laden, wobei TeX alle diese Schriften nur ein einziges Mal lädt und für +die anderen Schriften nur `Aliases' anlegt. Daher gibt es +\hyphenchar<font> nur einmal pro `echten' Font und \hyphenchar<font> ist +wie auch \fontdimen<font> ein besonderer Parameter: Alle Zuweisungen an +\hyphenchar<font> werden _immer_ global ausgeführt. Außerdem sieht sich +TeX diesen Parameter erst am Absatzende beim Umbruch dieses Absatzes an, +so daß mit obiger Änderung nicht möglich ist, die Trennung für einen in +`typewriter' gesetzten Textteil zu ermöglichen, für einen anderen im +selben Absatz zu verbieten. +Eine weitere Methode, Trennungen für `typewriter'-Schriften zu erlauben, +bietet das Paket `hyphenat': + + \usepackage[htt]{hyphenat} + +Darüber hinaus kann es auch benutzt werden, um Trennung selektiv zu +erlauben oder zu verbieten. + +hyphenat: CTAN: macros/latex/contrib/hyphenat/ + + + +5.3.7 Warum trennt LaTeX Wörter mit Bindestrich nicht bzw. nur am +Bindestrich, auch wenn die Trennausnahmeliste diese enthält? + +TeX fügt nach dem aktuellen Trennzeichen implizit (fast) immer einen +sogenannten \discretionary ein, der wie \- eine explizite Trennstelle +angibt. Da sowohl \- als auch \discretionary dazu führen, daß die +Trennung in den übrigen Wortteilen unterdrückt wird, werden solche +Wörter außer am Trennstrich nicht mehr getrennt. Dieses eigenwillige +Verhalten von TeX ist für Sprachen, in denen wenige Bindestriche +verwendet werden, günstig und sinnvoll, da zusätzliche Trennungen in +solchen Wörtern meist die Lesbarkeit erschweren. +Um Wörter mit Bindestrichen dennoch zu trennen, existieren zwei +Möglichkeiten: Man gibt im Dokumenttext bei diesen Wörtern, insbesondere +wo schlecht getrennt werden kann, mit \- oder "- weitere mögliche +Trennstellen vor oder man verwendet "= anstelle des Bindestrichs. +Näheres ist hierzu der Dokumentation des Paketes `german' zu entnehmen. +Die andere Möglichkeit, die bislang nur von Experten umgesetzt werden +kann, besteht bei Schriften, die eine zweite Letter für einen +Bindestrich besitzen. Für diese Schriften kann man diese zweite Letter +als Trennstrich deklarieren. Zusammen mit den zusätzlichen Trennmustern +in ``hypht1.tex'' ist damit eine automatische Trennung von Wörtern mit +Bindestrichen und deren Aufnahme in die Trennausnahmeliste möglich. + +german.sty: CTAN: language/german/ +hypht1.tex: CTAN: language/hyphenation/hypht1.tex + + + +5.4 Seitenlayout, Layout allgemein, Kopf- und Fußzeilen (*) + + +5.4.1 Gibt es neben den Standard-LaTeX-Klassen auch Klassen mit einem +`europäischeren' Design? + +Die NTG hat verschiedene Klassenentwickelt, die im Vergleich zum Layout +der Standard-LaTeX-Klassen kleinere Überschriften und eine +einheitlichere Einrückung der Absätze und Listen definieren. +Das KOMA-Script-Paket enthält ebenfalls Klassen (`scrartcl', `scrreprt', +`scrbook' und `scrlettr'), die die Standardklassen ersetzen. Es wurden +dort eine Vielzahl von Änderungen eingeführt, die ein günstigeres +Aussehen bewirken. So wird z.B. der Satzspiegel besser an das +Papierformat angeglichen. Nähere Einzelheiten enthält die ausführliche +Beschreibung in der beigefügten Datei ``scrguide.dvi''. + +KOMA-Script: CTAN: macros/latex/contrib/koma-script/ +NTG-Klassen: CTAN: macros/latex/contrib/ntgclass/ + + + +5.4.2 Ich suche eine Klasse für Briefe, die weitgehend die verschiedenen +DIN-Normen und deutschen Gepflogenheiten berücksichtigt. + +Unter LaTeX 2.09 ist `dinbrief' weit verbreitet, der von anderen Autoren +auch für LaTeX2e verfügbar gemacht wurde. Darüber hinaus findet man im +KOMA-Script-Paket die Klasse `scrlettr' und es gibt mit `g-brief' und +`akletter' noch weitere Beispiele für angepaßte Klassen. + +dinbrief: CTAN: macros/latex/contrib/dinbrief/ +KOMA-Script: CTAN: macros/latex/contrib/koma-script/ +g-brief: CTAN: macros/latex/contrib/g-brief/ +akletter: CTAN: macros/latex/contrib/akletter/ + (Anm.: `akletter' hieß in früheren Version `myletter', ein + schlechter, + weil häufig gewählter Name.) + + +5.4.3 Gibt es eine bequemere Möglichkeit, ein Seitenlayout anzugeben, +als dadurch, Parameter, wie \textheight, einzeln zu verändern? + +Mit dem Paket `typearea' aus dem KOMA-Script-Paket kann man den Anteil +des Textbereichs an der Gesamtseite abhängig von der Schriftgröße nach +Tschicholds (siehe Frage 2.4.2) n-Teilungder Seite berechnen lassen + + \documentclass[a4paper,11pt]{...} % Ausgangspapiergroesse + % BCOR1cm: zusaetzlich 1cm Rand fuer die Bindung. + % DIV10: fuer 11pt-Schrift wird 10-Teilung verwendet, bei `oneside' + % nimmt der Text 7/10 der Restseite ein. + \usepackage[BCOR1cm]{typearea} + +Die Verteilung der Ränder erfolgt dabei automatisch nach typographischen +Gesichtspunkten. Diverse Papiergrößen sowie Hoch- und Querformat werden +unterstützt, zusätzliche Formate können definiert werden, und auch die +Option `twoside' wird korrekt behandelt. Ausführliche Informationen dazu +findet man in der beigefügten Datei ``scrguide.dvi''. +Mit diesem Paket, das einem die Berechnung eines wohldefinierten +Satzspiegels abnehmen kann, kann man auch die LaTeX-Parameter für den +Textbereich durch eine einfache Schnittstelle setzen: + + \documentclass[a4paper]{...} % Ausgangspapiergroesse + \usepackage{typearea} + \areaset[1cm]% % Zusaetzlicher Rand fuer die Bindung + {18cm}{25cm} % Textbreite und Hoehe + +Neben `typearea' gibt es mit `vmargin' und `geometry' drei weitere +Pakete, mit denen man die LaTeX-Parameter leichter setzen kann. Bei +`vmargin' haben die Makroaufrufe eine festgelegte Parameterreihenfolge, +`geometry' dagegen benutzt das Paket `keyval', mit dem die Parameter in +beliebiger Reihenfolge angegeben werden können: + + \usepackage{geometry} + \geometry{left=1.5cm,textwidth=18cm,top=1.5cm,textheight=25cm} + + + \usepackage{vmargin} + \setpapersize{A4} + \setmargins{1.5cm}{1.5cm}% % linker & oberer Rand + {18cm}{25cm}% % Textbreite und -hoehe + {12pt}{25pt}% % Kopfzeilenhoehe und -abstand + {0pt}{30pt}% % \footheight (egal) und Fusszeilenabstand + +Eine gute Möglichkeit der visuellen Kontrolle des Ergebnisses bietet das +Paket `layouts'. + +KOMA-Script: CTAN: macros/latex/contrib/koma-script/ +script: CTAN: macros/latex209/contrib/script/ +geometry: CTAN: macros/latex/contrib/geometry/ +vmargin: CTAN: macros/latex/contrib/vmargin/ +layouts: CTAN: macros/latex/contrib/layouts + + + +5.4.4 Wieso ist mit der Klasse `book' oder mit der Klassenoption +`twoside' der innere Rand kleiner als der äußere? + +Bei doppelseitiger Formatierung werden die Seitenränder so gewählt, daß +sie nicht für eine einzelne Seite sondern für eine aufgeschlagene +Doppelseite passen. Bei dieser bilden die Ränder der beiden Seiten drei +vertikale weiße Streifen (links außen, mittig, rechts außen), die gleich +breit sein sollen. Da der mittlere Streifen aus den Rändern zweier +Seiten gebildet wird, sind diese auch nur halb so breit. Aus diesem +Grund legt man unter LaTeX die Werte für \evensidemargin und +\oddsidemargin, also für den linken Rand der geraden (linken) und den +der ungeraden (rechten) Seite, entsprechend fest. Näheres findet sich +u.a. in der Dokumentation der KOMA-Script-Klassen. + +KOMA-Script: CTAN: macros/latex/contrib/koma-script/ + + + +5.4.5 Gibt es einen einfachen Weg, die Seitennummer als `Seite 1 von 16' +anzugeben? + +Mit dem Paket `lastpage' erhält man durch ``\pageref{LastPage}'' eine +Referenz auf die Seitennummer der letzten Seite. Das Paket `count1to' +bietet mit ``\pageref{TotalPages}'' eine Referenz auf die Gesamtzahl der +Seiten. Selbiges leistet das Paket `totpages', wobei man mit +``\ref{TotPages}'' die Gesamtzahl aller Seiten, mit +``\pageref{TotPages}'' die Seitennummer der letzten Seite erhalten kann. +Diese `pageref'-Anweisungen können unter Zuhilfenahme des Paketes +`fancyhdr' oder des Paketes `scrpage' aus dem KOMA-Script-Paket in der +Form `\thepage{} von \pageref{LastPage}' in die Kopf- oder Fußzeilen +eingefügt werden. + +lastpage: CTAN: macros/latex/contrib/lastpage/ +count1to: CTAN: macros/latex/contrib/ms/ +totpages: CTAN: macros/latex/contrib/totpages/ +fancyhdr: CTAN: macros/latex/contrib/fancyhdr/ +Kurzbeschreibung: CTAN: info/german/fancyhdr/ +KOMA-Script: CTAN: macros/latex/contrib/koma-script/ + + + +5.4.6 Wie kann ich den Kolumnentitel, die Kopfzeile der Seite, oder die +Fußzeile nach meinen Wünschen gestalten, z.B. mit einem Strich versehen? + +Mit dem Paket `scrpage' und den Klassen aus dem KOMA-Script-Paket oder +mit dem Paket `fancyhdr' kann man die Kopf- und Fußzeile einer Seite +fast beliebig festlegen. Beide Pakete enthalten eine ausführliche +Dokumentation, die auch auf andere Probleme eingeht und dafür Lösungen +und Tips hat. + +KOMA-Script: CTAN: macros/latex/contrib/koma-script/ +fancyhdr: CTAN: macros/latex/contrib/fancyhdr/ +Kurzbeschreibung: CTAN: info/german/fancyhdr/ + + + +5.4.7 Wie kann ich einem zweispaltig gesetzten Text (Klassenoption +`twocolumn') eine beide Spalten übergreifende Überschrift und +Zusammenfassung voransetzen? + +Will man nur mit \maketitle eine Überschrift mit den Autorenangaben +einspaltig in voller Breite über beide Spalten setzen, so verwendet man +die Klassenoption `twocolumn' und ändert sonst nichts, da dies bei den +Standard-Klassen und den meisten anderen Klassen automatisch vorgesehen +ist. +Soll jedoch zusätzlich zur Überschrift noch weiterer Text wie eine +Zusammenfassung einspaltig gesetzt werden, muß man auf die Klassenoption +`twocolumn' verzichten und stattdessen die Anweisung \twocolumn +verwenden. Diese hat ein optionales Argument, in der man diejenigen +Textteile angibt, die einspaltig über die gesamte Breite gesetzt werden +sollen. Da die Anweisung \maketitle und die Umgebung `abstract' jedoch +nicht einfach im optionalen Argument von \twocolumn verwendet werden +kann, muß man zu einem kleinen, leider nicht ganz sauberen Trick mit +\csname@twocolumnfalse\endcsname greifen. + + \documentclass[...]{article} + ... + \begin{document} + \twocolumn[{\csname @twocolumnfalse\endcsname + \maketitle + \begin{abstract} + ... + \end{abstract} + }] + ... + \end{document} + +Innerhalb des optionalen Arguments von \twocolumn funktionieren leider +keine Fußnoten und damit tauchen auch für die Anweisung \thanks in der +Autorenliste keine Fußnoten auf. Werden diese benötigt, muß man sie von +Hand mit \footnotetext nach dem optionalen Argument setzen. + +5.4.8 Wie kann ich verhindern, daß der Beginn eines Absatzes eingezogen +wird? Ich will Absätze stattdessen mit zusätzlichem Durchschuß +markieren. (*) + +Meist kommt auf diese Frage + \setlength{\parskip}{\baselineskip} \setlength{\parindent}{0pt} +als Antwort, jedoch fügt LaTeX \parskip auch an verschiedenen anderen +Plätzen ein, u.a. auch zu Beginn und am Ende einer Liste und zwischen +den Listenelementen. Dies kann man mit dem Paket `parskip' von Hubert +Partl zum Teil verhindern, wenn auch nicht komplett. +Weitergehende Lösungen finden sich in den KOMA-Script- und NTG-Klassen. +Die KOMA-Script-Klassen kennen die Klassenoption `parskip' und +verschiedene Varianten davon. Zu den NTG-Klassen gehören `artikel3', +`rapport3' und `boek3', die ebenfalls ein Layout ohne Absatzeinzug und +mit zusätzlichen Durchschuß bieten. +Ob man nun den Beginn eines neuen Absatzes mit einem Einzug oder mit +einem zusätzlichen Durchschuß markiert, ist immer wieder Anlaß zu mehr +oder weniger ausgiebigen Diskussionen. Um einen weitverbreiteten Irrtum +auszuräumen: Der einzuglose Satz hat im ``deutschen Buchsatz'' keine +Tradition. Einzugloser Satz, ob nun mit oder ohne zusätzlichen +Durchschuß, ist im Zeitungs- und Zeitschriftensatz weit verbreitet, so +daß er manchen vertrauter erscheint als der traditionelle Buchsatz mit +Einzug. Letztendlich sollte man bei der Wahl, ob mit oder ohne Einzug, +an den Leser denken; wie einfach dieser einen neuen Absatz, den Beginn +eines neuen Teils der niedergeschriebenen Gedankenfolge, immer klar und +deutlich erkennen kann. + +parskip.sty: CTAN: macros/latex/contrib/misc/parskip.sty +KOMA-Script: CTAN: macros/latex/contrib/koma-script/ +NTG-Klassen: CTAN: macros/latex/contrib/ntgclass/ + + + +5.4.9 Wie kann ich den Durchschuß meines Dokuments vergrößern, wenn ich +beispielsweise ein Dokument mit 1,5- oder 2-fachem Zeilenabstand +abliefern soll? + +Abgesehen davon, daß man eine solch starke Vergrößerung des +Zeilenabstand vermeiden sollte, hilft das Paket `setspace': + + \usepackage{setspace} + \doublespacing % doppelzeilig oder + %\onehalfspacing % anderthalbzeilig + + +setspace: CTAN: macros/latex/contrib/setspace/ + + + +5.4.10 Wieso bekomme ich mit \pagestyle{empty} dennoch eine Seitennummer +auf der ersten Seite mit dem Artikeltitel? + +Fast alle LaTeX-Klassen definieren die Anweisung \maketitle so, daß für +diese Seite mit \thispagestyle auf den Seitenstil `plain' umgeschalten +wird. \thispagestyle überschreibt damit den gewählten Seitenstil für +diese eine Seite. Um dies zu verhindern, muß man entweder eine besser +geeignete Klasse wählen, die Definition in der Klasse ändern oder +folgenden Trick anwenden: _Direkt_ nach der Anweisung \maketitle wird +\thispagestyle{empty} eingefügt. Alternativ kann das Paket `nopageno' +verwendet werden. + +nopageno: CTAN: macros/latex/contrib/carlisle/nopageno.sty + + + +5.4.11 Wie kann ich mein gesamtes LaTeX-Dokument im Querformat setzen? + +Zu diesem Zweck ist bei der Dokumentenklasse die Klassen-Option +`landscape' anzugeben. Zusätzlich muß dem verwendeten dvi-Treiber die +nun vom Standard abweichende Seitengröße mitgeteilt werden. Im Falle von +`dvips' kann man dies statt per Kommandozeilenoption mit Hilfe des +Pakets `geometry' erreichen. + + \usepackage[dvips]{geometry} + + +geometry: CTAN: macros/latex/contrib/geometry/ + + + +5.4.12 Wie kann ich Teile meines Dokumentes im Querformat setzen? + +Dokumentteile können nur gedreht werden, wenn dies auch vom verwendeten +dvi-Gerätetreiber unterstützt wird. In den meisten Fällen bedeutet dies, +daß die dvi-Datei nach PostScript zu konvertieren ist. Zum Betrachten +und Ausdrucken ist ein PostScript-Viewer wie beispielsweise `gv' oder +`gsview' unter Verwendung von `Ghostscript' geeignet. +Das LaTeX-Bundle `graphics' enthält das Paket `lscape', das eine +`landscape'-Umgebung zur Verfügung stellt. Der Inhalt dieser Umgebung +wird um 90 Grad gegen den Uhrzeigersinn gedreht und auf eine eigene +Seite plaziert. Zu Beginn und am Ende der Umgebung wird ein \clearpage +ausgeführt: + + \usepackage{lscape} + % etc. + \begin{landscape} + \begin{figure} + gedrehte Abbildung + \caption{gedrehte Unterschrift} + \end{figure} + % evtl. noch weitere Abbildungen/normaler Text/etc. + \end{landscape} + % etc. + +Wird ein Dokument mit solcherart gedrehten Seiten per pdfLaTeX zu einer +pdf-Datei kompiliert, wäre es wünschenswert, wenn die gedrehten Seiten +bei Betrachtung mit `Acrobat Reader' in aufrechter Schrift, also um +90 Grad gedreht, dargestellt würden. In diesem Fall ist das Paket +`pdflscape' zu verwenden, das wiederum das Paket `lscape' lädt und um +entsprechende PDF-Anweisungen ergänzt: + + \usepackage{pdflscape} + % ... + +Will man nicht ganze Seiten drehen oder stören die implizit ausgeführten +\clearpage-Anweisungen, so kann man auch nur die Anweisung \rotatebox +aus dem Paket `graphics' verwenden: + + \usepackage{graphics} % oder `graphicx' + % etc. + \begin{figure} + \rotatebox{90}{% + \begin{minipage}{.6\textheight} + gedrehte Abbildung + \caption{gedrehte Unterschrift} + \end{minipage}% + } + \end{figure} + +Das Paket `rotating' bietet statt der einfachen \rotatebox-Anweisung mit +all ihren Nachteilen (Stichwort: `verbatim'!) die Umgebungen `rotate', +`turn' und `sideways', innerhalb der man (fast) beliebigen Text +plazieren kann. Für den Spezialfall, daß eine Abbildung bzw. Tafel wie +mit der Umgebung `landscape' eine komplette Seite füllt und um 90 Grad +gegen den Uhrzeigersinn gedreht werden soll, gibt es die den `figure'- +und `table'- entsprechenden `sidewaysfigure'- und +`sidewaystable'-Umgebungen. Außerdem ist eine ältere Version dieses +Pakets auch für LaTeX 2.09 verfügbar. +Mehr über diese Pakete findet man in der Dokumentation ``grfguide.tex'' +des `graphics'-Bundle, der mit `rotating' mitgelieferten Dokumentation +und dem Buch `Der LaTeX-Begleiter' (siehe Frage 2.4.1) sowie in Keith +Reckdahls Artikel `Using Imported Graphics in LaTeX2e' (siehe Frage +2.4.2). + +lscape: CTAN: macros/latex/required/graphics/ +pdflscape: CTAN: macros/latex/contrib/oberdiek/ +rotating: CTAN: macros/latex/contrib/rotating +epslatex: CTAN: info/epslatex.ps + CTAN: info/epslatex.pdf + + + +--- DE-TeX-FAQ Ende Teil 5 --- |