Wann, wenn überhaupt, wird der durch \hspace geschaffene Raum erweitert?

Wann, wenn überhaupt, wird der durch \hspace geschaffene Raum erweitert?

Ich habe das folgende Muster verwendet, um zu ermöglichen, dass ein Datum im Format MM/TT/JJJJ nach jedem Schrägstrich umbrochen wird.

01/\hspace{0pt}/01\hspace{0pt}/2001

Ich möchte nie zusätzlichen Platz nach dem Schrägstrich; ich möchte, dass er entweder in einen Zeilenumbruch oder in nichts übersetzt wird (das Äquivalent zu „optionalem Zeilenumbruch ohne Breite“, wie er in MS Word angewendet wird, glaube ich). Aber funktioniert dasTeXSystem das Einfügen von zusätzlichem Leerzeichen zulässt? Sollte ich ein anderes Muster verwenden, um optionale Zeilenumbrüche zuzulassen?

Wenn ich das Datum eingebe als

01/01/2001

es gibt Fälle, in denen die wiedergegebene Form den Rand verletzt.

Antwort1

Ein Skip (hspace) mit beliebiger Dehnung wird überdehnt, wenn die umgebende Box nicht genügend Inhalt hat, um ihre Breite auszufüllen. Dies ist die berüchtigte „underfull hbox“-Warnung. Ein Skip ohne Dehnungs- oder Schrumpfkomponente wie in Ihrem Beispiel wird jedoch nie gedehnt.

Allerdings möchten Sie hier kein Leerzeichen haben, daher \hspaceist die Verwendung nur zum Zulassen von Zeilenumbrüchen als Nebeneffekt nicht die beste Auszeichnung. Sie könnten verwenden

01/\linebreak[0]01

Dies fügt eine Strafe von 0 hinzu, die eine Unterbrechung erlaubt, aber weder fördert noch verhindert, oder das bereitgestellte Makro verwendet

01\slash 01

Das hat dieselbe Strafe zur Folge wie ein expliziter Bindestrich, der (in den meisten Klassen) einen Trennstrich an dieser Stelle zulässt, aber leicht davon abrät.

Oder Sie nutzen das urlPaket und

 \DeclareUrlCommand\mydate{\urlstyle{relax}}
 \mydate{01/01/2017}

da dieses Paket Zeilenumbrüche zulässt /(es relaxsagt nur, dass nichts mit dem Wechseln der Schriftarten zu tun ist)

Antwort2

Versuche dies: 01/\penalty0{}01/\penalty0{}2001

\penalty0ermöglicht ein leichtes Brechen.

verwandte Informationen