编织中文的文件

问题描述 投票:4回答:2

我尝试编译YiHui的BIG5 example(中文内容的针织衫)。我使用了Mac OSX Snowleopard,最新的RStudio,pdfLatex(与XeLatex的结果相同)。这是原始.Rnw

的摘录
\begin{document}
\title{knitr與繁體中文文檔}
\author{謝益輝}

測試,咳咳。以下代碼靠譜嗎?

<<test>>=
1+1 # 太簡單了
'引號能用嗎?'
rnorm(5)
(function(){
paste('這裡是字符串')
})()
@

使用系统默认编码“ UTF-8”,得到的pdf为

1+1 #
## [1] 2
''
## [1] ""
rnorm(5)
## [1] -0.4290 1.8835 -0.7045 -0.9232 1.5433
(function(){ paste('') })()
## [1] ""

如您所见,中文只是空白。然后,我用BIG5编码保存了.Rnw并再次编译。生成的pdf变为:

AyyCHUNXaH
1+1 # F
## [1] 2
'H'
## [1] "H"
rnorm(5)
## [1] -0.27859 -0.79428 -0.76903 0.40313 -0.07851
(function(){ paste('oOr') })()
## [1] "oOr"

这次,中文变成了一些随机字母。

我还能做什么?完全是新手编码/语言环境。

r character-encoding knitr chinese-locale
2个回答
3
投票

您必须为XeLaTeX设置中文字体,在我的示例中我没有这样做,因为我不知道我应该为繁体中文使用什么字体,并且在不同操作系统上提供可移植的解决方案并不容易,因为我不知道可用的字体。您可以看一下xeCJK包。


0
投票

嗨,您可以在下面尝试这些代码。

Sys.setlocale(category="LC_ALL",locale="en_US.UTF-8") 

但是,它不能保证随机字母问题不会消失,因为我的R安装也有同样的问题。我的操作系统是中文。当我将操作系统更改为MAC时,此问题已完全解决。希望能帮助到你。

© www.soinside.com 2019 - 2024. All rights reserved.