我目前正在从事几个项目,其中从文本文件中读取作者。我还使用 fancyhdr 在标题中显示作者。如果只有 2 或 3 名贡献者,这种方法效果很好,但如果贡献者更多,文本就会开始重叠。
重叠还取决于文档标题,如左侧所示。
有没有办法检测文本是否重叠,如果重叠,则使用后备文本(URL)代替作者?
目前标头规范如下:
\usepackage{fancyhdr} % Fancy headers
% Capture title and author
\makeatletter
\let\Title\@title
\let\Author\@author
\makeatother
% Fancy headers configuration
\pagestyle{fancy}
\fancyhead{} % Clear all header fields
\fancyhead[LO,LE]{\bfseries \Title}
\fancyhead[RO,RE]{\Author}
\fancyfoot{} % Clear all footer fields
\fancyfoot[CO,CE]{Page \thepage}
\renewcommand{\headrulewidth}{0.3pt}
\renewcommand{\footrulewidth}{0pt}
答案1
我会说
\makeatletter
\let\Title\@title
\let\Author\@author
\normalfont\sbox0{\normalfont\Title\quad\Author}
\ifdim\wd0>\textwidth\def\Author{<whatever>}\fi
<whatever>
如果标题和作者列表之间没有至少四分之一空格,则使用此选项。