本文转载自:https://blog.csdn.net/hongweigg/article/details/47907555

1、使用基础包,使用函数pdf()输出

在使用pdf()函数时,要输出中文,只有一种字体可选。例子:

pdf("chinese.pdf",family="GB1")
plot(m2,xlab="高度",ylab="体重",main="统计")
dev.off()

这里字体参数family只能设置成"GB1"(不知是否还有其他字体可选),默认宋体。

2、使用Cairo包,使用CairoPDF()函数输出

在使用Cairo包时,进行中文输出时,可以选择多种字体。不过这个包要先下载安装。

例子:

(未检验)

CairoPDF("chinese.pdf",family="SimSun")

plot(1:10,1:10,type="n");
text(2,10,"宋体",family="SimSun");
text(2,8,"黑体",family="SimHei");
text(2,6,"楷体",family="KaiTi_GB2312");
text(2,4,"隶书",family="LiSu");
text(2,2,"幼圆",family="YouYuan");
text(6,10,"Arial",family="Arial");
text(6,8,"Times New Roman",family="Times New Roman");
text(6,6,"Courier New",family="Courier New");
text(6,4,"Consolas",family="Consolas");
text(6,2,"Symbol",family="Symbol");
dev.off();

family参数为字体名称,如宋体:SimSun,黑体:SimHei。

附字体-名称映射表:

新细明体,    PMingLiU ,            
细明体,      MingLiU,            
标楷体,      DFKai-SB,           
黑体,        SimHei,             
宋体,        SimSun ,            
新宋体,      NSimSun,            
仿宋,        FangSong,           
楷体,        KaiTi,              
仿宋_GB2312, FangSong_GB2312,    
楷体_GB2312, KaiTi_GB2312,       
微软正黑体,  Microsoft JhengHei, 
微软雅黑,    Microsoft YaHei,    
隶书,        LiSu,               
幼圆,        YouYuan,            
华文细黑,    STXihei,            
华文楷体,    STKaiti,            
华文宋体,    STSong,             
华文中宋,    STZhongsong,        
 华文仿宋,   STFangsong,         
方正舒体 ,   FZShuTi,            
方正姚体,    FZYaoti,            
华文彩云,    STCaiyun,           
华文琥珀,    STHupo,             
华文隶书,    STLiti,             
华文行楷,    STXingkai,          
华文新魏,    STXinwei

R语言输出pdf时,中文乱码处理的更多相关文章

  1. LibreOffice转换文档到pdf时中文乱码

    根据我的测试,LibreOffice转换文档到pdf乱码主要有三个方面的原因: 1.centos缺少中文字体 2.jdk缺少中文字体 3.LibreOffice缺少中文字体. 解决该问题需要将wind ...

  2. SpringMVC学习系列-后记 解决GET请求时中文乱码的问题

    SpringMVC学习系列-后记 解决GET请求时中文乱码的问题 之前项目中的web.xml中的编码设置: <filter> <filter-name>CharacterEnc ...

  3. curl提交数据时中文乱码

    1.使用curl提交数据时中文乱码解决: <?php $testJSON=array('name'=>'中文字符串','value'=>'test'); foreach ( $tes ...

  4. maven测试时中文乱码问题解决方法

    pom.xml增加-Dfile.encoding=UTF-8配置,如下: <plugin> <!--升级到新版本解决控制台乱码问题--> <groupId>org. ...

  5. Mybatis新增mysql时中文乱码

    Mybatis新增mysql时中文乱码 1.设置数据库连接的编码(jdbc.properties) jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:my ...

  6. 使用PLSQL Developer时中文乱码问题

    使用PLSQL Developer时中文乱码问题 一.问题: 执行一些查询结果有中文的SQL语句,显示不了中文,显示???. 二.产生的原因: 客户端与服务器端的编码不一致造成的. 三.解决方案: 1 ...

  7. 解决python语言在cmd下中文乱码的问题

    解决python语言在cmd下中文乱码的问题: a = "再见!"print (a.decode('utf-8').encode('gbk')) #解决在cmd下中文乱码的问题

  8. Tomcat 输出日志出现中文乱码

    Tomcat 输出日志出现中文乱码 解决方案: 打开到tomcat安装目录下的conf/文件夹 修改logging.properties文件,找到 java.util.logging.ConsoleH ...

  9. mysql 恢复数据时中文乱码

    mysql恢复数据时中文乱码,解决办法. 用source命令导入mysql数据库怎么设置中文编码 1.导出数据时指定编码在导出mysql sql执行文件的时候,指定一下编码格式: mysqldump ...

随机推荐

  1. DataTable的用法

    在项目中经常用到DataTable,如果DataTable使用得当,不仅能使程序简洁实用,而且能够提高性能,达到事半功倍的效果,现对DataTable的使用技巧进行一下总结. 一.DataTable简 ...

  2. java关键字---final和transient

    首先,说说final. final关键字可以修饰变量,方法,类.    final变量:         需求:             1 需要一个永不改变的编译时常量             2 ...

  3. golang的项目结构 相关知识

    ### 项目结构 ``` ├── bin │   ├── login │   └── main ├── pkg │   └── darwin_amd64 │   └── login │   └── a ...

  4. python 字符串大小写相关函数

    改写:(都不会改变原字符串) s = 'hEllo wOrld' s Out[3]: 'hEllo wOrld' s.upper()#全部大写 Out[4]: 'HELLO WORLD' s Out[ ...

  5. eclipse 环境 JUnit 测试框架(junit.framework.* 与 org.junit.*)

    如下所示,先通过 build path 导入 junit 环境依赖的 jar 包: 1. junit.framework.* junit.framework.* 主要类和函数: Test TestCa ...

  6. WordPress发布文章前强制要求上传特色图像

    如果你的网站需要给每篇文章设置特色图像才能达到理想的显示效果,而且允许其他用户在后台发布文章的,那么您可能需要强制要求他们给文章上传特色图像,否者就无法发布.Require Featured Imag ...

  7. Net Core 中使用 Consul 来存储配置

    Net Core 中使用 Consul 来存储配置 https://www.cnblogs.com/Rwing/p/consul-configuration-aspnet-core.html 原文: ...

  8. 【java规则引擎】模拟rete算法的网络节点以及匹配过程

    转载请注明:http://www.cnblogs.com/shangxiaofei/p/6340655.html 本文只用于理解rete算法,通过一个规则的编译成的网络结构,以及匹配过程去理解rete ...

  9. CH5702 Count The Repetitions[倍增dp]

    http://contest-hunter.org:83/contest/0x50%E3%80%8C%E5%8A%A8%E6%80%81%E8%A7%84%E5%88%92%E3%80%8D%E4%B ...

  10. spark远程调试

    基本流程1.远程运行spark,打开Spark master机器的JVM的jdwp,让其阻塞监听指定端口(8888),让其有终端向指定端口发送特定请求再执行:2.IntelliJ配置socket远程连 ...