我试图在我的pdf中使用Arial字体,但是当我按照extrafont帮助文件中的说明操作时,每个点的文本都会相互重写:
library(extrafont)
library(ggplot2)
my_pdf <- function(file, width, height){
loadfonts()
pdf(file = file, width = width, height = height,
family = "Arial")
}
my_pdf("ArialTester.pdf")
qplot(1:10, 1:10, "point") + ggtitle(paste0(LETTERS,letters, collapse=""))
dev.off()
我在pdf中得到以下内容。请注意,标题是字母表。
这个问题的上下文是knitr,所以我需要一个设备函数,我可以设置为一个块选项(即dev = 'my_pdf'
)
我做错了什么?
答案 0 :(得分:1)
您需要使用embed_fonts()
。
library(extrafont)
library(ggplot2)
my_pdf <- function(file, width, height){
loadfonts()
pdf(file = file, width = width, height = height,
family = "Arial")
}
my_pdf("ArialTester.pdf")
g <- qplot(1:10, 1:10, "point") + ggtitle(paste0(LETTERS,letters, collapse="")) +
theme(text = element_text(family = "Arial"))
plot(g)
dev.off()
embed_fonts("ArialTester.pdf")