不同的参考目标使用不同的 fancyref 字符串?

不同的参考目标使用不同的 fancyref 字符串?

我使用fancyref默认前缀(chap:fig:等等)。当引用的对象位于不同的页面上时,我对生成引用的方式并不完全满意。对于表格和图形,该包会生成类似第 42 页(第 84 页图 42),这是可以接受的。当引用整个章节时,该包使用相同的文本(第 4 章至第 50 页)。在我看来,这并不完全正确——章节不是放在第 50 页,而是从第 50 页开始,可能跨越任意数量的页面。我更希望命令\fref{}在引用章节和部分时使用不同的文本,例如第 4 章AB第 50 页同时,图表的引用不应该改变。可以吗?

平均能量损失

\documentclass{scrartcl}
\usepackage[ngerman]{babel} 
\usepackage[german]{fancyref}    
\usepackage{lipsum}

\begin{document}

\section{Einleitung}
\label{sec:A}
%\usepackage{graphics} is needed for \includegraphics
\begin{figure}[htp]
  Ze Figure
  \caption{A Figure}
  \label{fig:Foo}
\end{figure}
\lipsum[1-10]

\section{Überleitung}
\label{sec:B}
\lipsum[1-10]

\section{Weiterleitung}
Wie in \fref{sec:A} bereits erw"ahnt\ldots
% This reads "auf Seite 1", should be "ab Seite 1"

Wie in \fref{fig:Foo} zu erkennen ist\ldots
% This reads "auf Seite 1", which is acceptable and should not be changed

\end{document}

答案1

您可以重新定义vario章节交叉引用的格式,以使其与章节匹配plain

例如:

\documentclass[ngerman]{scrartcl}
\usepackage{babel}
\usepackage[german]{fancyref}
\usepackage{lipsum}
\frefformat{vario}{\fancyrefseclabelprefix}{%
      \frefsecname\fancyrefdefaultspacing#1}
\Frefformat{vario}{\fancyrefseclabelprefix}{%
      \Frefsecname\fancyrefdefaultspacing#1}

\begin{document}

\section{Einleitung}
\label{sec:A}
%\usepackage{graphics} is needed for \includegraphics
\begin{figure}[htp]
  Ze Figure
  \caption{A Figure}
  \label{fig:Foo}
\end{figure}
\lipsum[1-10]

\section{Überleitung}
\label{sec:B}
\lipsum[1-10]

\section{Weiterleitung}
Wie in \fref{sec:A} bereits erw"ahnt\ldots
% This reads "auf Seite 1", should be "ab Seite 1"

Wie in \fref{fig:Foo} zu erkennen ist\ldots
% This reads "auf Seite 1", which is acceptable and should not be changed

\end{document}

如果我正确理解了你的问题,就会产生所需的输出:

更简单的章节引用和更精美的图表

相关内容