简单的问题,但我似乎无法在任何地方找到一个很好的解释。我想在R. Futura中使用Futura字体(在mac字体书中),而不是在extrafont中使用mac(因此windowsFont函数不起作用),我试过使用quartzFonts函数,但这似乎不起作用(也许我做错了..?) -
任何建议都将不胜感激!
答案 0 :(得分:0)
第一步是找到字体文件。我的计算机上的某些字体文件(helvet)是/path/to/helvet/uhvr8a.pfb
path/to/helvet/uhvb8a.pfb
path/to/helvet/uhvb8a.pfb
。
然后你使用
font.add("name_to_use_in_your_R_script", regular = "path/to/regular/font/file", etc)
以下是一个例子。 (下载字体文件,以便可以重现示例。对于您,您可以将file.path("fonts", "uhvr8a.pfb")
行更改为相应字体文件的路径。
\documentclass[a4paper,10pt]{article}
\begin{document}
<<knitrOpts>>=
library(knitr)
library(sysfonts)
library(showtext)
knitr::opts_chunk$set(fig.showtext = TRUE)
library(ggplot2)
library(hutils)
@
A plot using ordinary fonts:
<<ordinary>>=
ggplot(data = data.frame(x = 0:25 %% 4,
y = 27:2 %/% 4,
label = LETTERS[1:26])) +
geom_text(aes(x, y, label = label), size = 18) +
theme_void()
@
<<using_helvet>>=
provide.dir("fonts")
for (face in c("uhvr8a.pfb", "uhvb8a.pfb", "uhvro8a.pfb")) {
download.file(paste0("https://github.com/grattaninstitute/Assessing-2016-Super-tax-reforms/raw/master/Fonts/helvetic/", face),
mode = "wb",
destfile = file.path("fonts", face))
}
font.add("helvet",
regular = file.path("fonts", "uhvr8a.pfb"),
bold = file.path("fonts", "uhvb8a.pfb"),
italic = file.path("fonts", "uhvro8a.pfb"))
@
<<helvet>>=
ggplot(data = data.frame(x = 0:25 %% 4,
y = 27:2 %/% 4,
label = LETTERS[1:26])) +
geom_text(aes(x, y, label = label), size = 18, family = "helvet") +
theme_void()
@
\end{document}