我使用memoir
带有选项openright
和的文档类twoside
。但是,由于文档将打印在普通纸上而不是装订成书,我希望左右边距相同(同时仍在奇数页上打开章节和部分)。
我如何实现这个目标?
答案1
最简单的方法是将水平边距比率设置为 1:1,然后memoir
重新计算并应用它:
\setlrmargins{*}{*}{1}
\checkandfixthelayout
的参数\setlrmargins
是书脊边距、书口边距和比率,如果您省略一个值而只写入*
它将被计算。
如果你不喜欢使用memoir
命令来指定页面尺寸,你可以查看原始代码,了解如何根据选项设置边距twoside
。原来是这样的:
\if@twoside
\setlength\@tempdima {\paperwidth}
\addtolength\@tempdima {-\textwidth}
\setlength\oddsidemargin {.4\@tempdima}
\addtolength\oddsidemargin {-1in}
\setlength\marginparwidth {.6\@tempdima}
\addtolength\marginparwidth{-\marginparsep}
\addtolength\marginparwidth{-0.4in}
\else
\setlength\@tempdima {\paperwidth}
\addtolength\@tempdima {-\textwidth}
\setlength\oddsidemargin {.5\@tempdima}
\addtolength\oddsidemargin {-1in}
\setlength\marginparwidth {.5\@tempdima}
\addtolength\marginparwidth{-\marginparsep}
\addtolength\marginparwidth{-0.8in} % don't know why this isn't .4
\fi
因此,您可以在序言中完成所需的部分:
\documentclass[openright,twoside]{memoir}
\usepackage[english]{babel}
\usepackage{blindtext}
\makeatletter
\setlength\@tempdima {\paperwidth}
\addtolength\@tempdima {-\textwidth}
\setlength\oddsidemargin {.5\@tempdima}
\addtolength\oddsidemargin {-1in}
\setlength\marginparwidth {.5\@tempdima}
\addtolength\marginparwidth{-\marginparsep}
\addtolength\marginparwidth{-0.8in} % don't know why this isn't .4
\setlength\evensidemargin\oddsidemargin
\makeatother
\begin{document}
\blindtext[15]
\chapter{test}
\end{document}
我另外将\evensidemargin
其设置为\oddsidemargin
。通过此示例,您将看到对称的页面布局,第 4 页为空,第 1 章从第 5 页开始,这很奇怪。
答案2
浏览手册后memoir
,我找到了完全符合我要求的代码。如果其他人也遇到同样的问题,我会在此处附上代码:
% Set margins to equal length
\newlength{\marginwidth}
\setlength{\marginwidth}{1.5in}
\setlrmarginsandblock{\marginwidth}{\marginwidth}{*} % Specify both margins
\setlrmarginsandblock{\marginwidth}{*}{1} % Specify spine & fore-edge/spine
% ratio
\setlrmarginsandblock{\marginwidth}{*}{*} % Specify spine (fore-edge = spine)
\setlrmarginsandblock{*}{\marginwidth}{1} % Specify fore-edge & spine/fore-edge
% ratio
\setlrmarginsandblock{*}{\marginwidth}{*} % Specify fore-edge
% (spine = fore-edge)
\checkandfixthelayout
答案3
我认为一个更简单的解决方案是:
\documentclass{memoir}
%%% set up the recto page layout
\checkandfixthelayout %or perhaps \checkandfixthelayout[lines]
\setlength{\evensidemargin}{\oddsidemargin}% after \checkandfix......
来源:回忆录文献类手册第 25 页(侧边距部分)。
答案4
我觉得最清晰方法是使用geometry
包:
\documentclass{memoir}
\usepackage[margin=2cm}{geometry}
\usepackage{blindtext}
\begin{document}
\blindtext[15]
\chapter{test}
\end{document}
这是我的文档,我很疑惑“为什么两个边距相同?”