5

I'm using KOMA-script to write a report, and need to adjust the amount of space for binding correction after having already prepared a final version. The problem is that when I change the BCOR value, it also changes the size of the text area (the downside of DIV). This results in text that should fit in a single page overflowing slightly to the next page, which I don't want for aesthetic reasons.

What is the best way to change the binding correction and still use the same text area dimensions? Should I just use the geometry package after calculating the dimensions?

Some context: I have been using BCOR=0mm because I want a one-sided electronic copy. I also want a double-sided printed copy, so there should be some space for binding. Ideally, I would like to be able to switch between these versions with minimal effort.

MWE:

\documentclass[twoside]{scrartcl}

\usepackage{lipsum}
\usepackage{showframe}

% Uncomment to add binding correction
% \KOMAoptions{BCOR=10mm}

\begin{document}
\lipsum
\end{document}

1 Answer 1

5

I think, you do not want to calculate text area and margins for a given DIV and BCOR but you want to place an already calculated text area on a page respecting some binding correction.

Starting from the one-sided document, you've talked about in your question:

\documentclass{scrartcl}

\usepackage{lipsum}% Only to get some dummy text.
\usepackage{showframe}% Only to show the areas of the page.

\begin{document}
\lipsum
\end{document}

that results in

single-side document

If you now add option twoside (as you've done in your MWE), only the margins are changed but not the text area:

two-side document

So switching from one-sided to two-sided or vice versa is not a problem.

Now, you can use \areaset to add some extra binding correction for a document with the same width of the text area and the same height of the text area:

\documentclass[
  areasetadvanced,% see scrguien for information
  twoside
]{scrartcl}

\areaset[10mm]{\textwidth}{\textheight}% add binding correction without changing the size of the text area

\usepackage{lipsum}% Only to get some dummy text.
\usepackage{showframe}% Only to show the areas of the page.

\begin{document}
\lipsum
\end{document}

two side with extra BCOR

As you can see, the size of the text area has not been changed, but the position on the page. That's all. See the KOMA-Script manual for more information about \areaset and how it works.

If you do not use the standard DIV but an explicit value, you can still use it before calling \areaset.

However, please note, the result is not optimal in the sense of the typographic principles used by \typearea and explained in the KOMA-Script manual (and moreover in appendix A of the German KOMA-Script book). The text area is to wide for the given page parameters. It is only the best, \areaset and package typearea can do for a given size of text area.

5
  • Apologies for not including a MWE. I've added one now based on your example. This is exactly the answer I was looking for. Thank you.
    – someguy
    Oct 10, 2018 at 9:48
  • Since the text area is just shifted, I suppose I should halve the length of BCOR if I want the outer margin to be double the inner margin, right?
    – someguy
    Oct 10, 2018 at 10:34
  • Sorry, I think it might be more complicated than that (just lost the chance to edit my previous comment). Edit: (2/3)b, where b is the original correction.
    – someguy
    Oct 10, 2018 at 10:40
  • Note that the binding correction is »the width of the area lost from the paper during the binding process« (see the documentation). This area is not part of the inner margin. The \areaset command in the answer above shifts the text area so, that the outer margin is twice the inner margin regarding of the resulting page width (ie difference between paper width and binding correction).
    – esdd
    Oct 11, 2018 at 9:37
  • @esdd: Ah, I see. That's good to hear, and nullifies what I previously said.
    – someguy
    Oct 11, 2018 at 13:59

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .