删除作者的隶属关系

删除作者的隶属关系

我在修改后的 LaTeX 报告类上使用该authblk包,并且需要在每一页上将作者显示为脚注,不显示隶属关系(仍在标题页上显示隶属关系)。问题是,当我\@author在修改后的类上使用该命令时,它会显示作者和隶属关系索引。有什么办法可以删除它吗?

班级代码:

\ProvidesClass{ThesisClass}
\LoadClass[twoside,11pt,a4paper]{report}
\usepackage[noblocks]{authblk}                                  
% redefine \author command
\def\@author{}
\renewcommand\@author{\ifx\AB@affillist\AB@empty\AB@author\else
      \ifnum\value{affil}>\value{Maxaffil}\def\rlap##1{##1}%
    \AB@authlist\\
    \else  \AB@authors\fi\fi}

% Define \institutes command    
\def\@institutes{}
\renewcommand\@institutes{\AB@affillist}
%   HEADERS AND FOOTERS
\usepackage{fancyhdr}
    \fancyfoot{} 
\fancyfoot[R]{\@author}

我定义命令的原因之一\institutes是能够设置一个\supervisors可以与作者共享从属关系的命令。

答案1

完整的作者列表存储在 中\AB@authlist,而上标所属机构由 提供\textsuperscript(请注意尾随空格!)。因此,您可以使用\printauthorlist

\newcommand{\printauthorlist}{{%
  \expandafter\let\csname textsuperscript \endcsname\@gobble% Remove \textsuperscript 
  \AB@authlist}% Print list
}

它暂时设置\textsuperscript\@gobble,这只会吞噬其参数(从而删除上标符号)。

以下是完整的 MWE:

在此处输入图片描述

\documentclass{article}
\usepackage[noblocks]{authblk}% http://ctan.org/pkg/authblk
\usepackage{fancyhdr}% http://ctan.org/pkg/fancyhdr
\makeatletter
\newcommand{\printauthorlist}{{%
  \expandafter\let\csname textsuperscript \endcsname\@gobble% Remove \textsuperscript 
  \AB@authlist}% Print list
}
% Define \institutes command    
\def\@institutes{}
\renewcommand\@institutes{\AB@affillist}
%   HEADERS AND FOOTERS
\renewcommand{\headrulewidth}{0pt}% No header rule
\fancyfoot{}% Clear footer
\fancyfoot[R]{\printauthorlist}
\pagestyle{fancy}
\makeatother
\title{Title}
\author{author1}\author{author2}\affil{affil1}
\author{author3}\author{author4}\affil{affil2}
\begin{document}
\maketitle\thispagestyle{fancy}

This is some text.
\end{document}

您需要使用\csname textsuperscript \endcsname来捕获控制序列定义中的尾随空格。

答案2

好的,找到了一个解决方案,但不确定是否最正确,并且仍然不明白为什么它有效......

我更换了

\fancyfoot[R]{\@author}

\fancyfoot[R]{\AB@author}

相关内容