我对自定义章节样式有特殊问题。基本上我的章节标题在左边页面,则右侧页面上方会出现一张图片(波浪,见下文),图片下方开始章节内容(bla ble bli blo)。
+--------+--------+
| |~~~~~~~~|
| Ch. 6 |~~~~~~~~|
| | |
| |bla ble |
| |bli blo |
+--------+--------+
我已经通过修改\chapter{}
左页让它工作了,然后
\newpage
\ThisULCornerWallPaper{1.0}{waves}
\phantom{placeholder}
\vspace{200pt}
然后开始章节内容。
问题是浮动对象不知道右上角区域对它们来说是禁忌,所以我可能会得到:
+--------+--------+
| |~[ ]~|
| Ch. 6 |~[Fig1]~|
| | |
| | |
| |bla ble |
+--------+--------+
因此,{figure}
首先是占位符\vspace
,然后是内容。
我一直在寻找两种解决方案,但没有成功:
A) 防止第一页出现浮动。我不知道如何在不影响整个文档(即浮动)或手动将第一个浮动设置为的情况下做到这一点[b]
。我还没有找到一种方法来告诉浮动只是避开某个页面或某个区域。
B)仅为此页面设置顶部边距。我研究了geometry
软件包,即
\newgeometry{top=300pt}
\restoregeometry
但这不起作用。首先,\newgeometry
使用\clearpage
,但我不需要清除页,我只想更改一个页边距。我删除了清除页并制作了自己的\newcommands
,但是...
\newsamepagegeometry{top=300pt}
\restoresamepagegeometry
...不起作用,因为它同时设置和取消设置当前页的页边距,而不是设置当前页的页边距并取消设置下一页的页边距。
所以我尝试了\afterpage{...}
,但似乎有一个已知(或至少观察到)的问题阻止了
\newsamepagegeometry{top=300pt}
\afterpage{\restoresamepagegeometry}
无法工作,而手动放置\restoresamepagegeometry
下一页文本则工作正常。上面的代码显然\restoresamepagegeometry
根本没有执行,因此几何形状在top=300pt
文档的其余部分保持不变。
任何解决方案或寻找方法的想法都将不胜感激。
答案1
你的章节标题可以和 article.cls 做同样的\maketitle
事情
\global\@topnum\z@ % Prevents figures from going at top of page.
该设置是全局的,但仅影响当前页面。根据上下文,您可能需要使用\makeatletter ... \makeatother
。