创建错误消息

创建错误消息

有没有办法创建我自己的错误消息,当主字体大小未设置为 11pt 时,文档的编译开始停止时给出该消息?


更新

我正在尝试编写一个包,并使用:

\documentclass{scrreprt}%or scrbook or scrartcl

\usepackage{classicthesis}

答案1

如果你正在写一个包,foo.sty那么说

\AtBeginDocument{
  \if\@ptsize1\else
    \PackageError{foo}
      {Illegal font size option detected.\MessageBreak
       This is a fatal error, I'll stop the run}
      {You have specified a point size different from\MessageBreak
       the unique size this package supports, which is 11pt.\MessageBreak
       Correct your input file}
    \expandafter\@@end
  \fi}

会做。

答案2

如果您正在使用标准文档类之一(articlebookreport),则该宏\@ptsize包含1以下内容11pt

\documentclass[12pt]{article}
\makeatletter
\AtBeginDocument{%
  \newcommand{\@ptsizetest}{1}% Equivalent to 11pt for a document class option.
  \ifx\@ptsizetest\@ptsize\relax\else
    \@latex@error
      {You need to use 11pt font size}% Error message
      {Add this as a document class option [11pt]}% Help text
  \fi%
}
\makeatother
\begin{document}
Test document
\end{document}​

这会产生错误

LaTeX 错误:您需要使用 11pt 字体大小。

如果您使用其他定义字体大小的包,则还需要做更多的工作。

相关内容