
我正在嘗試使用 smartref 作為我的參考,但到目前為止它對我不起作用。目前我的設定如下:
\documentclass[a4paper]{article}
% PACKAGES
\usepackage[english,ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{hyperref}
\usepackage[ngerman]{varioref}
\usepackage[ngerman]{cleveref}
\begin{document}
\section{Test}\label{test}
This is some text containing a self-reference \cref{test}.
\end{document}
這導致:
This is some text containing a self-reference ??.
乳膠告訴我:
LaTeX Warning: Reference `test' on page 1 undefined on input line 14.
當我第二次運行它時(僅使用pdflatex test.tex
):
LaTeX Warning: \Cref reference format for label type `' undefined on input line 14.
ngerman
我已經嘗試通過放入來設定全域語言\documentclass[a4paper,ngerman] ..
,也嘗試過german
,甚至english
沒有效果。
有誰知道我做錯了什麼?
答案1
您需要更改套件載入順序。varioref
應該在引用相關包之前加載hyperref
並且cleveref
必須是最後一個:
\documentclass[a4paper]{article}
% PACKAGES
\usepackage[english,ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{varioref}
\usepackage{hyperref}
\usepackage[ngerman]{cleveref}
\begin{document}
\section{Test}\label{test}
This is some text containing a self-reference \cref{test}.
\end{document}