如果发生重叠,则在标题中回退文本

如果发生重叠,则在标题中回退文本

我目前正在从事几个项目,其中从文本文件中读取作者。我还使用 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>如果标题和作者列表之间没有至少四分之一空格,则使用此选项。

相关内容