2

I have a long equation inside the scalebox. However, I can not force it to break between the pages. The code looks like this:

\scalebox{.95}{\parbox{\textwidth}{
\begin{align}
bla1 & bla2 \\
bla3 & bla4 \\
bla5 & bla6 \\
\end{align}
}}

How is it possible to enforce this code to break between two pages?

  • 2
    I don't believe it is possible. A box is just that: a box. – user139954 Dec 12 '17 at 0:29
  • @RobtAll, thank you for the comment. Is there an alternative solution? I mean if one wants to scale an equation in such a way that it breaks between the pages, what is the solution then? – QGravity Dec 12 '17 at 0:40
  • 2
    one possible approach is to set \allowdisplaybreaks in the preamble, create a group around the display with either braces or \begingroup ... \endgrouip, and set the size to \small (equivalent of 90% or 9pt) within that group, i can;t test this just now (no available latex installation), but i can do so tomorrow. in any case, putting it in a box of any kind will never allow a break. oh, \allowdisplaybreaks and related commands are documented in the amsmath user's guide (texdoc amsmath`). – barbara beeton Dec 12 '17 at 1:51
  • 1
    The adjustbox an experimental feature to break scaled boxes, but this splits it sometimes between lines, e.g. cut through letters. – Martin Scharrer Dec 12 '17 at 7:09
1

Rather than using a box, you can temporarily set the text size smaller before invocation of the align, with the \allowdisplaybreaks set. [after posting, I realize that this is precisely what Barbara suggests]

EDITED to insert a \par and a minus \vspace prior to the font-size change.

\documentclass{article}
\usepackage{amsmath,lipsum}
\textheight4.4in
\allowdisplaybreaks
\begin{document}
\begin{align}
bla1 & bla2 \\
bla3 & bla4 \\
bla5 & bla6 
\end{align}
\lipsum*[4]
{\par\vspace{-\dimexpr\baselineskip+\parskip\relax}
\small\begin{align}
bla1 & bla2 \\
bla3 & bla4 \\
bla5 & bla6 
\end{align}}\ignorespaces
\lipsum*[4]
{\par\vspace{-\dimexpr\baselineskip+\parskip\relax}
\scriptsize\begin{align}
bla1 & bla2 \\
bla3 & bla4 \\
bla5 & bla6 
\end{align}}\ignorespaces
\lipsum*[4]
\end{document}

enter image description here

  • Is the only purpose of the text size, so that it visually fits nicely? I assume so. Or, does \allowdisplaybreaks expect a text size change, as some kind of signal? – user139954 Dec 12 '17 at 2:29
  • 1
    @RobtAll Text size change here produces smaller results, akin to a \scalebox, but without the box. The completely separate command, \allowdisplaybreaks, allows multi-line equations in the align family to break midway, across page boundaries. – Steven B. Segletes Dec 12 '17 at 2:58
  • Please, try the same with \lipsum* and you’ll see that something needs a fix – egreg Dec 12 '17 at 7:07

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.