PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : linebreak liefert underfull hbox



Caldo
27-07-2013, 23:31
Hallo und guten Abend!
ich hab ein kleines nerviges Problem:
Ich versuche gerade eine Arbeit zu TeXen und dabei keine Fehler, Warnungen oder under/over-full Boxen zu bekommen.
Am Minimalbeispiel unten: Lasse ich das "\linebreak" weg, dann trennt sich die Formel auseinander was nicht gut aussieht und zusätzlich kriege ich eine overfull hbox.
Nun kann ich die Zeile beenden mit "\\" aber dann geb ich den schönen Blocksatz auf, was auch nicht gut aussieht, also lande ich bei "\linebreak", aber sobald ich den Befehl setze erhalte ich eine Warnung mit underfull hbox... :(

Kann mir jemand helfen?

Minimalbeispiel:

\documentclass{scrartcl}

\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}

\begin{document}
Ist nun $K$ ein beliebiger Körper, so ergibt
sich für die K-Dimension \linebreak $\dim(K[X_1,\ldots,X_n])=n$.
\end{document}

Stefan_K
27-07-2013, 23:47
Setze ein \allowbreak an die Stelle, wo Du einen Umbruch erlauben möchtest, statt hartem \\ oder \linebreak.

Stefan

Caldo
27-07-2013, 23:53
Hallo,
danke für die schnelle Antwort. Leider funktioniert es nicht.
Ich erhalte das selbe Ergebnis wie wenn ich gar nichts geschrieben hätte:
Der Teil links vom "=" sprengt die Zeile (denke ich, denn es kommt eine overful hbox) und das "n" von der rechten Seite steht in der neuen Zeile...

Stefan_K
28-07-2013, 00:58
Ich erhalte hier keine underfull oder overfull box:


\documentclass{scrartcl}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}

\begin{document}
Ist nun $K$ ein beliebiger Körper, so ergibt
sich für die K-Dimension $\dim(K[X_1,\ldots,\allowbreak X_n])=n$.
\end{document}

Bei längeren Formeln ist es ohnehin oft gut, sie als abgesetzte Formel zu schreiben, dann gibt es das Problem nicht mehr und es ist übersichtlicher. Lange Formeln lesen sich nicht leicht inmitten von Text.

Ansonsten kannst Du noch umformulieren oder auf Verbesserung durch microtype hoffen, oder wie zuerst vorgeschlagen, an geeigneten Stellen Umbruch erlauben.

Stefan

--
LaTeX Forum (http://latex-forum.net)

Caldo
28-07-2013, 01:15
Ich versuche Umbrüche innerhalb der Formel gänzlich zu vermeiden... Ich dachte ich mach da mit \linebreak nur etwas falsch, dass diese Warnung auftritt, aber wenn sich das wirklich nur umgehen lässt mit Formel absetzen oder Text umformulieren, dann kann/muss ich so weitermachen wie bisher...

Danke für die Antwort!!

rstuby
28-07-2013, 06:56
Die Warnung taucht auf, weil der Text zu kurz ist, um auf eine ganze Zeile verteilt noch gut auszusehen. Daher ist die horizontale Box zu leer. Man sieht das daran, dass die Abstände zwischen den Wörtern groß sind. Eventuell kannst du mit \sloppypar vor diesem Absatz die Regeln hier weniger streng machen.

Caldo
28-07-2013, 08:35
Hallo,
nein leider hilft auch das nichts.

Da ist TeX wohl eigenwillig. Ich finde die Zeile trotz etwas größerem Wortabstand recht schön...
Danke für die Info!

klops
28-07-2013, 10:36
Es geht für TeX nicht darum, ob Du die Zeile schön findest, sondern ob der Umbruch des Absatzes den eingestellten Parametern genügt. Das ist nicht komplett der Fall, also gibt TeX eine entsprechende Warnung aus. Wenn Du TeX erlauben willst, grundsätzlich schlechter zu umbrechen, dann musst Du die Parameter eben entsprechend anpassen. Näheres zum Umbruch-Algorithmus von TeX und den dabei verwendeten Parametern ist beispielsweise in TeX by Topic (ist bei einer TeX-Live-Komplettinstallation dabei) zu finden.

Stefan_K
28-07-2013, 13:24
Das genannte Buch kriegst Du einfach geöffnet, indem Du auf der Kommandozeile texdoc texbytopic tippst, oder online aufrufst: http://texdoc.net/pkg/texbytopic.

Stefan

cgnieder
28-07-2013, 15:10
Auf TeXwelt.de/wissen finden sich auch informative Hinweise zu unter- und übervollen \hboxen: Was bedeutet underfull/overfull \hbox? (http://texwelt.de/wissen/fragen/20)

Grüße

Caldo
29-07-2013, 15:43
super Referenzen!!
Vielen Dank!!