pagebackref に記事の準備中にエラーが表示される

pagebackref に記事の準備中にエラーが表示される

の使用中にエラーが発生しますpagebackref=true。 を使用しない場合pagebackref=true、プログラムは期待どおりに動作します。 これは、Central European Journal of Computer Science の記事です。 の他の代替手段はありますかpagebackref?

ページバック参照の使用中にエラーが発生しました

答え1

おそらく、クラスはパッケージをすでにロードしていますhyperref。LaTeX はパッケージを 2 回ロードできません ( や の仲間を考えてください)。したがって、LaTeX はまたはの\newcommandロード部分をスキップします。最小パッケージ バージョンを要求する末尾のオプション引数のみをチェックします。そして、オプションを調べます。LaTeX はパッケージ オプションを理解しており、これは「機能」と説明できます。後者のオプションがパッケージの最初のロード時にすでに存在する場合、LaTeX は満足します。ただし、以前に指定されていない新しいオプションが少なくとも 1 つある場合、LaTeX はユーザーが新しい「機能」を望んでいると考えますが、パッケージから独立したオプションをロードできないため、エラー メッセージをスローします。\usepackage\RequirePackage\usepackage

回避策:

  • 指定全て必要なオプションは、最初の\usepackage(または\RequirePackage) にあります。オプション衝突エラー メッセージのヘルプ テキストにリストされています。

  • パッケージの最初の呼び出しはクラスまたは別のパッケージ内に隠すことができます。オプションを直接指定することはできません。\PassOptonsToPackageヘルプ:

    \PassOptionsToPackage{pagebackref=true}{hyperref}
    \documentclass[CEJCS,PDF]{cej}
    

    すると、この行は\usepackage[pagebackref=true]{hyperref}エラーなしで動作します。また、クラスがロードを忘れたり、依存関係を明示的にしたりする\usepackage{hyperref}場合に備えて、この行を削除したり、短縮したりすることもできます。cejhyperref

  • 一部のクラス (パッケージ) では、クラスによってロードされたパッケージに追加のオプションを渡すための特別なオプション (例:hyperrefクラスのオプション) が提供されますbeamer

関連情報