【问题标题】:bold enhanced text in gnuplotgnuplot 中的粗体增强文本
【发布时间】:2015-12-22 02:50:58
【问题描述】:

更新:此问题已在 gnuplot 的较新版本 (>5.0) 中得到解决;请参阅@andyras 的回答。


我很难让 gnuplot 在非 postscript 终端中创建带有粗体和增强文本的标签。以下脚本

#!/usr/bin/env gnuplot

reset

set terminal pdfcairo enhanced color lw 3 size 3,2 font 'Arial-Bold'
set output 'output.pdf'

set tics scale 0

plot -x title 'normal text', \
-2*x t 'enhanced_{text}', \
-3*x t '{/Arial-Bold attempt to specify_{font}}'

set terminal pngcairo enhanced color lw 3 size 400,300 font 'Arial-Bold'
set output 'output.png'
replot

set terminal postscript enhanced color lw 3 size 6,4 font 'Arial-Bold'
set output 'output.eps'
replot

reset

生成以下 eps(使用 convert output.eps -rotate 90 outputeps.png 转换为 png):

这很好。但是,当我使用 pdf 或 png 终端时,结果如下所示:

请注意,虽然所有标签文本都应该是粗体,但只有没有任何增强文本的标签是粗体。此外,当我尝试手动指定字体(最后一行标题)时,字体不同(恢复为默认值?)。

在不使用 postscript 终端时,我应该期待这种行为吗?是否有另一种指定字体的方法(即命名方案在 postscript 之外是否不同)?

【问题讨论】:

  • 我的直觉反应是说这只是表明您的字体子系统的粗体字体文件实际上看起来并不是很“粗体”。但是,您的“普通文本”示例将这个假设从水中吹了出来。对我来说它看起来像一个错误......但是我报告的合理数量的错误已经回来标记为“不是错误”。无论如何,我会说值得报道。
  • 我同意。我之前报告的错误已被标记为不是错误,所以我想确保没有其他人有任何想法。
  • @mgilson 将它们标记为功能请求? :)
  • 看来你不是唯一一个遇到这个问题的人:newsgroups.derkeiler.com/Archive/Comp/…
  • 您介意将编辑移至答案吗?我已经想在这里将其他问题标记为与此问题重复,但我不能,因为没有接受或赞成的答案。谢谢!

标签: gnuplot postscript


【解决方案1】:

从 5.0 版开始,gnuplot 有了新的语法来处理这个问题:

 "normal text {/Times:Bold boldface-newfont} {/:Italic slanted-default-font } back to normal text"]

这些括号也可以嵌套。

【讨论】:

  • 如果您不想更改字体,更简单地说,使用"normal {/:Bold bold text} normal again"
【解决方案2】:

以 pdf 格式获得更好的结果。

使用增强的 eps 终端绘制曲线。然后使用 Imagemagic 将您的输出转换为 pdf 格式。使用命令

转换 myPlot.eps myPlot.pdf

使用此命令的默认分辨率会产生较差的输出。这可以通过使用值为 300 的密度选项来克服。修改后的命令看起来像

convert -density 300 myPlot.eps myPlot.pdf

我发现这将eps文件的所有文本格式保留在pdf文件中。

【讨论】:

  • 您不应该使用convert 将eps 转换为pdf。正如您还指出的那样,这会栅格化您的 eps 矢量图形。使用epstopdf 之类的东西来获得正确的结果。
  • 对:ps2pdf 是一个可以在矢量格式之间转换的 ghostscript 别名
猜你喜欢
  • 2014-09-04
  • 2017-01-20
  • 1970-01-01
  • 1970-01-01
  • 2023-03-25
  • 2022-01-09
  • 1970-01-01
  • 2013-01-31
  • 2011-03-09
相关资源
最近更新 更多