尝试写入度数符号(不可见字符)时出现“inputenc Error: Unicode char \u8”错误

尝试写入度数符号(不可见字符)时出现“inputenc Error: Unicode char \u8”错误

无论我如何尝试,我总是收到以下错误:

! 包 inputenc 错误:Unicode 字符 \u8:未设置为用于 LaTeX。

我尝试过使用$^{\circ}$、、,直接粘贴 ° 符号,\deg\textdegree无济于事。

这是我的文档的标题,以防其中一个可能导致错误:

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage[francais]{babel}
%\FrenchItemizeSpacingfalse
\frenchbsetup{CompactItemize=false}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amsthm}

答案1

如果您确实遇到了该错误(在 - 后没有可见字符)\u8:,那么可能发生的情况可能是您的文档中存在某种不可见或空格 Unicode 字符。例如,在我的 Mac 上,如果我按下 Option-Space,我得到一个不间断空格,这会出现类似这样的错误。您还可能遇到其他一些字符;例如,零宽度可断空格。如果您复制并粘贴了错误,查看此页面的源代码会发现源代码中可能有一个软连字符(Unicode 字符0xAD,表示有效的连字符点,但除非有单词中断,否则不会排版)。因此,找到出现该错误的行,并仔细检查该行直到找到它。如有必要,请重新输入,但好的编辑器应该可以让您找到它。一旦您删除它,那么前三种方法就应该可以正常工作。

当我使用您的标题(注释掉\frechbsetup,它似乎不存在,并使用\documentclass{article})时,$^{\circ}$在上标位置呈现为一个较大的圆圈,$\deg$呈现为直立文本“deg”,并\textdegree呈现为一个较小的圆圈。默认情况下,文字°不起作用。要使其工作,您可以使用\DeclareUnicodeCharacter{B0}{\textdegree}。这告诉inputenc将 Unicode 字符0xB0,即°,视为\textdegree,这就是您想要的。您还可以使用它来查看您的问题是否是软连字符;插入\DeclareUnicodeCharacter{AD}{\Huge [ICI]}以将文本[ICI]以大写字母呈现到文档中,只要有软连字符。(当然,如果有其他不可见字符,您只会收到错误。)

另外,虽然我从未使用过它,但您可以尝试使用 XeLaTeX 而不是 PDFLaTeX;它开箱即用,具有完整的 UTF-8 支持。

答案2

使用

\usepackage[utf8x]{inputenc} 

而不是[utf8]为我解决问题。

答案3

\usepackage{textcomp}不见了。

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{textcomp}
\begin{document}
 °
\end{document}

答案4

我从浏览器复制一个单词并将其粘贴到编辑器后出现此错误。只需重新输入它,问题就解决了。

相关内容