revtex4-2 제목의 그룹 작성자

revtex4-2 제목의 그룹 작성자

기사에 RevTex4-2를 사용하고 있습니다. 처음 세 명의 저자를 그룹화하고 마지막 저자를 두 번째 열에 배치하고 싶습니다. 명령 으로 \collaboration할 수 있어요. 그런데 처음 3명의 저자의 소속을 먼저 ​​표시하고 마지막 저자의 성명과 소속을 표시하는 것이 가능할까요?

\documentclass[prx,noshowpacs,twocolumn,superscriptaddress]{revtex4-2}

\usepackage{xpatch} 
\makeatletter
\xpatchcmd\@collaboration@present{(}{\medskip}{}{}
\xpatchcmd\@collaboration@present{)}{}{}{}
\makeatother

\begin{document}
    \title{Title}
    
    \author{Author1}
    \affiliation{Affiliation 1}
    \affiliation{Affiliation 2}
    
    \author{Author2}
    \affiliation{Affiliation 1}
    \affiliation{Affiliation 2}
    
    \author{Author3}
    \affiliation{Affiliation 1}
    \affiliation{Affiliation 2}
    \affiliation{Affiliation 3}
    
    \collaboration{}
    \author{Author4}
    \affiliation{Affiliation 4}
    \affiliation{Affiliation 5}
    
    \maketitle
    
\end{document}

나는 이와 같은 것을 달성하고 싶습니다. 여기에 이미지 설명을 입력하세요

답변1

이 답변의 해결책은 의심할 여지 없이 부작용이 많은 다소 지저분한 해킹입니다. 가장 좋은 방법은 기본 동작을 그대로 두는 것입니다.

그러나 여전히 이 작업에 관심이 있는 경우 다음은 \maketitle두 번 호출하는 접근 방식입니다. 먼저 첫 번째 저자 블록(바로 아래 소속)에 대해 호출한 다음 나머지 저자에 대해 다시 호출합니다.

Revtex4-2는 이후의 모든 정보 \maketitle(자체 정의 포함 \maketitle)를 삭제하므로 임시 명령에서 해당 정보를 보존해야 합니다. 또한 일반적으로 초록은 일부로 인쇄되므로 \maketitle처음에는 이를 억제하고 두 번째에는 다시 활성화해야 합니다. 간격을 조정해야 하며, 제목은 두 번째로 인쇄되어서는 안 됩니다.

MWE:

\documentclass[prx,noshowpacs,twocolumn,superscriptaddress]{revtex4-2}

\usepackage{xpatch} 
\makeatletter
\xpatchcmd\@collaboration@present{(}{\medskip}{}{}
\xpatchcmd\@collaboration@present{)}{}{}{}
\makeatother
\usepackage{lipsum}
\begin{document}
    \title{Title}

    \begin{abstract}
    This is the abstract
    \end{abstract}
    
    \author{Author1}
    \affiliation{Affiliation 1}
    \affiliation{Affiliation 2}
    
    \author{Author2}
    \affiliation{Affiliation 1}
    \affiliation{Affiliation 2}
    
    \author{Author3}
    \affiliation{Affiliation 1}
    \affiliation{Affiliation 2}
    \affiliation{Affiliation 3}

    \makeatletter
    % store affiliation, author macro definitions
    % before being cleared by first \maketitle
    \let\tmpaffiliation\affiliation
    \let\tmpauthor\author
    % store abstract macro definition before temporary clearing it
    % to prevent abstract being printed after first author block
    \let\tmpabstract\frontmatter@abstract@produce
    \let\frontmatter@abstract@produce\relax
    % prevent vertical space being added after first author block
    \let\frontmatter@finalspace\relax
    % print title and first author block
    \maketitle
    
    % restore definition of vertical space at end of author block
    \def\frontmatter@finalspace{\addvspace{18\p@}}
    % restore definitions of \maketitle, affiliation, author, abstract
    \let\maketitle\frontmatter@maketitle
    \let\affiliation\tmpaffiliation
    \let\author\tmpauthor
    \let\frontmatter@abstract@produce\tmpabstract
    % prevent printing title a second time
    \let\frontmatter@title@produce\relax
    \makeatother
    \author{Author4}
    \affiliation{Affiliation 4}
    \affiliation{Affiliation 5}
    % print second author block
    \maketitle
    
    \section{Introduction}
    \lipsum[1-5]
\end{document}

결과:

여기에 이미지 설명을 입력하세요

내가 고치려고 애쓰지 않았던 한 가지 부작용 FirstPage\titleblock@produce. 아마도 이를 제거할 수 있지만 두 번 xpatch전화하면 영향을 받는 다른 장부가 확실히 많으므로 \maketitle주의 깊게 확인하십시오.

관련 정보