PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Formel in Satz steht über Zeilenrand!



sacrif
14-07-2011, 21:07
Hallo alle zusammen!

Ich habe in meiner Arbeit in einem Satz eine Formel mit $formel$ eingebaut. Die Formel steht am Ende einer Zeile. Anstatt dass sie in die nächste Zeile kommt bleibt sie in der oberen und steht hier über den normal Zeilenrand hinaus. Wenn ich ein \newline for $formel$ einfüge kommt sie in die nächste Zeile. Allerdings ist die obere Zeile in der die Formel zuerst war dann zu kurz. Kann ich nicht irgendwie bewirken dass die Abstände zwischen den Worten in dieser Zeile regelmässiger aufgeteilt werden damit die Zeile besser in das Gesamtbild passt?

Vielen Dank für eure Hilfe & Liebe Grüße
scr

LuPi
15-07-2011, 07:18
Du kannst Dein Glück mit \sloppy versuchen (nur für den betreffenden Absatz),
das wird allerdings nicht unbedingt einen Schönheitspreis gewinnen. Ansonsten
fällt mir eigentlich nur der Standardtip ein: Satz umbauen. Das ist natürlich
erst in der finalen Version sinnvoll, vermeidet aber auch die unschönen
Lücken, die ansonsten im Grauwert auftauchen ...

Schweinebacke
15-07-2011, 07:48
Eine Umbruchstelle innerhalb eines Absatzes definiert man mit \linebreak, nicht mit \newline. Lange Formeln setzt man besser als abgesetzte Formeln. { in Formeln verhindern den Umbruch. Das Paket microtype kann die Umbrechbarkeit durch zusätzliche Mechanismen verbessern. Ebenso kann \usepackage[T1]{fontenc} durch Verwendung von Fonts mit echten Umlauten etc. helfen, den Umbruch zu verbessern. Um nur einige Punkte zu nennen.

BTW: \sloppy verschlechtert auch den Satz von Absätzen, bei denen es gar nicht notwendig wäre. Deshalb ist es ggf. besser nur einzelne Absätze, bei denen man bereit ist, den schlechten Satz zu akzeptieren in eine sloppypar-Umgebung zu setzen.

LuPi
15-07-2011, 08:05
BTW: \sloppy verschlechtert auch den Satz von Absätzen, bei denen es gar nicht notwendig wäre. Deshalb ist es ggf. besser nur einzelne Absätze, bei denen man bereit ist, den schlechten Satz zu akzeptieren in eine sloppypar-Umgebung zu setzen.

Wenn ich mich nicht sehr täusche, wirkt \sloppy per se nur für den
betreffenden Absatz (wenn es nicht in der Präambel gesetzt wird). Insofern
bietet die sloppypar-Umgebung hier keinen zusätzlichen Vorteil, oder?

Fiphil
15-07-2011, 09:22
Hi!

Ich glaube das amsmath Paket bietet eine hilfreiche Funktion. Es sei denn du willt die Formel nicht umbrechen lassen:



\usepackage{amsmath}
\allowdisplaybreaks

sacrif
15-07-2011, 10:08
Hallo,

und vielen Dank für eure Antworten! \sloppy und \linebreak scheint für meine Zwecke am besten zu funktionieren, je nachdem ob ich die Formel als ganze behalten will oder nicht.

Zu \sloppy wüsste ich auch gerne eine Antwort auf LuPis Frage: betrifft das wenn ichs ohne Präambel verwende eh nur den jetztigen Absatz/Satz oder? Mir sind zumindest sonst keine veränderungen im Text aufgefallen.

LG scr

localghost
15-07-2011, 10:27
[…] Ich glaube das amsmath Paket bietet eine hilfreiche Funktion. Es sei denn du willt die Formel nicht umbrechen lassen:



\usepackage{amsmath}
\allowdisplaybreaks

Das ist ein Irrtum. Hiermit werden Seitenumbrüche innerhalb mehrzeiliger Formeln erlaubt. Man kann jedoch entsprechend weniger Strafpunkte für den Zeilenumbruch innerhalb von Formeln vergeben [1].

\binoppenalty700
\relpenalty500

Dies sind die voreingestellten Werte. Entsprechend herabgesetzt wird er Zeilenumbruch erleichtert.

[1] TeX Frequently Asked Questions - Line-breaking in in-line maths (http://www.tex.ac.uk/cgi-bin/texfaq2html?label=brkinline)


Thorsten

Schweinebacke
15-07-2011, 11:26
Wenn ich mich nicht sehr täusche, wirkt \sloppy per se nur für den
betreffenden Absatz Du täuschst Dich sehr. \sloppy und \fuzzy sind Umschalter, die ab sofort bis zum Ende der aktuellen Gruppe (im Zweifelsfall also bis zum Ende des Dokuments) gelten.

LuPi
15-07-2011, 11:33
Jau, jetzt erinnere ich mich auch wieder: Ich hatte den Absatz in {} eingeschlossen ...
Besten Dank für den Hinweis.