引用や図の参照を含むテキストを強調表示するにはどうすればよいでしょうか?

引用や図の参照を含むテキストを強調表示するにはどうすればよいでしょうか?

参照付きのテキストを強調表示しようとしています。参照がない場合、以下は正常に機能します。引用と図の参照を含むテキストを強調表示する方法を知っている人はいますか? MWE は以下に記載されています。ご協力いただければ幸いです。

\documentclass{article}

\usepackage{xcolor}
\usepackage{soul}

\newcommand{\hlc}[2][yellow]{{%
    \colorlet{foo}{#1}%
    \sethlcolor{foo}\hl{#2}}%
}



\begin{document}

\hlc[pink]{hello given by mattsson et al \cite{mattsson1998physical}}

\hlc[cyan!50]{hello}

\end{document}

答え1

soul パッケージ ( \usepackage{soul}) は、\hlテキストを強調表示するためのコマンドを提供します。ただし\cite\refは と互換性がなく、 が適切に機能するには\hl内に配置する必要があります。 により、 soul はコンテンツを 1 つの項目として認識することもできます。\mbox\hl\mbox

を使用することができます\mbox

\hl{\mbox{\cite{roohani2019numerical}}

同時に、参考文献リスト内の参照を強調表示したい場合は、参考文献ファイル内で参照に注釈を付ける必要があります。例:

@article{roohani2019numerical,
title={\hl{Numerical study and sensitivity analysis on convective heat 
transfer enhancement in a heat pipe partially filled with porous material 
using LTE and LTNE methods}},
author={\hl{Roohani Isfahani, Seyed N and Salimpour, Mohammad R and Shirani, 
Ebrahim}},
journal={\hl{Heat Transfer—Asian Research}},
volume={\hl{48}},
number={\hl{8}},
pages={\hl{4342--4353}},
year={\hl{2019}},
publisher={\hl{Wiley Online Library}}
}

詳細については、soul パッケージのドキュメントを参照してください。 ソウルパッケージドキュメント

答え2

ハイライト表示にはパッケージを使用できますlua-ul。この方法なら、テキスト内の引用や相互参照について心配する必要がありません。

% !TeX TS-program = lualatex

\documentclass{article}

\usepackage{luacolor}
\usepackage{lua-ul}

\begin{filecontents*}[overwrite]{\jobname.bib}
@article{einstein,
    author = {Einstein, A.},
    title = {{Die Grundlage der allgemeinen Relativitätstheorie}},
    journal = {Annalen der Physik},
    volume = {354},
    number = {7},
    doi = {10.1002/andp.19163540702},
    pages = {769--822},
    year = {1916}
}
\end{filecontents*}

\begin{document}

\begin{figure}
\caption{}
\label{fig}
\end{figure}

\highLight[red]{hello given by mattsson et al \cite{einstein} and Figure~\ref{fig}.}

\highLight[green]{hello}

\bibliographystyle{apalike}
\bibliography{\jobname}

\end{document}

ここに画像の説明を入力してください

答え3

soul パッケージ ( \usepackage{soul}) を使用して、コマンド内で中括弧内に参照または引用を作成できます\hl

\hl{Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Curabitur dictum {\cite{your citation}} or {\ref{your reference}} gravida mauris.} 

関連情報