5

我想使用knitr生成 pdf 文档,从中可以干净地剪切和粘贴示例代码,但似乎不能。

我遇到的问题的一个例子:

knitr手册pdf 包含此代码块(第 3 页):

## option tidy=TRUE
for (k in 1:10) {
j <- cos(sin(k) * kˆ2) + 3
print(j - 5)
} 

从pdf复制然后粘贴到R(或SO等)中时,它会产生:

## option tidy=TRUE
for (k in 1:10) f j <- cos(sin(k) * kˆ2) + 3
print(j - 5)
g 

看看前两行代码如何组合成一个,更糟糕的是,{如何}转换为fand g

我的问题:

首先,我想,这是其他人经历的吗?它只发生在 Windows 上还是其他地方?

如果不只是我,是否有一些简单的解决方法?编译文件时使用不同的字体会*.tex产生*.pdf更容易复制和粘贴的文档吗?

(FWIW,如果我改为使用minted来突出显示我的 R 代码,我没有任何相同的问题,所以我知道有可能做到这一点。)

4

1 回答 1

8

根据这个问题的线索及其接受的答案,我发现使用 LaTeX fontenc包将字体编码设置为 T1 可以解决上面报告的问题。(另请参阅此处,了解为什么使用 T1 或多或少是官方推荐的各种 LaTeX 文档的最佳实践。改进的复制和可粘贴性是该链接中提到的几个很好的原因之一。)

以下是固定文档中序言的开头部分:

\documentclass[a4paper]{article}
\usepackage[T1]{fontenc}
于 2013-05-09T20:34:08.553 回答