Autor Thema: [LaTeX] Layout-Guide  (Gelesen 11141 mal)

0 Mitglieder und 3 Gäste betrachten dieses Thema.

Offline Dom

  • Stiftung Rollenspieltest
  • Famous Hero
  • ******
  • Beiträge: 2.369
  • Geschlecht: Männlich
  • Username: Dom
[LaTeX] Layout-Guide
« am: 10.03.2006 | 09:53 »
Angeregt durch die Challenge möchte ich hier einen Faden eröffnen, in dem wir sammeln, welche Style-Files, Befehle, usw. sich besonders gut zum Layouten in LaTeX eignen.

Was meine ich damit? Es geht hier um Layout, also um Schriften, Abstände, Textfluss usw., die als grundsätzliche Einstellung genutzt werden. Ein Layout verändert die gesamte Präsentation des Textes. Anregungen zum besonders geschickten Gestalten von Einzelelementen ("Wie frickele ich so eine Tabelle hin?", "Was muss ich machen, um eine solche Formel zu bekommen?") oder elementare Dinge ("Wie binde ich eignentlich Bilder ein?", "Was ist eine mbox?", "Was sind zerbrechliche Befehle?", usw.) gehören nicht hierher. Allgemeine Tipps zur Gestaltung von Tabellen, Positionierung von Bilder usw. aber natürlich schon.

----

Wahl der Seiteneinstellungen
1. MMn das einfachste und beste Mittel ist das Paket geometry. Mein Tipp hierzu: als Option dem Class-File das Papierformat übergeben (also a4paper, a5paper, letter, usw.), dann das Patet via \usepackage einbinden. Das hat den Vorteil, dass auch andere Pakete grundsätzlich die Seitengröße mitkriegen. Über den Befehl \geometry kann man dann Seitenrandeinstellungen vornehmen.

Beispiel: \geometry{left=1cm,right=5cm,top=4cm,bottom=3cm}
oder: \geometry{textwidth=16cm, textheight=12cm}

Eine Ausführliche Anleitung bietet eigentlich jede LaTeX-Installation in der Datei geometry.pdf.

2. Eine weiter Möglichkeit bieten die Class-Files scr... (also scrartcl, scrreprt, scrbook) mit dem Satzspiegel. Dazu bieten diese Klassen u.a. einen Befehl \typearea. Damit werden die Seitenränder auf eine ästhetische Weise gesetzt.

Beispiel:
\typearea[2cm]{12}

Die erste Längenangabe (2cm) dient der Bindekorrektur. Die zweite Längenangabe ist ein Divisor. Je größer diese Zahl, umso kleiner der Rand.

3. Allgemein gilt: Um die Lesbarkeit zu erhöhen, sollten in einer Zeile nicht mehr als 76 Buchstaben vorkommen.

Anleitung zu den scr-Paketen: scrguide.dvi bzw. scrguide.pdf

----

Mehrspaltiger Text

Mehrspaltiger Text sollte immer dann gewählt werden, wenn bei der Seitenrandeinstellung/Schriftwahl sonst zu viele Zeichen pro Zeile entstehen.

1. Die einfachst, aber leider nicht besonders elegante Möglichkeit, ist die Option twocolumn. Der (einzige aber manchmal entscheidende) Vorteil ist, dass die Kompatibilität mit der restlichen LaTeX-Welt recht hoch ist. Der Nachteil ist, dass man nicht so ohne weiteres aus dem zweispaltigen Modus wieder rauskommt (durch \onecolumn bzw. \twocolumn entstehen immer Seitenwechsel), so dass Überschriften usw. alle in die Spalten gezwungen werden. Außerdem ist das Ende des zweispaltigen Textes nicht ausbalanciert.

2. Komfortabler ist da das Paket multicol. Es bietet die Umgebung multicols. Damit kann man n-spaltigen Textsatz erzeugen, der balanciert ist und ohne Seitenwechsel geändert werden kann.

\begin{multicols}{2}[\section{Überschrift}]
bla laber sülz
\end{multicols}

Hier wird ein zweispaltiger Text erzeugt. Die Überschrift steht in einem einspaltigen Bereich, der fest mit dem zweispaltigen Text verbunden ist, d.h. so kann es nicht passieren, dass die Überschrift unten auf der Seite steht und der mehrspaltige Text erst auf der nächsten Seite beginnt.

