Выравнивание столбцов на последней странице для латексного класса IEEEtran?

В документации для класса IEEEtran LaTeX упоминается, что два столбца на последней странице необходимо отрегулировать вручную, чтобы сбалансировать (иметь одинаковую длину).

я вижу это \newpage позволит мне разбить первый столбец, чтобы остальная часть содержимого была во втором столбце. Это допускает выравнивание на уровне абзацев и выглядит хорошо, но у меня возникают проблемы с выравниванием на уровне строк, то есть разбив столбец по строкам, а не по абзацам.

Когда я вставляю \newpage в середине абзаца (а не между абзацами) LaTeX эффективно разделяет абзац на две части. Вторая часть переходит в верхнюю часть второго столбца (по желанию), а первая часть остается в первом столбце. С этим я столкнулся с двумя проблемами, и я решил только одну из них.

Первая проблема заключается в том, что частичный абзац в верхней части второго столбца трактуется LaTeX как новый абзац, поэтому он имеет отступ. Я исправил это, добавив \noindent после \newpage так что это не с отступом.

Вторая проблема заключается в том, что для частичного абзаца в первом столбце абзац является обоснованным (как и ожидалось), но последняя строка является неровной (без обоснования). Есть ли способ заставить оправдание этой последней строки? В LaTeX есть окружение и команды для отключения выравнивания, но я не могу найти ничего, чтобы полностью оправдать абзац, включая последнюю строку.

4 ответа

Решение

Две возможности:

  1. Завершение строки с \linebreak заставит линию быть оправданной, независимо от того, насколько она пуста.

    Чтобы сделать то, что вы пытаетесь сделать, вы можете заменить \newpage \noindent с \linebreak \newpage \noindent, Обратите внимание, что это создаст пустую строку перед концом страницы, что может быть или не быть проблемой. В некоторых случаях это может создать пустую страницу между вашими страницами.

  2. Другой вариант будет \pagebreak, Он говорит LaTeX начать новую страницу, когда вы доберетесь до конца текущей строки. У вас нет контроля над точным словом, где происходит разрыв страницы.

Как насчет сделать последнюю страницу (столбец) короче, используя

 \enlargethispage{-50mm}

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

(Публикация для гуглеров, приземляющихся здесь)

Самое быстрое решение это

      \usepackage{pbalance}

(Документация пакета на https://ctan.org/pkg/pbalance?lang=de)

В случае, если это не сработает, можно попробовать специальную команду \IEEEtriggeratref{10}, который добавляет разрыв столбца перед ссылкой . Заменять 10по фактическому номеру ссылки. См . документацию IEEEtran , раздел «XIV. Выравнивание столбца последней страницы» для более подробной информации).

Вы можете настроить следующие длины, чтобы LaTeX заполнял последнюю строку абзаца. Поместите это в свою преамбулу:

\newcommand{\filllastline}[1]{
\setlength\leftskip{0pt}
\setlength\rightskip{0pt}
\setlength\parfillskip{0pt}
#1}

Затем в вашем документе сделайте это:

\filllastline{The text for your partial para in 1st col goes here...}

(Для будущих вопросов о LaTeX вы должны написать на https://tex.stackexchange.com/)

Другие вопросы по тегам