Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

I'm trying to figure out how to set up custom page layout in memoir. below is a page I set up in InDesign and transferred the dimensions into a minimal memoir document.

I just can't figure out why it's not working.

\documentclass{memoir} 

\setstocksize{477pt}{315pt}
\settrimmedsize{477pt}{315pt}{*}
\settrims{0pt}{0pt}
\settypeblocksize{420pt}{252pt}
\setlrmargins{39pt}{24pt}
\setulmargins{30pt}{27pt}
\setheadfoot{10pt}{10pt}
\setheaderspaces{20pt}{10pt}

\checkandfixthelayout
\usepackage{lipsum}

\begin{document}
\lipsum

\end{document}

here are the error messages:

./memtest:7: LaTeX Error: Missing \begin{document}. [\setlrmargins{3]
./memtest:9: Class memoir Error: The combination of argument values is ambiguous. [\setheadfoot]
./memtest:11: Paragraph ended before \setfillsize was complete. []
./memtest:11: Too many }'s. []
./memtest:13: Class memoir Error: \spinemargin (109.26999pt) and/or \textwidth (252.0pt) and/or \foremargin (164.02501pt) are too >large for \paperwidth (315.0pt) by 210.295pt. [\usepackage]>
./memtest:13: Class memoir Error: \headheight (420.0pt) and>/or \headsep (0.0pt) are too large for \uppermargin (0.0pt) by 420.0pt.> [>\usepackage]>

[Done!]
share|improve this question
    
I'll write something longer in a little while, but \setlrmargins takes three arguments, two of which should be a *. The two lines with trimmed are unnecessary –  daleif Feb 3 at 11:10
add comment

1 Answer 1

up vote 5 down vote accepted

You are forgetting all of the * arguments, they are well described in the manual. For example

\settrimmedsize{height}{width}{ration}

has to have one * as the rest will then be calculated from it. You can use this to say that the width should be some ratio (e.g., the golden ratio) of the height.

On the other hand the the combination of \settypeblocksize and say \setlrmargins leaves you with two * arguments for \setlrmargins, because, you know the paperwidth and the text width, thus you can only set one of the spine or outer margin, the other will then be given.

One problem is that users often forget to match the sizes for the headers and footers such that they fit within the spaces given, memoir does not auto calculate this (haven't found a algorithm for it).

Here is a version of your code with the added *'s. You will probably get some

Overfull \vbox (2.0pt too high) has occurred while \output is active [2]

warnings, these some from the fact that your headheight is too small for 10pt.

\documentclass{memoir} 

\setstocksize{477pt}{315pt}
\settrimmedsize{477pt}{315pt}{*}
\settrims{0pt}{0pt}
\settypeblocksize{420pt}{252pt}{*}
\setlrmargins{39pt}{*}{*}
\setulmargins{30pt}{*}{*}
\setheadfoot{10pt}{10pt}
\setheaderspaces{20pt}{*}{*}
\checkandfixthelayout
\usepackage{lipsum}

\begin{document}
\lipsum

\end{document}
share|improve this answer
    
Thanks so much. I'm so use to just setting things up in a page layout program that getting use to this method is a bit crazy making. –  theobear Feb 3 at 11:57
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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