Es soll hier aber nicht unerwähnt bleiben, dass durch diese Paket z.B. gleitende Umgebungen ein paar Probleme bekommen. Vgl. hierzu auch die Anleitung: multicol.dvi

----

Ohne jetzt ausführlicher darauf einzugehen, möchte ich noch die Pakete titlesec, mdwtab und tabularx erwähnen. Ersteres dient der komfortablen Formatierung von Überschriften, die beiden letzteren für Tabellen.

Dom
« Letzte Änderung: 10.03.2006 | 09:58 von Dom »

Offline wintersun

  • Experienced
  • ***
  • Beiträge: 133
  • Geschlecht: Weiblich
  • Username: wintersun
Re: [LaTeX] Layout-Guide
« Antwort #1 am: 13.03.2006 | 21:12 »
Zur Mehrspaltigkeit mit Fußnoten habe ich noch eine Ergänzung:
Sobald Fußnoten verwendet werden, sieht twocolumn einfach besser aus, denn dort werden die Fußnoten in die Spalte und nicht wie bei multicols unter allen Spalten sozusagen einspaltig gesetzt.

Ich halte das so: Entweder Fußnoten raus und die multicols-Umgebung oder Tricks mit \vspace* und anderen Befehlen zum Formatieren per Hand mit der twocolumn-Option. Bei letzterem nur wirkllich bis zum letzten Buchstaben warten, denn sonst endet das Ganze schnell in Gefrickel, wenn noch was geändert wird und sich die Abstände verschieben.

Ansonsten möchte ich nochmal tabularX lobend erwähnen: gerade für Tabellen mit viel Text (ob fest oder noch zu ergänzen) sehr praktisch.

Viele Grüße
wintersun
"You may come and go as you please. My secrets guard themselves. Will yours do the same?" WiW

Samael

  • Gast
Re: [LaTeX] Layout-Guide
« Antwort #2 am: 7.07.2006 | 15:23 »
Darf ich hier Fragen reinposten? Falls ja, hier ein paar:

  • Wie pappe ich an Tabellen Überschriften (oder Unterschriften) dran?
  • Wie schaffe ich es, in einem Tabellenfeld mehrzeilig zu schreiben? Habe das Problem, dass die Talle zum Seitenrand "überläuft"

Offline Haukrinn

  • BÖRK-Ziege
  • Mythos
  • ********
  • Jetzt auch mit Bart!
  • Beiträge: 11.756
  • Geschlecht: Männlich
  • Username: haukrinn
Re: [LaTeX] Layout-Guide
« Antwort #3 am: 7.07.2006 | 15:33 »
Darf ich hier Fragen reinposten? Falls ja, hier ein paar:

Nö. verboten...  ;)

  • Wie pappe ich an Tabellen Überschriften (oder Unterschriften) dran?

Als Gleitobjekt oder nicht? Beim Gleitobjekt packst Du die Tabelle ja in eine table-Umgebung, und da gibt's dann den caption-Befehl.

  • Wie schaffe ich es, in einem Tabellenfeld mehrzeilig zu schreiben? Habe das Problem, dass die Talle zum Seitenrand "überläuft"

Du kannst als Formatierungsparameter für die Spalte p{Spaltenbreite} angeben, dann setzt LaTeX den Zelleninhalt als (mitunter auch mehrzeiligen) Absatz.
What were you doing at a volcano? - Action geology!

Most people work long, hard hours at jobs they hate that enable them to buy things they don't need to impress people they don't like.

Offline Dom

  • Stiftung Rollenspieltest
  • Famous Hero
  • ******
  • Beiträge: 2.369
  • Geschlecht: Männlich
  • Username: Dom
Re: [LaTeX] Layout-Guide
« Antwort #4 am: 7.07.2006 | 15:41 »
Jo, Fragen sind erlaut... allgemeiner Natur und das sind sie ja :)

Tabellen Unter-/Überschriften
Grundsätzlich gibt es zwei mögliche Vorgehensweisen.
1. Du benutzt die table-Umgebung. Die dient dazu, dass die Tabellen automatisch "floating" angeordnet werden, d.h. du weißt nie so genau, wo die Tabelle landet, dafür erzeugen große Tabellen dann aber auch keine unschönen Umbruchprobleme. In diesem Fall gibt es den Befehl \caption{}, der der Tabelle auch gleich eine Nummer vergibt. Setzt du dann nach dem \caption{}-Befehl ein \label{}, so kannst du die Tabelle auch mit \ref{} referenzieren.

2. Du benutzt die table-Umgebung nicht und willst trotzdem Tabelle und Tabellenunterschrift als eine Einheit betrachten. Dann kannst du alles in eine minipage-Umgebung einpacken und einfach die Unterschrift unter die Tabelle (in die minipage) schreiben. Dann wird die Minipage im laufenden Text als ein "Buchstabe" behandelt und gesetzt; somit kannst du die dann z.B. mit \centerline{} zentrieren.


Zu der anderen Frage komme ich später.

Dom

Samael

  • Gast
Re: [LaTeX] Layout-Guide
« Antwort #5 am: 7.07.2006 | 15:45 »
Als Gleitobjekt oder nicht? Beim Gleitobjekt packst Du die Tabelle ja in eine table-Umgebung, und da gibt's dann den caption-Befehl.
Ah, ok....
Danke!

Zitat
Du kannst als Formatierungsparameter für die Spalte p{Spaltenbreite} angeben, dann setzt LaTeX den Zelleninhalt als (mitunter auch mehrzeiligen) Absatz.

Auch hier hats geklappt!

Offline Dom

  • Stiftung Rollenspieltest
  • Famous Hero
  • ******
  • Beiträge: 2.369
  • Geschlecht: Männlich
  • Username: Dom
Re: [LaTeX] Layout-Guide
« Antwort #6 am: 7.07.2006 | 15:50 »
Mehrzeilige Tabellenfelder
Grundsätzlich kann man mit dem Spaltenparameter p{<Breite>} eine automatisch umbrechende Spalte machen von bestimmter Breite machen. Ansonsten ist es auch möglich, mit \parbox in einer Zelle sozusagen eine winzige "Seite" (ähnlich einer Minipage) zu machen. Auch die Umgebung minipage klappt. In den letzten beiden Fällen kann man einen Zeilenumbruch mit \\ erzwingen, im ersten Fall muss man stattdessen auf \newline zurückgreifen. In allen Fällen funktioniert \par bzw. eine Leerzeile, um einen Abschnittsumbruch zu machen. Allerdings unterscheidet sich dieser standardmäßig hier nicht von einem Zeilenumbruch.

Dom
« Letzte Änderung: 7.07.2006 | 15:58 von D.O.M. Galotta »

Offline Bombshell

  • Zonen-Stefan
  • Helfer
  • Legend
  • ******
  • Beiträge: 5.658
  • Geschlecht: Männlich
  • Username: Bombshell
Re: [LaTeX] Layout-Guide
« Antwort #7 am: 8.07.2006 | 11:01 »
Hallo,

es lohnt sich immer erst einen Blick in die Dante FAQ zu werfen, bevor man eine evtl. schon beantwortete Frage stellt.

MfG

Stefan
Kurze klare Worte

Offline Bombshell

  • Zonen-Stefan
  • Helfer
  • Legend
  • ******
  • Beiträge: 5.658
  • Geschlecht: Männlich
  • Username: Bombshell
Re: [LaTeX] Layout-Guide
« Antwort #8 am: 8.07.2006 | 11:06 »
Hallo,

ein weiterer Tipp für den Satz von anspruchsvollen und dennoch gut lesbaren Tabellen ist das Dokument Tabsatz.

MfG

Stefan
Kurze klare Worte

Ein

  • Gast
Re: [LaTeX] Layout-Guide
« Antwort #9 am: 9.07.2006 | 17:52 »
Sofern man vorhat, dass ganze irgendwann mal an einen professionellen Verlag weiterzugeben, z.B. für eine Veröffentlichung in einem Artikel ist es, nicht auf \parbox und \par zurückzugreifen, da das den armen Setzern (wie mir) eine Menge Arbeit erspart.

