【问题标题】:utf8 inputenc error (RStudio & knitr & pdflatex); unknown unicode character 150=U+0096utf8 inputenc 错误(RStudio & knitr & pdflatex);未知 Unicode 字符 150=U+0096
【发布时间】:2015-10-19 09:44:02
【问题描述】:

我最初使用乳胶选项运行我的 .Rnw 文件:

\usepackage[utf8]{inputenc}

它产生了一个错误:

“!包 inputenc 错误:Unicode char \u8:未设置为与 LaTeX 一起使用。”

我切换到[utf8x],它生成了一条更有帮助的错误消息:

"! 包 ucs 错误:未知 Unicode 字符 150 = U+0096, (ucs) 可能在 uni-0.def 中声明。"

我尝试将 0096 (http://www.charbase.com/0096-unicode-start-of-guarded-area) 字符替换为 \DeclareUnicodeCharacter{0096}{\"o} 以轻松检测问题出在哪里,但使用 [utf8x] 时错误消息保持不变,使用 [utf8] 时出现额外错误: “!包输入错误:无法定义 Unicode 字符值

感谢您的帮助!

【问题讨论】:

    标签: unicode utf-8 knitr pdflatex


    【解决方案1】:

    我的参考书目也有同样的问题。在我的编辑器 (TeXstudio) 中,字符 U+0096 呈现为空白。由于某些未知原因,pdflatex 报告的包含违规字符的行是不准确的。

    我通过对\x0096 运行正则表达式搜索解决了这个问题,它立即找到了有问题的字符。删除字符并将其替换为真正的空格可解决此问题。

    顺便说一句,我尝试了\DeclareUnicodeCharacter{0096}{ } 修复,但它对我没有任何帮助。这可能是因为违规字符位于 .bib 文件中,而不是我放置命令的 .tex 文件中。

    【讨论】:

      【解决方案2】:

      我不认为通过切换 [utf8x] 是可行的方式。 请仔细检查您的代码,尤其是您从某处复制的部分,而不是自己输入。

      我最近确实有同样的问题。

      我告诉你我是如何解决这个问题的。

      我从 R markdown 中逐部分删除代码,以查找导致此问题的部分。最后,我发现以下部分导致我的代码出现错误。

      ### Platform:Affymetrix A-AFFY-2-Affymetrix GeneChip Arabidopsis Genome [ATH1-121501].
      

      我记得我从网页上复制了这些信息。所以我删除它们并自己输入这部分。它可以正常运行并生成pdf文件。

      为了清楚起见,我向您展示复制版本和我打字版本之间的区别:

      这只是我认为的一个例子。我想指出,当您将未知资源文件中的某些内容复制到代码中时,总是会出现问题。

      希望这可以帮助您和其他对此问题感到沮丧的人。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-12-23
        • 2020-03-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-05-21
        • 1970-01-01
        • 2015-07-29
        相关资源
        最近更新 更多