我有这个标题
\def\@oddhead{\vbox{\vss\centerline{\color{gray}\small { \bf \texttt{Article
published in \textit{\thejournalname}. doi: 10.1029/2019False1234 \newline \textcopyright 2020 American Foo Bar. All Rights Reserved} } }\vskip24pt } }
\let\@evenhead\@oddhead
}
问题是不起作用\newline
,因此标题出现在一行中。
有什么方法可以强制在中换行吗\vbox
?
答案1
您正在尝试在 中进行换行\centerline
,但这是不允许的。
你可能会
\makeatletter
\def\@oddhead{%
\vbox to \headheight{
\vss
\color{gray}\small\bfseries\ttfamily
\centerline{Article published in \textit{\thejournalname}. doi: 10.1029/2019False1234}
\centerline{\textcopyright 2020 American Foo Bar. All Rights Reserved}
}%
}
\let\@evenhead\@oddhead
\makeatother
但使用\parbox
更容易。
\documentclass{article}
\usepackage{xcolor,lipsum}
\pagestyle{headings}
\makeatletter
\def\@oddhead{%
\parbox[b][\headheight]{\textwidth}{
\centering\color{gray}\small\bfseries\ttfamily
Article published in \textit{\thejournalname}. doi: 10.1029/2019False1234\\
\textcopyright 2020 American Foo Bar. All Rights Reserved
}%
}
\let\@evenhead\@oddhead
\makeatother
\providecommand{\thejournalname}{Foo Journal}
\begin{document}
\lipsum[1-20]
\end{document}
笔记。标准字体没有粗体打字机字体。由于不知道原帖作者使用的字体,所以我留下了声明\bfseries
。