Offline Haukrinn

  • BÖRK-Ziege
  • Mythos
  • ********
  • Jetzt auch mit Bart!
  • Beiträge: 11.756
  • Geschlecht: Männlich
  • Username: haukrinn
Re: [LaTeX] Layout-Guide
« Antwort #10 am: 9.07.2006 | 18:00 »
Warum?
What were you doing at a volcano? - Action geology!

Most people work long, hard hours at jobs they hate that enable them to buy things they don't need to impress people they don't like.

Ein

  • Gast
Re: [LaTeX] Layout-Guide
« Antwort #11 am: 9.07.2006 | 18:15 »
Weil bei professionellem Satz (also z.B. beim Springer-Verlag) Tabellen als Minipages gesetzt werden, wobei die Tabellen ganz sauber als Zeilen aufgebaut werden.

Wenn da ein nun mehrzeilige Zellen mit \par drin sind, müssen diese erst äußerst umständlich durch den Setzer aufgelöst werden. Da gerade in naturwissenschaftlichen Publikationen Tabellen aber nicht nur enorme Größen, sondern mitunter auch ordentlich Komplexität erreichen, kann das mitunter bedeuten, dass eine komplette Tabelle neugeschrieben werden muss. Wo durch der Setzer sehr viel Zeit braucht (und wir werden pro Seite bezahlt) und natürlich besteht die Gefahr, dass dabei Fehler entstehen. Es ist also ärgerlich für jeden in der Produktionskette vom Autor bis zum Verlag.

Wenn es also veröffentlicht werden soll, am besten so wenig Layout wie möglich.

Offline Haukrinn

  • BÖRK-Ziege
  • Mythos
  • ********
  • Jetzt auch mit Bart!
  • Beiträge: 11.756
  • Geschlecht: Männlich
  • Username: haukrinn
Re: [LaTeX] Layout-Guide
« Antwort #12 am: 9.07.2006 | 18:18 »
Komisch, sowohl Springer als auch IEEE wollten von mir bisher immer nur die PDFs, aber nie den tex-Files haben. Naja, ich werd's trotzdem beherzigen (Ich wäre eh' nicht auf die Idee mit dem \par gekommen, geht ja auch so...  :))
What were you doing at a volcano? - Action geology!

Most people work long, hard hours at jobs they hate that enable them to buy things they don't need to impress people they don't like.

Ein

  • Gast
Re: [LaTeX] Layout-Guide
« Antwort #13 am: 9.07.2006 | 18:21 »
Braucht ja auch nicht, uns reicht ja das PDF. ;)

Allerdings ist der \par trotzdem meist mit drin, da die Konverter es nicht hinbekommen. Von daher kann ich dir sagen, dass wir dir sehr dankbar sind, dass du sie nicht benutzt (und uns damit in die Armut treibst ;))

Ein

  • Gast
Re: [LaTeX] Layout-Guide
« Antwort #14 am: 19.07.2006 | 17:32 »
Unter LaTeX ist zur Vermeidung dieser Unschönheiten lediglich darauf zu achten, größere Absätze (solche mit einer Zeile Zwischenraum zum vorherigen Absatz) nicht durch das beliebte aber bösartige
Alter Absatz.\\\par
Neuer Absatz
sondern durch
Alter Absatz.\par\bigstep
Neuer Absatz
zu erzeugen, da TeX die Absätze im ersten Fall teilweise nicht richtig setzen kann.
@Raven
Nur mal eine Frage zu deinem LaTeX-Beispiel. Sollte man eigentlich nicht besser komplett ohne \par arbeiten und statt dessen im verwendeten Style definieren, was wie gesetzt wird?


Edit: Das Posting von Ein beziehet sich auf das nachfolgende Post von Raven; ich habe das ursprüngliche Beispiel des Zusammenhangs wegen nochmal hier eingefügt.
« Letzte Änderung: 20.07.2006 | 13:12 von Enkidi Li Halan »

Offline Hr. Rabe

  • Hoëcker
  • Famous Hero
  • ******
  • Beiträge: 2.317
  • Geschlecht: Männlich
  • Username: TheRavenNevermore
    • Dragons and Bytecode Blog
Re: [LaTeX] Layout-Guide
« Antwort #15 am: 20.07.2006 | 13:01 »
Vermeidung von Hurenkindern & Schusterjungen

