特定页面页脚中的图像

特定页面页脚中的图像

我想在大型文档的特定页面上(页脚左侧)添加一个小徽标。实现此目的的方法似乎是使用fancyhdr的可替换样式。

我已经接近我需要的了,但是我有两个问题:

  1. 新徽标页的页眉样式直接复制自 IHA-fancy-style,但我一直在逐章设置\lhead\rhead更改文本样式。我如何更改当前设置以将页眉也应用于新页面样式?

  2. thispagestyle当使用图形环境的参数将图像设置为使用整页时,我应该如何定位命令[p]?它似乎想要应用于页面之前或之后。

我希望这足够清楚,我正在努力解释我在脑子里想做什么,所以我不知道现在这是否有意义!

这是我目前所拥有的 MWE(请注意,如果有人尝试重新运行代码,则徽标有一个特定的文件路径)。

你应该看到此输出 PDF,带有 Logo 的页面缺少该章节/文档其余部分的页眉,并且不是带有图形的页面。

\documentclass[a4paper, oneside, 11pt]{report}
\usepackage[left=4cm, right=2cm, top=1.5cm, bottom=2.5cm]{geometry}
\usepackage{lipsum}
\usepackage{graphicx} 
\usepackage{fancyhdr} 
\headsep 25pt
\headheight 20pt
\setlength{\topmargin}{0pt}
\setlength{\textheight}{670pt}

\fancypagestyle{IHA-fancy-style}{%
  \fancyhf{}
  \fancyhead[LE,RO]{\slshape \leftmark}
  \fancyfoot[LE,RO]{\thepage\ } % Custom footer
  \renewcommand{\headrulewidth}{0.4pt}% Line at the header visible
  \renewcommand{\footrulewidth}{0.4pt}% Line at the footer visible
}

\fancypagestyle{augment}{%
  \fancyhf{}
  \fancyhead[LE,RO]{\slshape \leftmark}
  \fancyfoot[R]{\thepage\ } % Custom footer
  \fancyfoot[L]{\raisebox{-0.1cm}{\includegraphics[height=0.5cm, clip, trim={100 100 100 100}]{/path/to/mylogo.png}}
}
  \renewcommand{\headrulewidth}{0.4pt}% Line at the header visible
  \renewcommand{\footrulewidth}{0.4pt}% Line at the footer visible
}

\begin{document}

\pagestyle{IHA-fancy-style}
\lhead{\textsf{Chapter 1}}
\rhead{\textsf{My First Chapter}}
\lipsum[1]
\newpage

\lipsum[2]


\thispagestyle{augment}
\begin{figure}[p]
\includegraphics[width=\textwidth, height=\textwidth, clip, trim={0 0 0 0}, draft]{/path/to/dummy/image.png}
\end{figure}
\newpage

\lipsum[3]
\end{document}

编辑

下面的答案确实解决了我发布的最小案例的问题,但是当我将其带入完整文档时又引发了其他问题。

主要有2个问题:

首先,我可以正确排版文档一次,但是当第二次填充目录时,我收到了此错误:

Undefined control sequence.              # Pointing to my document.toc file
\f@ncycolh ->\sffamily \myleftmark       # I added sffamily to the header in the answer below, but its a valid command
                                   \strut 

它指向 ToC 文件中的这一行,但我看不出它具体有什么问题

\contentsline {subsection}{\numberline {3.3.2}Harvesting}{78}{subsection.3.3.2}

其次,当我包含附录章节(即使带有\pagetyle{plain})时,我收到此错误:

Use of \reserved@a doesn't match its definition.
\new@ifnextchar ...eseverd@d  = #1\def \reserved@a { 
                                                    #2}\def\reserved@vb {#3}\f...
 l.685  ...{Chapter \ref{appendix1}}

答案1

我进行了修改\@chapter,以自动设置\myleftmark章节编号和\myrightmark章节名称。

请注意,报告类别是单面的(默认),因此没有偶数页。

\documentclass[a4paper, oneside, 11pt]{report}
\headsep 25pt
\headheight 20pt
\usepackage[left=4cm, right=2cm, top=1.5cm, bottom=2.5cm]{geometry}

\usepackage{lipsum}
\usepackage[draft]{graphicx} 
\usepackage{fancyhdr} 

\newcommand{\myleftmark}{}% reserve global name
\newcommand{\myrightmark}{}% reserve global name

\fancypagestyle{IHA-fancy-style}{%
  \fancyhf{}% remove default
  \fancyhead[L]{\myleftmark}%
  \fancyhead[R]{\myrightmark}%
  \fancyfoot[R]{\thepage\ } % Custom footer
  \renewcommand{\headrulewidth}{0.4pt}% Line at the header visible
  \renewcommand{\footrulewidth}{0.4pt}% Line at the footer visible
}

\fancypagestyle{augment}{%
  \fancyhf{}% remove default
  \fancyhead[L]{\myleftmark}%
  \fancyhead[R]{\myrightmark}%
  \fancyfoot[R]{\thepage\ }% Custom footer
  \fancyfoot[L]{\raisebox{-0.1cm}{\includegraphics[height=0.5cm, clip, trim={100 100 100 100}]{/path/to/mylogo.png}}
}
  \renewcommand{\headrulewidth}{0.4pt}% Line at the header visible
  \renewcommand{\footrulewidth}{0.4pt}% Line at the footer visible
}
\pagestyle{IHA-fancy-style}

\usepackage{floatpag}
\floatpagestyle{augment}

\makeatletter
\let\@oldchapter=\@chapter
\def\@chapter[#1]#2{\@oldchapter[#1]{#2}%
  \xdef\myleftmark{Chapter~\thechapter}%
  \xdef\myrightmark{#2}%
}
\makeatother

\begin{document}

\chapter{My First Chapter}

\lipsum[1]
\newpage

\begin{figure}[p]
\includegraphics[width=\textwidth, height=\textwidth, clip, trim={0 0 0 0}, draft]{/path/to/dummy/image.png}
\end{figure}

\lipsum[2-16]

\end{document}

相关内容