在 GMT(通用映射工具)中使用自定义字体?
Posted
技术标签:
【中文标题】在 GMT(通用映射工具)中使用自定义字体?【英文标题】:Using custom fonts in GMT (Generic Mapping Tools) ? 【发布时间】:2016-05-07 05:56:36 【问题描述】:我经常使用通用制图工具 (GMT) 以 postscript 格式生成高质量的地理地图。最近,我想从标准的 postscript 字体(GMT 默认提供的 Helvetica、Courrier 等)切换到我电脑上安装的其他字体。
我用谷歌搜索了这个问题,我发现可以使用如下自定义字体:
在本地目录或GMT目录的GMT的share/pslib中创建CUSTOM_font_info.d
文件并指定自定义字体名称、大小和编码
# CUSTOM_font_info.d
YourCustomFont 0.700 0
在您的 bash 脚本中,使用您的自定义字体 (gmt set FONT YourCustomFont
) 设置 FONT 变量
一旦我这样做了,我执行了我的 GMT 脚本,没有出现警告或错误,但我的图形上的字体不是我想要的字体。有人看到发生了什么吗?
顺便说一句,我在 Mac OS X 10.11.2 下运行 GMT 5.1.2,我要使用的字体是 CMU Sans Serif(下载为 .tff 和 .dfont 格式)。
【问题讨论】:
从小搜索中我已经完成了设置FONT
变量的方法似乎是gmt gmtset FONT YourCustomFont
。你试过了吗?
是的,我就是这样做的。奇怪的是,当 GMT 没有找到字体时,它通常会返回一条警告消息,说明它正在使用的字体。就我而言,我没有警告消息,但字体是默认字体。
【参考方案1】:
我刚刚遇到了同样的症状并设法解决了问题。就我而言,我想使用的字体是 Libris ADF Std。我有
LibrisADFStd 0.7 0
在字体定义文件中和
gmt set FONT LibrisADFStd
在我的 GMT 脚本中。我在我的 Ubuntu 16.04 系统上使用 fc-list
验证了名称。和你一样,我发现文件处理没有错误或警告,但输出文件没有以所需的字体显示 - 它退回到 Courier。但是,由于指定不存在的字体确实会产生来自 GMT 的警告,因此可以清楚地找到该字体。
我最终发现该字体有一个与其通常的系统名称不同的“PostScript 名称”。在字体的 OTF 文件上运行 fc-query
给出了许多其他输出,包括以下内容:
postscriptname: "LibrisADFStd-Regular"(s)
在 GMT 字体定义文件和脚本中将 LibrisADFStd
更改为 LibrisADFStd-Regular
允许 GMT 成功使用该字体。
【讨论】:
感谢您的回答。我试图应用你的食谱:它仍然不起作用,但我现在得到与 in the first post of this discussion 相同的错误。尝试应用讨论中提供的解决方案不会改变结果。以上是关于在 GMT(通用映射工具)中使用自定义字体?的主要内容,如果未能解决你的问题,请参考以下文章