Definition: siehe Kleine Typografiekunde für den Alltagsgebrauch

Unter LaTeX ist zur Vermeidung dieser Unschönheiten lediglich darauf zu achten, größere Absätze (solche mit einer Zeile Zwischenraum zum vorherigen Absatz) nicht durch das beliebte aber bösartige
Alter Absatz.\\\par
Neuer Absatz
sondern durch
Alter Absatz.\par\bigstep
Neuer Absatz
zu erzeugen, da TeX die Absätze im ersten Fall teilweise nicht richtig setzen kann.

#define EVER ( ; ; )


Dragons and Bytecode

Offline 1of3

  • Richtiges Mädchen!
  • Titan
  • *********
  • Proactive Scavenger
  • Beiträge: 19.131
  • Username: 1of3
    • Sea Cucumbers and RPGs
Re: [LaTeX] Layout-Guide
« Antwort #16 am: 20.07.2006 | 13:04 »
Wenn man das immer haben möchte, kann kann man auch [parskip] hinter bei der Definition des Dokumennttyps einsetzen, also z.B:

\documentclass[parskip,a4paper]{scrartcl}

Offline Bombshell

  • Zonen-Stefan
  • Helfer
  • Legend
  • ******
  • Beiträge: 5.658
  • Geschlecht: Männlich
  • Username: Bombshell
Re: [LaTeX] Layout-Guide
« Antwort #17 am: 29.07.2006 | 21:54 »
Hallo,

normalerweise braucht man in ganz normalen Textfluss überhaupt nicht mit \par zu arbeiten eine einfache Leerzeile reicht dafür aus (außerdem kann man den Quelltext auch besser lesen, imho).

Und wenn man hier mit Optionen (parskip) für irgendwelche Dokumentenklassen (scrartcl) um sich wirft sollte man wenigstens mal das dazugehörige Paket "koma-script" erwähnen und bei diesem auf die sehr gute Dokumentation hinweisen, die auch sehr viele Typografie-Tipps bereit hält.

MfG

Stefan
Kurze klare Worte

Offline Jürgen Hubert

  • Adventurer
  • ****
  • Weitgereister
  • Beiträge: 615
  • Geschlecht: Männlich
  • Username: Jürgen Hubert
    • Sunken Castles, Evil Poodles
Re: [LaTeX] Layout-Guide
« Antwort #18 am: 16.04.2007 | 15:56 »
2. Komfortabler ist da das Paket multicol. Es bietet die Umgebung multicols. Damit kann man n-spaltigen Textsatz erzeugen, der balanciert ist und ohne Seitenwechsel geändert werden kann.

\begin{multicols}{2}[\section{Überschrift}]
bla laber sülz
\end{multicols}

Hier wird ein zweispaltiger Text erzeugt. Die Überschrift steht in einem einspaltigen Bereich, der fest mit dem zweispaltigen Text verbunden ist, d.h. so kann es nicht passieren, dass die Überschrift unten auf der Seite steht und der mehrspaltige Text erst auf der nächsten Seite beginnt.

Auf die Weise bin ich bei meinem neusten Urbis-Manuskript vorgegangen. Im allgemeinen bin ich mit dem Resultat zufrieden, aber der Abstand zwischen den beiden Spalten scheint mir etwas klein. Wie kann man den verstellen?
Die Arcana Wiki - Inspirationen für Rollenspieler aus der realen Welt

Sunken Castles, Evil Poodles - Übersetzung deutscher Sagen und Legenden ins Englische

Offline Dom

  • Stiftung Rollenspieltest
  • Famous Hero
  • ******
  • Beiträge: 2.369
  • Geschlecht: Männlich
  • Username: Dom
Re: [LaTeX] Layout-Guide
« Antwort #19 am: 16.04.2007 | 16:00 »
In meiner LaTeX-Installation gibts ne Datei "/usr/share/doc/texmf/latex/tools/multicol.dvi.gz", da gibts die Hilfe zu dem Paket. Darin steht wiederum, dass du die Länge \columnsep entsprechend einstellen solltest. Darüberhinaus kannst du eine stärkere Trennung auch mit \columnseprule erreichen.

Dom