正しいのかどうか分かりませんが、一応できたのでメモっておきます。
URW Garamondを使ってみよう。
まず、Rをインストールしたディレクトリの中の
/R/R-X.X.X/library/grDevices/afm
に使いたいフォントのafmファイルを一つずつgzファイルにしてからコピーします。
この場合だと、"ugmr8a.afm.gz", "ugmm8a.afm.gz", "ugmri8a.afm.gz", "ugmmi8a.afm.gz"を作ってコピーする。
Rスクリプトでは、Type1Font関数を使ってfamilyを定義してあげます。
metricsにafmファイルを指定します(gzは付けなくて良い模様)。
UGM <- Type1Font( family = "URW Garamond", metrics = c("ugmr8a.afm", "ugmm8a.afm", "ugmri8a.afm", "ugmmi8a.afm", "Symbol.afm"), encoding = "default" ) # 1回だけ実行すればよい postscriptFonts(URWGaramond = UGM) postscript( file="C:/Garamond_Test.eps", width = 9, height = 9, pointsize = 20, horizontal = FALSE, onefile = FALSE, paper = "special", family="URWGaramond" ) curve(sin(x), -pi, pi) dev.off()
postscriptFonts関数でfamilyを定義しないでも、postscript関数のfamilyに直接オブジェクトを投げてもよい(この場合はfamily=UGMと指定しちゃう)。
CIDフォントの場合はCIDFont関数を使ってCmapファイルとかを指定してやるようです。
postscriptFonts()
でちゃんと定義できているか確認することもできます。
一応埋め込みまでできるような・・・。
メトリックの入力順?
metrics = c(Regular, Bold, Italic, ItalicBold, Symbol)