\section{}内で\boldsymbol{}を使っているときに,hyperrefパーケージを有効にするとエラーが発生します.
添付の,test-hyperref.texで,"\usepackage{hyperref}"をコメントアウトしているときは全ての文章がコンパイルできて表示できます.
しかし,コメントアウトを外して\usepackage{hyperref}を有効にすると,最後の"\section{テスト$\boldsymbol{X}$"でエラーが発生します.
hyperrefパッケージは,\section{}内の$\boldsymbol{X}$と両立しないようですが,解決策があればご教示ください.
Re: \section{}内で$\boldsymbol{X}$が存在するとyperrefパッケージが使えない
\usepackage{hyperref}
のとき、
\texorpdfstring{LaTeX内の文字列}{PDF栞内の文字列}
というコマンドが使えるようになります。
したがいまして、該当箇所は、
\section{テスト\texorpdfstring{$\boldsymbol{X}$}{𝑿}}
と書けばよいことになります。
----------
余談:
bmパッケージにおいて、
1. \bmをロバストなコマンドとして定義しています。
2. \boldsymbolコマンドは\bmコマンドとなります。
このとき、\tableofcontentsによる目次(.toc)内およびhyperrefによるPDF栞(.out)内には、それぞれ\bm{X}の文字列が入ります。
ところがPDF栞内で\bm{X}はplainな文字列でないので、\bm{X}をどうにかする必要があります。
上記のように\texorpdfstringを使うと、LaTeX文章内で本件を解消できます。
ほかの方法としては、PDF栞に対するhook内で\bmコマンドをどのような文字に開くのか教えてあげると、上述の\texorpdfstringを使わなくても、本件のエラーに遭遇しないようにもできます。
Re: \section{}内で$\boldsymbol{X}$が存在するとyperrefパッケージが使えない
Re: \section{}内で$\boldsymbol{X}$が存在するとyperrefパッケージが使えない
munepi様
1.\texorpdfstringで解決できました.ありがとうございます.
2.最後の{}に入れる文字は何でもいいように見えます.添付の,test-hyperref_texorpdf.texで2つの書き方を調べましたが,両方とも意図したとおりに表示されました.\subsection{技術面の到達可能領域\footnote{本説と次の「面移動」の2節では,図を簡単にするために\texorpdfstring{$\boldsymbol{C}$}{C}と\texorpdfstring{$\boldsymbol{\hat{C}}$}{\hat{C}} を区別しない.}}
\subsection{技術面の到達可能領域\footnote{本説と次の「面移動」の2節では,図を簡単にするために\texorpdfstring{$\boldsymbol{C}$}{C}と\texorpdfstring{$\boldsymbol{\hat{C}}$}{C} を区別しない.}}%最後はCのまま
3.ところが,test用で成功したコード
\subsection{技術面の到達可能領域\footnote{本説と次の「面移動」の2節では,図を簡単にするために\texorpdfstring{$\boldsymbol{C}$}{C}と\texorpdfstring{$\boldsymbol{\hat{C}}$}{\hat{C}} を区別しない.}}
を,本番論文用のファイルの該当箇所にコピーしてコンパイルするとエラーが発生しました.
原因がわかりません.preumbleで色々なパッケージを導入しているので,干渉しているのでしょうか.本番論文で使っているpreumbleファイルをアップします.もし何かわかりましたらご教示ください.