Как сломать длинное уравнение по линиям?
Я пытаюсь добавить уравнение в новую строку. Проблема в том, что уравнение слишком длинное для линии, и мне нужно разбить его вручную. В противном случае он просто накладывается на правый столбец или на правильные поля (и выглядит уродливым...).
Есть ли способ, которым LaTeX может тормозить уравнение для меня, так что кажется приятным?
Я прикрепляю свой латексный код:
\begin{align*}
f(n)-f(0) &= A(n)-B(n)-C(n)-D(n)\cdot d-\left(A(0)-B(0)-C(0)-D(0)\cdot d\right) \\
&= A(n)-0-X-D(n)\cdot d-\left(0-0-0-0\right) \\
&= A(n)-X-D(n)\cdot d
\end{align*}
Проблемная строка - это первая строка, которая слишком длинная.
Ответы
Ответ 1
Пакет breqn
предназначен для автоматического разделения длинных уравнений. Он работает очень хорошо в большинстве ситуаций, но не настолько зрелый, как пакет amsmath
. Вот как вы напишете свое примерное уравнение:
\documentclass{article}
\usepackage{breqn}
\begin{document}
\begin{dmath}
f(n)-f(0) = A(n)-B(n)-C(n)-D(n)\cdot d-\left(A(0)-B(0)-C(0)-D(0)\cdot d\right)
= A(n)-0-X-D(n)\cdot d-\left(0-0-0-0\right)
= A(n)-X-D(n)\cdot d
\end{dmath}
\end{document}
Обратите внимание, что нет разметки для выравнивания или новой строки, но вывод выглядит по существу таким же, как если бы вы использовали align
.
Ответ 2
Я обычно предпочитаю обрабатывать это, используя пакет amsmath
и используя структуру split
. Существует множество полезных структур для расщепления уравнений по линиям, но обычно это самый простой в использовании.
Многие установки TeX уже будут иметь пакет, но вы также можете получить его из веб-сайта AMS.
Ответ 3
Стандартным подходом, который я использовал в прошлом, является eqnarray
. См. Например на этой странице.
Ответ 4
Насколько я знаю, это невозможно. При работе внутри дисплея вы несете ответственность за разрывы строк. Как разбить строку и как продолжить на следующей строке в случае скобок, это сложный вопрос для людей (проверьте, например, соответствующий раздел в Grätzer, "Math into LaTeX" ), не говоря уже о компьютере.
Пример:
когда вы нарушаете первую строку после \left (вам нужно a\right. в конце и \left. в начале следующей строки (иначе вы получите сообщение об ошибке). Более того, вам нужно начать следующей строки, чтобы быть дальше права, чем скобка, созданная \left (