1)该varioref
包给出\vref
,其输出如下......
图~
\ref{fig:test}
在第~页\pageref{fig:test}
。
2)该amsmath
包给出\eqref{}
,其输出如下......
等式(1.5),即它不会打印普通数字 1.5,而是打印(1.5)
现在的问题是......是否有像“veqref”这样的命令,可以给出 put 作为
\eqref{eq:test}
第~页上的方程~\pageref{eq:test}
,类似于第 30 页上的方程 (1.5)
我不知道该怎么做...
感谢 cmhughes 的回答...
我添加了 Eq.~ 如下...
\labelformat{equation}{Eq.~\tagform@{#1}}
再举一个例子...
\documentclass{book}
\usepackage{amsmath}
\usepackage{varioref}
% this bit makes sure that the number is typeset upright- needs amsmath
\makeatletter
\labelformat{equation}{Eq.~\tagform@{#1}}
\makeatother
\begin{document}
\chapter{One}
Bla bla bla...
\begin{equation}\label{eq:myequation}
f(x)=x^2+\sin(x)
\end{equation}
Here is a reference: \vref{eq:myequation}.
\emph{Here is another reference: \vref{eq:myequation}.}
\clearpage
Bla bla bla...\\
See \vref{eq:myequation} and use it.
\chapter{Two}
Bla bla bla...\\
See \vref{eq:myequation} and use it.
\end{document}
答案1
文档第 2.3 节详细介绍了您可以使用
\labelformat{equation}{(#1)}
这样它就\vref
可以像您希望的那样对方程进行运算。
事实上,根据 egreg 的评论,应该将参考文献排版为直立,即使它包含在(例如)斜体的环境中。
完整的 MWE 如下。
\documentclass{article}
\usepackage{amsmath}
\usepackage{varioref}
% this bit makes sure that the number is typeset upright- needs amsmath
\makeatletter
\labelformat{equation}{\tagform@{#1}}
\makeatother
\begin{document}
\begin{equation}\label{eq:myequation}
f(x)=x^2+\sin(x)
\end{equation}
Here is a reference: \vref{eq:myequation}.
\emph{Here is another reference: \vref{eq:myequation}.}
\end{document}
答案2
我建议你看一下这个包聪明人.根据其描述:
[该]软件包增强了 LaTeX 的交叉引用功能,可以根据引用类型自动确定引用格式。所用的格式可在文档的序言中自定义。
我自己也在用它,非常灵活和可配置。
下面是一个 MWE,展示了 的用法cleveref
:
\documentclass{article}
\usepackage{cleveref}
\begin{document}
\begin{equation}\label{eq:myequation}
f(x)=x^2+\sin(x)
\end{equation}
Here is a reference to \cref{eq:myequation}.
Here is a reference to the number alone:
\labelcref{eq:myequation}.
\emph{Here is another reference, see the upright
reference number without any additional commands or
packages:
\cref{eq:myequation}.}
\end{document}
使用labelformat
invarioref
有一些限制,这些限制在第 5 页中进行了描述cleveref 的手册.cleveref
有自己的labelformat
,也在手册中描述(针对更高级的用户)。
您无需为图表或页面命名。对稿件中另一页上的公式的引用应这样写:
See \cref{eq:myequation} on \cpageref{eq:myequation}