Knitr + Latex 无法在 R 代码框内写入外来字符(æ ø å)

Knitr + Latex 无法在 R 代码框内写入外来字符(æ ø å)

尽管尝试了其他帖子中的各种解决方案,但使用 Knitr 时我无法让 Latex 写出 æ ø 和 å。我在安装了 Windows 10 的 Windows 机器上。这是一个最小的例子:

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}

\begin{document}
This will print out æ ø å 
<<>>=
# This will not print æ ø å 
@ 
\end{document}

代码输出

我尝试过其他建议但没有奏效的方法:

  • \usepackage{自由}
  • 选项(编码 = 'UTF-8')

有人能帮我找到解决这个问题的方法吗?

答案1

如果编译失败,最好阅读 RStudio 控制台中的错误消息。在本例中,消息非常清晰:

Line 1: LaTeX Error: \usepackage before \documentclass.
Line 2: LaTeX Error: \usepackage before \documentclass.

可以在 .log 文件中找到更详细的消息(单击“查看日志”):

\usepackage may only appear in the document preamble, i.e.,
between \documentclass and \begin{document}.

所以,将第三行移到顶部,瞧瞧

编辑

问题中的 MWE 已经更改,因此它现在在使用 UFT-8 语言环境的系统中生成正确的输出,该输出是使用 TeX Live 2019 和 R 3.6.1 使用 utf-8 编码保存的 .Rnw 文件:

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}

\begin{document}
This will print out æ ø å 
<<>>=
# This will not print æ ø å 
@ 
\end{document}

姆韦

因此,这似乎是一个与 LaTeX 无关的问题,但问题没有提供足够的信息来重现问题。此外,MWE 代码仍然不是用于生成问题图像的代码,因为除了 R 注释中某些字符的问题外,LaTeX 文本中没有缩进(但必须有 15pt 缩进,如此处所示)。

相关内容