首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在macos上的R图中使用texlive字体

在macos上的R图中使用texlive字体
EN

Stack Overflow用户
提问于 2018-11-01 01:28:32
回答 1查看 68关注 0票数 0

有没有人可以给我指一份文档,解释如何使文本字体可用于R图?

我曾经让它工作,但它不再工作了。这是我的尝试,使texlive 2018 bera字体可用于R:

代码语言:javascript
复制
$ R --no-init-file
> options(texlive= "~/Documents/texlive/2018/")
> options(texfonts= paste0(getOption("texlive"), "/texmf-dist/fonts/"))
>
> pdfFonts(Bera = Type1Font("Bera", paste0(getOption("texfonts"), "afm/public/bera/", c("fvsr8a","fvsb8a","fvsro8a","fvsbo8a"), ".afm")))
> options(pfbdir = c(paste0(getOption("texfonts"), "type1/public/bera/")))
> pdfFonts("Bera")
$Bera
$family
[1] "Bera"

$metrics
[1] "~/Documents/texlive/2018//texmf-dist/fonts/afm/public/bera/fvsr8a.afm"
[2] "~/Documents/texlive/2018//texmf-dist/fonts/afm/public/bera/fvsb8a.afm"
[3] "~/Documents/texlive/2018//texmf-dist/fonts/afm/public/bera/fvsro8a.afm"
[4] "~/Documents/texlive/2018//texmf-dist/fonts/afm/public/bera/fvsbo8a.afm"
[5] "Symbol.afm"

$encoding
[1] "default"

attr(,"class")
[1] "Type1Font"

> pdf(file="test.pdf")
> plot( 1 )
> dev.off()
null device
          1

$ pdffonts test.pdf  ## from brew poppler
name                                 type              encoding         emb sub uni object ID
------------------------------------ ----------------- ---------------- --- --- --- ---------
ZapfDingbats                         Type 1            ZapfDingbats     no  no  no      10  0
Helvetica                            Type 1            Custom           no  no  no      11  0
$ ls ~/Documents/texlive/2018/texmf-dist/fonts/afm/public/bera/fv*
/Users/ivo/Documents/texlive/2018/texmf-dist/fonts/afm/public/bera/fveb8a.afm   /Users/ivo/Documents/texlive/2018/texmf-dist/fonts/afm/public/bera/fvmro8a.afm
/Users/ivo/Documents/texlive/2018/texmf-dist/fonts/afm/public/bera/fver8a.afm   /Users/ivo/Documents/texlive/2018/texmf-dist/fonts/afm/public/bera/fvsb8a.afm
/Users/ivo/Documents/texlive/2018/texmf-dist/fonts/afm/public/bera/fvmb8a.afm   /Users/ivo/Documents/texlive/2018/texmf-dist/fonts/afm/public/bera/fvsbo8a.afm
/Users/ivo/Documents/texlive/2018/texmf-dist/fonts/afm/public/bera/fvmbo8a.afm  /Users/ivo/Documents/texlive/2018/texmf-dist/fonts/afm/public/bera/fvsr8a.afm
/Users/ivo/Documents/texlive/2018/texmf-dist/fonts/afm/public/bera/fvmr8a.afm   /Users/ivo/Documents/texlive/2018/texmf-dist/fonts/afm/public/bera/fvsro8a.afm
$ ls ~/Documents/texlive/2018/texmf-dist/fonts/type1/public/bera/
fveb8a.pfb  fver8a.pfb  fvmb8a.pfb  fvmbo8a.pfb  fvmr8a.pfb  fvmro8a.pfb  fvsb8a.pfb  fvsbo8a.pfb  fvsr8a.pfb  fvsro8a.pfb

也许pfb字体也需要安装在macos本身上,这在过去很简单(需要双击字体名称,但最新的macos似乎不再像这样。还是其他地方出了什么问题?

更新:我还尝试了showtext包(需要安装XQuartz)。相同的结果:

代码语言:javascript
复制
n <- "~/Documents/texlive/2018//texmf-dist/fonts/type1/public/bera/"
library( showtext )
font_add("Bera", paste0(n,"fvsr8a.pfb"), bold=paste0(n,"fvsb8a.pfb"),italic=paste0(n,"fvsro8a.pfb"),bolditalic=paste0(n,"fvsbo8a.pfb"))
showtext_auto()
pdf(file="t.pdf")
showtext_auto()
plot(1:20)
dev.off()

同样的结果-我的texlive bera (pfb)字体对pdffonts是不可见的。

一个指向一步一步的文档(如何处理和诊断问题)的指针会很棒。请帮帮忙。

EN

回答 1

Stack Overflow用户

发布于 2018-11-03 03:03:32

我终于让它起作用了。步骤:

1安装Bitstream Vera Sans字体(=Bera)。请参阅https://tex.stackexchange.com/questions/457922/making-texlive-bera-font-accessible-on-macos-r-etc

代码语言:javascript
复制
brew tap homebrew/cask-fonts
brew install --cask font-bitstream-vera  # after 2021

要搜索字体,请使用brew search font-

2按照https://cran.r-project.org/web/packages/extrafont/README.html中的说明进行操作

代码语言:javascript
复制
install.packages('extrafont')
library(extrafont)
font_import()
loadfonts()

3.使用它们

代码语言:javascript
复制
> pdf("test.pdf", family="Bitstream Vera Serif")
> plot(1:10)
> dev.off()

4检查test.pdf文件是否使用字体(必须安装弹出器):

代码语言:javascript
复制
pdffonts test.pdf
name                                 type              encoding         emb sub uni object ID
------------------------------------ ----------------- ---------------- --- --- --- ---------
ZapfDingbats                         Type 1            ZapfDingbats     no  no  no      10  0
BitstreamVeraSerif-Roman             Type 1            Custom           no  no  no      11  0
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53089029

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档