字体

Gnuplot 本身并不提供任何字体。它依赖于外部的字体处理,不幸的是,从一种终端类型到另一种终端类型的细节是不同的。这里给出适用于多种终端的字体机制的简要文档。其他终端的字体信息,请参阅该终端的相关文档。

尽管可以通过临时切换到像 Adobe Symbol 这样的特殊字体,来包括非字母符号,但是现在首选的方法是使用 UTF-8 编码为所需符号指定 Unicode 入口点。参考编码区域设置

cairo (pdfcairo, pngcairo, epscairo, wxt 终端)

这些终端使用外部 fontconfig 工具集来查找和访问字体。请参考fontconfig 用户手册。通常 gnuplot 只需要一个通用名称和大小来请求字体就足够了,如果需要的话,让 fontconfig 换一个类似的字体。下面的例子可能都能正确工作:

 set term pdfcairo font "sans,12"
 set term pdfcairo font "Times,12"
 set term pdfcairo font "Times-New-Roman,12"

gd (png, gif, jpeg, sixel 终端)

png, gif, jpeg 和 sixelgd 终端的字体处理由 libgd 库完成。libgd 直接提供 5 个基本字体,分别为tiny(5x8 像素),small(6x12 像素),medium(7x13 加粗),large(8x16) 或者giant(9x15 像素)。这些字体不能缩放和旋转。使用这些关键字而不是font关键字。例如

 set term png tiny

在大多数系统,libgd 也提供对 Adobe Type 1 字体 (.pfa) 和 TrueType 字体 (.ttf) 的访问。你必须给出字体文件名而不是它包含的字体名,形式 "<face> {,<pointsize>}"。<face> 可以是字体文件的完整路径名,也可以是 GDFONTPATH 环境变量中列出的目录中文件名的第一部分。也就是说set term png font "Face"将查找名为 <somedirectory>/Face.ttf 或 <somedirectory>/Face.pfa 的字体文件。例如,如果 GDFONTPATH 包含/usr/local/fonts/ttf:/usr/local/fonts/pfa,那么以下两对命令是等效的:

 set term png font "arial"
 set term png font "/usr/local/fonts/ttf/arial.ttf"
 set term png font "Helvetica"
 set term png font "/usr/local/fonts/pfa/Helvetica.pfa"

要同时请求默认字体大小:

 set term png font "arial,11"

TrueType 和 Adobe Type 1 字体都是完全可缩放和旋转的。如果在set term命令中没有指定字体,gnuplot 会检查环境变量 GNUPLOT_DEFAULT_GDFONT 是否有一个首选的默认字体。

postscript (也包括封装的 postscript *.eps)

PostScript 字体处理由打印机或查看程序完成。Gnuplot 可以创建有效的 PostScript 或者封装的 PostScript (*.eps),即使你的计算机没有任何字体。Gnuplot 只是在输出文件中通过名称引用字体,并假定打印机或查看程序知道如何通过名称查找该字体或近似的字体。

所有的 PostScript 打印机或查看程序都应该知道 Adobe 字体的标准集Times-Roman,Helvetica,CourierSymbol。很可能还有许多其他字体可用,但具体设置取决于你的系统或者打印机配置。Gnuplot 不知道也不关心这个,它创建的输出*.ps*.eps文件只是引用你请求的字体名。

因此

 set term postscript eps font "Times-Roman,12"

将产生适合所有打印机和查看程序的输出。

另一方面

 set term postscript eps font "Garamond-Premier-Pro-Italic"

将产生一个包含有效 PostScript 的输出文件,但由于它引用了一个特殊字体,因此只有部分打印机或查看器才能显示所请求的字体。大多数会替换为不同的字体。

但是,可以在输出文件中嵌入特定的字体,以便所有打印机都能够使用它。这要求你的系统上有一个合适的字体描述文件。注意,某些字体文件需要特定的许可才可以通过这种方式嵌入。更多详细的描述和示例参考postscript fontfile

results matching ""

    No results matching ""