我正在尝试使用手工制作的命令在插入 pdf 时自定义页眉和页脚:( \setlayout
3 个参数)
\includepdf[pagecommand={\setlayout{Left corner}{Center}{Right corner}}]{my file.pdf}
首先我尝试:
\documentclass[11pt,a4paper]{article}
\usepackage{pdfpages}
\newcommand{\setlayout}{3}
\thispagestyle{
\lhead{#1}
\chead{#2}
\rhead{#3}
}
\begin{document}
\includepdf[pages=-,pagecommand={\setlayout{Left corner}{Center}{Right corner}}]{my file.pdf}
\end{document}
但当然,它没有起作用。
所以我想创建一个灵活的(因为我将多次使用它)\setlayout
命令,以便仅在显示 pdf 的地方自定义页眉和页脚
答案1
这里有一个建议,使用包fancyhdr
来为所包含的页面定义自己的样式\includepdf
:
\documentclass[11pt,a4paper]{article}
\setlength\headheight{13.6pt}% as suggested by fancyhdr
\usepackage{mwe}% only for dummy text and example pdf page
\usepackage{pdfpages}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhead[C]{normal pages}
\fancypagestyle{pdfpages}{
\fancyhf{}
\fancyhead[L]{\pdfpagesheaderleft}
\fancyhead[C]{\pdfpagesheadercenter}
\fancyhead[R]{\pdfpagesheaderright}
}
\newcommand*\pdfpagesheaderleft{}
\newcommand*\pdfpagesheadercenter{}
\newcommand*\pdfpagesheaderright{}
\newcommand{\setlayout}[3]{\thispagestyle{pdfpages}%
\gdef\pdfpagesheaderleft{#1}%
\gdef\pdfpagesheadercenter{#2}%
\gdef\pdfpagesheaderright{#3}%
}
\begin{document}
\Blindtext
\includepdf[pages=-,
pagecommand=\setlayout{Left corner}{Center}{Right corner},
width=\textwidth,height=\textheight,keepaspectratio
]{example-image-a4.pdf}
\Blindtext
\end{document}