Когда, если это вообще происходит, расширяется пространство, созданное \hspace?

Когда, если это вообще происходит, расширяется пространство, созданное \hspace?

Я использовал следующий шаблон, чтобы разрешить разбиение даты в формате ММ/ДД/ГГГГ после каждой косой черты.

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

Мне никогда не нужен дополнительный пробел после косой черты; я хочу, чтобы он был преобразован либо в перенос строки, либо вообще не использовался (я полагаю, что это эквивалент «необязательного переноса без ширины», применяемого в MS Word). Но делает лиТеХсистема позволяет вставлять дополнительный пробел? Должен ли я использовать другой шаблон, чтобы разрешить необязательные переносы строк?

Если я введу дату как

01/01/2001

бывают случаи, когда его визуализированная форма нарушает границы.

решение1

Пропуск (hspace) с любым значением растяжения будет растягиваться слишком сильно, если окружающий блок не имеет достаточного содержимого для заполнения его ширины, это печально известное предупреждение "underfull hbox". Однако пропуск без компонента растяжения или сжатия, как в вашем примере, никогда не растягивается.

Тем не менее, вам не нужно оставлять здесь пробел, поэтому использование \hspaceтолько для того, чтобы разрешить перенос строки в качестве побочного эффекта, не является лучшей разметкой, вы можете использовать

01/\linebreak[0]01

который добавляет штраф 0, разрешая, но не поощряя и не препятствуя перерыву, или использовать предоставленный макрос

01\slash 01

который применяет то же наказание, что и явный дефис, который (в большинстве классов) допускает, но слегка препятствует разрыву.

Или вы можете использовать urlпакет и

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

так как этот пакет позволяет переносить строки /(он relaxпросто говорит, что не нужно ничего делать с переключением шрифтов)

решение2

Попробуй это: 01/\penalty0{}01/\penalty0{}2001

\penalty0позволяет легко сломать.

Связанный контент