マクロからの PDF メタデータの定義が外部 .tex ファイルでは機能しない

マクロからの PDF メタデータの定義が外部 .tex ファイルでは機能しない

ファイルは 2 つあります。メインの tex ファイルと、いくつかの定義を含むファイル (.sty ファイルではなく、別の .tex ファイル) です。

\@title-commandを使用して -macrosから PDF メタデータを設定しようとすると\AtBeginDocument(ただし、外部ファイルで定義されます)、次のようなエラーが発生します。

Package hyperref Warning: Token not allowed in a PDF string (PDFDocEncoding): (hyperref) removing `\spacefactor' on input line 14.
Package hyperref Warning: Token not allowed in a PDF string (PDFDocEncoding): (hyperref) removing `\@m' on input line 14.

メタデータは「タイトル」だけです。ただし、コードをメイン ファイルに配置すると、期待どおりに動作します。mwe は次のようになります。


% main file
\documentclass{scrartcl}

\input{externalfile.tex}

\title{This is a test}

% WORKS
% \makeatletter
% \hypersetup{
%     pdftitle={\@title}
% }
% \makeatother

\begin{document}
    test
\end{document}

% external file
\usepackage{hyperref}

% DOESN'T WORK
\AtBeginDocument{
    \makeatletter
    \hypersetup{
        pdftitle={\@title}
    }
    \makeatother
}

どのようなアイデアでも歓迎します。ただし、外部ファイルを .tex ファイルのままにしておきたいです (.sty ファイルには切り替えません。これで何か違いが出るかどうかはわかりません)

関連情報