Чтобы перенести заключённое в скобки выражение LaTeX на несколько строк, используйте скобки фиксированного размера или сопоставьте видимую скобку каждой строки с невидимым разделителем. Чтобы заключить весь блок в одну пару высоких скобок, поместите внутрь скобок многострочную среду.
Это руководство поможет выбрать макет и отредактировать полный документ LaTeX на Mac. Все выражения ниже — искусственные алгебраические примеры. Важно определить, где должны располагаться скобки: рядом с первым и последним слагаемыми или по краям всего блока.
Какой вариант расположения скобок выбрать?
Перед изменением исходного кода воспользуйтесь этой памяткой. Варианты сред соответствуют структурам отображаемых формул, описанным в руководстве пользователя amsmath, разделы 3.3–3.7 и руководстве mathtools, раздел 3.4.2.
| Желаемый результат | Подходящая структура | Способ расстановки скобок |
|---|---|---|
| Открывающая скобка на первой строке, закрывающая — на последней | equation, содержащая split |
Скобки подходящих фиксированных размеров, например \Bigl[ и \Bigr] |
| То же расположение, но с автоматическим подбором размера для каждой строки | equation, содержащая split |
\left[ ... \right. перед \left. ... \right] |
| Одна пара высоких скобок вокруг выровненных строк | equation, содержащая aligned |
Поместите \left[ перед aligned, а \right] — после него |
| Одна пара высоких скобок вокруг ступенчатого продолжения | equation, содержащая multlined |
Подключите mathtools; поместите скобки снаружи multlined |
Для длинной суммы начните с первого варианта. Для компактного выражения, которое должно выглядеть как единый объект в скобках, попробуйте третий. Это редакторский выбор, определяющий, как читатель будет следить за выражением; приведённые ниже примеры помогут сравнить варианты, не меняя его алгебраического содержания.
Как продолжить выражение со скобками фиксированного размера?
В руководстве amsmath скобки фиксированного размера прямо рекомендуются как решение для случая, когда перенос строки прерывает пару \left–\right. Доступны такие пары размеров: \bigl/\bigr, \Bigl/\Bigr, \biggl/\biggr и \Biggl/\Biggr. См. разделы 4.14.1 и 10.2 руководства.
Ниже приведён полный документ. Квадратная скобка открывается в первой строке и закрывается во второй, поэтому в месте переноса видимых скобок нет.
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{equation}
\begin{split}
F(x) &= \Bigl[a_0+a_1x+a_2x^2+a_3x^3 \\
&\qquad {}+a_4x^4+a_5x^5\Bigr].
\end{split}
\end{equation}
\end{document}
В этом примере первый символ & задаёт выравнивание перед знаком равенства. Вторая строка начинается с соответствующего &, а затем идёт отступ. Для обеих видимых квадратных скобок используется одна и та же группа размеров. Перед переносом нет закрывающей скобки, а после него — открывающей.
Пустая группа в {}+ ничего не выводит; она сохраняет пробел между бинарными операторами перед знаком плюса в продолжении. При переносе слагаемых на другие строки сохраняйте этот знак, чтобы отображаемое выражение по-прежнему задавало нужную сумму.
Чтобы адаптировать пример, сначала замените члены многочлена, не трогая структурные команды. Затем проверьте, подходят ли скобки для самого высокого члена в каждой строке. Если вы добавили дробь, рассмотрите вариант с более крупной парой скобок. Меняйте обе скобки одновременно, а не только открывающую.
Как работают невидимые разделители при переносе строки?
Пара \left–\right не может непосредственно пересекать перенос строки или разделитель выравнивания. В документации предлагается обходной способ: закрывать каждый фрагмент нулевым разделителем — \right. или \left.. Точка обозначает невидимый разделитель, а не выводимую точку. См. объяснение ошибки отсутствующего правого разделителя в руководстве amsmath.
В этом полном примере используется дробь, чтобы было важно, как подбирается размер скобок:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{equation}
\begin{split}
G(x) &= \left[\frac{a_0+a_1x}{1+x^2}+a_2x^2\right. \\
&\qquad \left.{}+a_3x^3+a_4x^4
\vphantom{\frac{a_0+a_1x}{1+x^2}}\right].
\end{split}
\end{equation}
\end{document}
Рассмотрите расположение скобок построчно. В первой строке есть видимая открывающая скобка и невидимый закрывающий разделитель. Во второй — невидимый открывающий разделитель и видимая закрывающая скобка. Таким образом, каждая строка содержит полную пару разделителей.
Как сделать видимые скобки одинаковой высоты?
Автоматически подобранные скобки в отдельных парах могут иметь разный размер. В руководстве рекомендуется использовать \vphantom с самым высоким элементом из другого фрагмента, чтобы выровнять их по высоте. В этом примере во второй строке дробь повторяется внутри \vphantom; сама дробь при этом не отображается. См. раздел 10.2 документации amsmath.
Считайте эту фантомную конструкцию частью настройки макета. Если вы замените дробь в первой строке на более высокий элемент, обновите и фантомную конструкцию. Если при редактировании выражения это станет неудобно, вернитесь к скобкам фиксированного размера и оцените их вид в PDF.
Как заключить все строки в одну пару высоких скобок?
Пакет amsmath предоставляет aligned как внутренний строительный блок, который можно поместить внутрь более крупного выражения. Команды скобок расположите снаружи него. Тогда переносы строк будут относиться к заключённому в скобки блоку. Такое применение внутренних сред описано в разделе 3.7 документации amsmath.
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{equation}
H(x)=\left[
\begin{aligned}
&a_0+a_1x+a_2x^2 \\
&{}+a_3x^3+a_4x^4
\end{aligned}
\right].
\end{equation}
\end{document}
Здесь видимые скобки охватывают суммарную высоту двух строк. Сравните с предыдущими примерами, где каждая скобка стоит рядом с одной строкой. Выбирайте этот вариант, если хотите, чтобы заключённая в скобки сумма читалась как единый составной элемент, например рядом с другим множителем.
Когда использовать mathtools и multlined?
Для ступенчатого блока mathtools предоставляет multlined: первая строка начинается у левого края, а последняя заканчивается у правого. Также можно задать необязательную ширину. Пакет автоматически подключает amsmath. См. разделы 2 и 3.4.2 руководства mathtools.
\documentclass{article}
\usepackage{mathtools}
\begin{document}
\begin{equation}
J(x)=\left[
\begin{multlined}[c][0.65\linewidth]
a_0+a_1x+a_2x^2 \\
{}+a_3x^3+a_4x^4
\end{multlined}
\right].
\end{equation}
\end{document}
Ширина 0.65\linewidth выбрана для примера. После просмотра собственного выражения скорректируйте её, оставив место для левой части, скобок и номера уравнения. Явный перенос строки ставьте в подходящем месте с точки зрения алгебры.
Похожие названия обозначают разные среды: multline — внешняя отображаемая среда amsmath, а multlined — внутренний блок mathtools. Для показанного здесь вложения используйте multlined. В руководстве также описаны ограничения при вложении этой среды в массивы или варианты матриц; в этом примере она помещена непосредственно внутрь equation. См. раздел 3.4.2 руководства mathtools.
Как проверить результат на Mac?
Эти примеры предполагают, что у вас установлены LaTeX и редактор. В стандартной конфигурации TeXShop используются программы TeX, создающие PDF; в меню Help есть руководство пользователя TeXShop. См. страницу разработчика About TeXShop.
- Скопируйте один из полных документов выше в новый исходный документ TeXShop и сохраните его как
brackets.tex. - Выполните набор с помощью движка LaTeX. В TeXShop набор можно запустить сочетанием клавиш
Command-T, как указано в официальном документе об изменениях. - Проверьте в PDF выбранное расположение скобок, совпадение их высоты и читаемость знака продолжения.
- Замените примеры членов своим выражением, снова выполните набор и проверьте, помещается ли самая широкая строка в доступное пространство.
Примеры сверялись с документацией пакетов; для этой статьи они не компилировались, поскольку в исследовательской среде не было доступно компилятора LaTeX.
Если компиляция останавливается, сначала проверьте, не оставили ли вы видимую \left[ в одной строке, а соответствующую ей \right] — в другой. Затем сравните названия сред и строку подключения пакета с полным примером. Если компиляция проходит, но макет выглядит перегруженным, перенесите разрыв, прежде чем менять размер скобок.
Для большинства перенесённых сумм удобно начать со скобок фиксированного размера. Используйте невидимые разделители, когда полезен отдельный автоматический подбор размера для каждой строки, и вложенный блок aligned или multlined, если нужны высокие скобки вокруг всего выражения. В завершение проверьте PDF с реальными членами выражения, поскольку их высота и ширина определяют итоговый макет.
Источники
- Руководство пользователя пакета amsmath — Американское математическое общество и проект LaTeX.
- Пакет mathtools — Morten Høgholm, Lars Madsen и проект LaTeX3; размещено на CTAN.
- О TeXShop — проект TeXShop, Richard Koch.
- Изменения TeXShop — проект TeXShop, Richard Koch.