-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathexample28b.tex
137 lines (102 loc) · 3.76 KB
/
example28b.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
\documentclass{report}
\usepackage{lipsum}
\usepackage{boxedminipage}
\usepackage[paperwidth=16.5cm, paperheight=21cm, left=4cm, right=2cm]{geometry}
\usepackage{extramarks}
\usepackage{xcoffins}
\NewCoffin\LeftMark
\NewCoffin\RefPoint
%\DisplayCoffinHandles\RefPoint{blue}
%\DisplayCoffinHandles\LeftMark{red}
%
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhead[L]{\SetHorizontalCoffin\LeftMark{\firstxmark}%
\SetVerticalCoffin\RefPoint{0pt}{}%
\JoinCoffins*\RefPoint[l,b]\LeftMark[r,t](-10pt,-32.5pt)%
\TypesetCoffin\RefPoint[r,b](0pt,00pt)\rightmark}
\fancyfoot[R]{\lastxmark}
\fancypagestyle{plain}{\fancyhead{}\renewcommand{\headrule}{}}
\renewcommand{\chaptermark}[1]{\markboth{\thechapter. #1}{}}
\renewcommand{\sectionmark}[1]{\markright{\thesection. #1}}
\newenvironment{continued}{%
\par
\extramarks{}{}%
\noindent\rule{\textwidth}{1mm}%
\extramarks{Continued\ldots}{Continued on next page\ldots}%
\\*\ignorespaces
}{%
\unskip\noindent\rule{\textwidth}{1mm}%
\extramarks{Continued\ldots}{}%
\extramarks{}{}\par
}
\begin{document}
\pagenumbering{roman}
\tableofcontents
\thispagestyle{plain}
\noindent
\begin{boxedminipage}{\textwidth}
This is example 28b ****NOT**** in the fancyhdr documentation.
It demonstrates the use of the \texttt{extramarks} package to implement
a ``Continued\ldots'' header/footer.
However, in this example the ``Continued\ldots'' header is put in the margin, and the left header contains the section title. The width of the document is increased to make the margin wider. These are the only differences with Example 27.
This example is a variant of Example 28, in that instead of a \texttt{picture} environment, we use the \texttt{xcoffin} package. This is an interesting exercise, but I think the \texttt{picture} environment is easier.
It defines a \texttt{continued} environment that puts \verb|\extramarks| commands around its body to force the proper header and footer when the body crosses a page boundary, and empty ones when it doesn't cross them.
\begin{verbatim}
\fancyhead[L]{\setlength{\unitlength}{\baselineskip}%
\begin{picture}(0,0)
\put(-2,-3){\makebox(0,0)[r]{\firstxmark}}
\end{picture}\rightmark} % \rightmark = section title
\fancyfoot[R]{\lastxmark}
\fancypagestyle{plain}{
\fancyhead{}\renewcommand{\headrule}{}}
. . . .
\newenvironment{continued}{%
\par
\extramarks{}{}%
\noindent\rule{\textwidth}{1mm}%
\extramarks{Continued\ldots}%
{Continued on next page\ldots}%
\\*\ignorespaces
}{%
\unskip\noindent\rule{\textwidth}{1mm}%
\extramarks{Continued\ldots}{}%
\extramarks{}{}\par
}
\end{verbatim}
\end{boxedminipage}
\pagestyle{fancy}
\newpage
\pagenumbering{arabic}
\chapter{Introduction}
\lipsum[1-4]
\section{The Problem}
\label{sec:problem}
\begin{continued}
\textbf{We want to indicate that this block of text belongs together, with
`Continued' in header and footer.}
\textit{This block crosses one page boundary.}
\lipsum[2] %\lipsum
\textbf{Here ends the block of text that belongs together.}\\
\end{continued}
\section{Evaluation}
\lipsum[3]
\begin{continued}
\textbf{We want to indicate that this block of text belongs together, with
`Continued' in header and footer.}
\textit{This block crosses several page boundaries.}
\lipsum[2-7]
\textbf{Here ends the block of text that belongs together.}\\
\end{continued}
\chapter{Another chapter}
\label{cha:another-chapter}
\lipsum[2]
\begin{continued}
\textbf{We want to indicate that this block of text belongs together, with
`Continued' in header and footer if it crosses a page boundary.}
\textit{This block stays within a page. Therefore no header/footer.}
\textbf{Here ends the block of text that belongs together.}\\
\end{continued}
\section{Another section}
\lipsum[3-4]
\end{document}