以下 MWE 应该可以证明该问题:
\documentclass[12pt]{article}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@book{companion,
author = {Goossens, Michel and Mittelbach, Frank and Samarin, Alexander},
title = {The {LaTeX} Companion},
date = 1994,
edition = 1,
publisher = {Addison-Wesley},
location = {Reading, Mass.},
pagetotal = 528,
langid = {english},
langidopts = {variant=american},
sorttitle = {LaTeX Companion},
indextitle = {LaTeX Companion, The},
shorttitle = {LaTeX Companion},
}
\end{filecontents}
\usepackage[english]{babel}
\usepackage[autolang=other,
style=alphabetic,
backend=biber,
%backref=true,
]{biblatex}
\addbibresource{\jobname.bib}
\usepackage{tikz}
\usepackage[pdfencoding=auto,
final=true,
colorlinks=true,
citecolor=yellow,
% linkcolor=blue,
% anchorcolor=purple,
% urlcolor=green,
]{hyperref}
\begin{document}
\begin{tikzpicture}
\node[draw, rectangle,
minimum height=100mm,
text width=10cm,
align=center,
fill=black,
text=white,] {\huge
%\hypersetup{citecolor=green}
Hello World!
\cite[p. 100]{companion}
Where am I? %you are there, but invisible due to wrong text color
\textcolor{white}{Ahh, hello again!}
};
\end{tikzpicture}
\noindent
I have two problems:
\begin{enumerate}
\item
Manually resetting the textcolor is inefficient and
\item
even if the textcolor is reset right after the cite command the text until the cite's closing bracket ', p. 100]' is not affected (it remains invisible).
\end{enumerate}
Question: Is there a comfortable solution to get the cite mark colored?
\printbibliography
\end{document}
我做错了什么?我的构建环境:Win7-64,Texlive 2017,luaLaTeX
答案1
使用该包(TeXLive-2017、MiKTeX)生成的 OCG 彩色链接ocgx2
似乎解决了两个报告的问题,另外还额外提供了以当前文本颜色打印在纸上的 OCG 彩色链接white
。
\documentclass[12pt]{article}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@book{companion,
author = {Goossens, Michel and Mittelbach, Frank and Samarin, Alexander},
title = {The {LaTeX} Companion},
date = 1994,
edition = 1,
publisher = {Addison-Wesley},
location = {Reading, Mass.},
pagetotal = 528,
langid = {english},
langidopts = {variant=american},
sorttitle = {LaTeX Companion},
indextitle = {LaTeX Companion, The},
shorttitle = {LaTeX Companion},
}
\end{filecontents}
\usepackage[english]{babel}
\usepackage[autolang=other,
style=alphabetic,
backend=biber,
%backref=true,
]{biblatex}
\addbibresource{\jobname.bib}
\usepackage{tikz}
\usepackage[pdfencoding=auto,
final=true,
% colorlinks=true,
citecolor=yellow,
% linkcolor=blue,
% anchorcolor=purple,
% urlcolor=green,
]{hyperref}
\usepackage[ocgcolorlinks]{ocgx2}
\begin{document}
\begin{tikzpicture}
\node[draw, rectangle,
minimum height=100mm,
text width=10cm,
align=center,
fill=black,
text=white,] {\huge
%\hypersetup{citecolor=green}
Hello World!
\cite[p. 100]{companion}
Where am I?
%\textcolor{white}{Ahh, hello again!}
Ahh, hello again!
};
\end{tikzpicture}
%\noindent
%I have two problems:
%\begin{enumerate}
%\item
%Manually resetting the textcolor is inefficient and
%
%\item
%even if the textcolor is reset right after the cite command the text until the cite's closing bracket ', p. 100]' is not affected (it remains invisible).
%\end{enumerate}
%
%Question: Is there a comfortable solution to get the cite mark colored?
\printbibliography
\end{document}