文本宽度、字体、超链接、脚注的编译器错误

文本宽度、字体、超链接、脚注的编译器错误

我有一个奇怪的字体、排版组合,编译失败

包 atveryend 信息:输入行 39 上的空钩子“BeforeClearDocument”。

例子:

\documentclass[11pt,a4paper]{article}

\usepackage{geometry}
 \geometry{
 a4paper,
 total={150mm,237mm},
 left=30mm,
 top=30mm,
 }

\usepackage{color}
\usepackage{graphicx}
\usepackage[pdftex,colorlinks=false]{hyperref}
% get rid of the horrible coloured boxes around links
\hypersetup{
    colorlinks,%
    citecolor=black,%
    filecolor=black,%
    linkcolor=black,%
    urlcolor=black
}

\usepackage[utf8]{inputenc}
\usepackage[lf]{venturis} %% lf option gives lining figures as default; 
\usepackage[T1]{fontenc}
\usepackage{csquotes}
\usepackage[UKenglish,german]{babel}

\usepackage{fancyvrb}
\VerbatimFootnotes

\usepackage[shrink=10,babel=true]{microtype}    

\begin{document}

...Bret Victor\footnote{cf. \url{http://worrydream.com/\#!/TheFutureOfProgramming} and \url{http://worrydream.com/\#!/MediaForThinkingTheUnthinkable}; 
also the work of...}.

\end{document}

我不想禁用这里使用的任何软件包。当然我可以更改文本,但这也不是我的主意...


这是 TeX Live 2015。

答案1

您的示例文档没有给我任何错误,但是有一个重要的警告

pdfTeX warning (dest): name {Hfootnote.1} has been referenced but does not exist, replaced by a fixed one

这是由于hyperref最后没有加载。

您的序言中还存在其他问题,这是一个更好的有序版本:

\documentclass[11pt,a4paper]{article}

%% page setup
\usepackage{geometry}
\geometry{
 a4paper,
 total={150mm,237mm},
 left=30mm,
 top=30mm,
}

%% general setup
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[UKenglish,german]{babel}

%% fonts
\usepackage[lf]{venturis} %% lf option gives lining figures as default; 
\usepackage[shrink=10,babel=true]{microtype}    

%% other packages
\usepackage{color}
\usepackage{graphicx}
\usepackage{csquotes}
\usepackage{fancyvrb}

%% hyperref should be last
\usepackage{hyperref}
% get rid of the horrible coloured boxes around links
\hypersetup{
    colorlinks,%
    citecolor=black,%
    filecolor=black,%
    linkcolor=black,%
    urlcolor=black
}

\VerbatimFootnotes

\begin{document}

...Bret Victor\footnote{cf.\@ \url{http://worrydream.com/\#!/TheFutureOfProgramming} 
and \url{http://worrydream.com/\#!/MediaForThinkingTheUnthinkable}; 
also the work of...}.

\end{document}

请注意,pdftex不应传递给hyperrefcolorlinks=false如果您colorlinks在中这样做也不应该\hypersetup

后面的句号cf不是句子的结束符,所以后面应该跟\@

我没有尝试解决脚注中的未满行。

enter image description here

制作说明:我\textwidth=2cm只是用它来制作较小的图片。

答案2

.log文件中的行

Package atveryend Info: Empty hook `BeforeClearDocument' on input line 39.

不是错误或警告。这只是一个信息(可能有助于调试问题)。

该文件使用 pdflatex 编译时没有错误。有三个问题:

  • hyperref应稍后加载。例如,它将看不到babel包含其语言的包。

  • german意思babel是“Alte Rechtschreibung . Since the orthography has changed in [German orthography reform of 1996][1], the language name forbabel isngerman”。

  • 错误的脚注链接是由于\VerbatimFootnotes与不兼容造成的hyperref。在本例中,\VerbatimFootnotes是不需要的,否则,hyperref的脚注链接可以通过选项 禁用hyperfootnotes=false

相关内容