在回忆录中使用 adjustwidth* 更改文本宽度

在回忆录中使用 adjustwidth* 更改文本宽度

我使用memoir不相等的左右边距,并且在使用adjustwidth*环境获取索引中具有相等边距的三个等距列时遇到问题。根据memoir手动的(2011/03/06 最新版本第 144 页底部),跨页更改无法正确更改。也就是说,如果奇数页(正面)的右(外)边距向外移动,则下一页(偶数页/反面)也会发生同样的情况。但这不是我需要的。

memoir此外,我对手册中 (第 340 页)changepage包含与 memoir 相同的代码,但\changetext提供的命令在 memoir 中不可用这一事实感到有些困惑changepage。目前,在我看来,\changetext提供的命令changepage就是我需要使用的,但我想知道是否有办法在内部完成所有这些操作而memoir无需额外的包。

答案1

首先,您必须考虑在文档中间更改边距的影响。是否有必要在文档中间对布局进行这样的更改?

目前,据我所知,这是不可能的,需要额外的软件包。Marco Daniel 在他的回答中提供了一种解决方法如何在两种边距大小之间切换?- 它使用mdframed包裹具有类似名称的环境。他的fullwidth包裹也可能对此感兴趣。

或者,鲍里斯adjmulticol包裹了解双面边距,并可能为您的问题提供解决方案。从adjmulticol文档

书籍设计师的常见要求之一是能够更改页面中间文本的边距。标准 LaTeXlist环境正是这样做的。因此,许多软件包创造性地使用此工具来更改布局也就不足为奇了。一个例子是changepage 包裹。不幸的是,这种方法有一个严重的缺点:列表会全局设置页边距。如果材料在页面之间分开,则第一页上的页边距会在所有后续页面上重复。虽然这对于单面打印来说没问题,但对于双面打印来说,这会导致灾难性的后果,[...]

为了解决这个问题,我们需要一个完全不同的方法:我们需要改变输出例程。这个包已经完成了。

由于特殊布局的文本经常以多列模式排版,因此我们加载multicol 包裹并对其进行修补以提供两项更改:

  1. 页边距会发生变化,并在页面上保持不变。
  2. 单列\multicolumn布局的可能性。当然,这种布局在原始 multicol包的上下文中没有意义,但在边距改变时很有用。

相关内容