RMarkDown 格式的文件转为 pdf 文件
最近想着把 RMarkDown 格式的文件转为 pdf ,结果查阅了网上的很多资料都没办法解决,最后发现是由于安装路径中带有中文,然而我自己笔记本电脑的用户名是中文的,也就是说一些默认安装在C盘下的软件在 Rstudio 导出 pdf 时会报错:找不到相应的软件。在经过6个多小时的尝试后,我终于搞定了这个问题,感谢谢益辉大神,希望我的这篇文章能够帮助到其他电脑用户名是中文的小伙伴。
长话短说,最主要的是把软件的安装路径更改为不带有任何中文的路径,如果你已经知道应该如何操作,那么下面的就不用再看了,当然也可以直接跳到第3点进行查看。
1. 原因
为什么要导出 pdf 文件,理由很简单,就是当你需要作报告时,一份清晰、美观的 pdf 报告绝对能够加分,而且,我相信没有人能够拒绝一份带有目录的 pdf 文件吧!
2. 需要用到的软件和包
- 包:tinytex、rticles
- 软件:TinyTex、pandoc
注:tinytex 和 TinyTex 是两个东西,tinytex 是一个可以直接使用 install.pakages(“tinytex”) 安装的包,而 TinyTex 则是一个 LaTex 排版系统。
不知道什么是 LaTex ? 请参考这篇文章:link
更多关于 TinyTex 的介绍请参考:link
3. 如何操作
3.1 安装 tinytex 包和 TinyTex 环境
(1) 在 Console 窗口或者 .R 文件里输入 install.packages(“tinytex”)
(2) 继续输入代码安装 TinyTex 环境
library(tinytex)
# 下面这个函数里面可以传入 :
# pkg 参数 :输入压缩包的文件路径,如 pkg = "D:/TinyTex.zip"
# dir 参数:输入安装的路径,如 dir = "D:/TinyTex"
tinytex:::install_prebuilt()
如果不输入任何参数,则默认安装在
“C:/User/Administrator/AppData/Roaming/TinyTex”
注:如果你的用户名不是中文,而且默认安装路径中也没有中文,那选择默认安装是没有问题的,否则请输入参数 dir ,安装到一个没有中文的文件路径中。
3.2 安装 pandoc
(1) 从官网下载 pandoc
然后会下载一个 .msi 文件
在开始→设置→应用那里更改任何来源
(2) 安装 pandoc
双击打开 .msi 文件,不断选择 next 进行安装
默认安装在 “C:/User/Administrator/AppData/Local/Pandoc”
注意事项跟上面的一样,文件路径不能有中文
由于双击 .msi 安装后不能自定义安装路径,所以需要进行下面的操作来更改路径。
(3) 更改文件路径
先剪切整个 pandoc 文件夹到你需要更改的文件路径,然后修改用户变量 path
修改用户变量如下
右击此电脑,打开属性
选择高级系统设置→环境变量,选择用户变量那个框里的 Path ,一般是上面那个框。
选择新建,然后输入你前面剪切的文件路径,比如我这里的 “D:\Pandoc”
3.3 安装 rticles 包
直接在 Rstudio 中输入 “install.packages(“rticles”)” 即可。
3.4 更改设置
在 Rstudio 中一次点击 Tools→Global Options→Sweave
然后更改如图所示的设置
到这里你就可以尝试点击 knitr 来输出 pdf 文件了。