當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


R Type1Font Type 1 和 CID 字體


R語言 Type1Font 位於 grDevices 包(package)。

說明

這些函數用於定義a的翻譯R圖形字體係列名稱到 Type 1 或 CID 字體說明,由兩者使用postscriptpdf圖形設備。

用法

Type1Font(family, metrics, encoding = "default")

CIDFont(family, cmap, cmapEncoding, pdfresource = "")

參數

family

給出 Type 1 或 CID-keyed 字體係列內部使用的名稱的字符串。這需要唯一地標識每個係列,因此如果您修改正在使用的係列(請參閱postscriptFonts),您需要更改係列名稱。

metrics

由四個或五個字符串組成的字符向量,給出字體的 afm(Adobe Font Metric)文件的路徑。

cmap

CID-keyed 字體的 CMap 文件的名稱。

encoding

為了Type1Font,編碼文件的名稱。默認為"default",它在 Unix-alikes 上映射到"ISOLatin1.enc"並在 Windows 上"WinAnsi.enc"。否則,文件名位於‘編碼’的目錄grDevices包,如果路徑不包含路徑分隔符則使用該包。一個擴展".enc"可以省略。

cmapEncoding

與指定的 CMap 文件一起使用的字符編碼的名稱:寫入文件時字符串將轉換為該編碼。

pdfresource

一大塊 PDF 代碼;僅在 pdf 上使用 CID-keyed 字體時需要;不應期望用戶提供此信息。

細節

為了Type1Fonts,如果四個‘.afm’ 提供的文件第五個被認為是"Symbol.afm"。相對路徑是相對於目錄‘base Rhome/庫/grDevices/afm’。第五種(符號)字體必須為AdobeSym編碼。但是,前四種字體中的字形是通過名稱和“”中給出的任何編碼來引用的.afm' 文件未被使用。

這 '.afm' 文件可以用(或不帶)最終擴展名來壓縮'.gz’: 附帶的文件R作為具有此擴展名的壓縮文件安裝。

CID-keyed 字體中的字形是通過 ID(數字)而不是名稱來訪問的。 CMap 文件將編碼字符串(通常在 MBCS 中)映射到 ID,因此 cmapcmapEncoding 規範必須匹配。 CID 字體沒有真正的粗體或斜體版本(粗體/斜體在傳統東亞地形中很少使用),並且對於 pdf 設備,所有四種字體都將是相同的。但是,對於 postscript 設備,會模擬粗體和斜體(以及粗體斜體)。

CID-keyed 字體僅用於東亞語言的字形,這些字形都是等寬的,並且都被視為填充相同的邊界框。 (因此 plotmath 將適用於此類字符,但與西方字形相比,間距控製不太仔細。) CID-keyed 字體確實包含其他字符,包括拉丁字母:非東亞字形被視為等寬寬度是東亞字形的一半。這種情況經常發生,但有時會使用為比例間距設計的拉丁字形(並且可能看起來很奇怪)。我們強烈建議 CID-keyed 字體僅用於東亞字形。

"Type1Font""CIDFont" 的列表。

例子

## This duplicates "ComputerModernItalic".
CMitalic <- Type1Font("ComputerModern2",
                      c("CM_regular_10.afm", "CM_boldx_10.afm",
                        "cmti10.afm", "cmbxti10.afm",
                        "CM_symbol_10.afm"),
                      encoding = "TeXtext.enc")

## Not run: 
## This could be used by
postscript(family = CMitalic)
## or
postscriptFonts(CMitalic = CMitalic)  # once in a session
postscript(family = "CMitalic", encoding = "TeXtext.enc")

## End(Not run)

也可以看看

postscriptpdfpostscriptFontspdfFonts

相關用法


注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Type 1 and CID Fonts。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。