【问题标题】:Gnuplot pngcairo and postscript terminals not rendering some special characters?Gnuplot pngcairo 和 postscript 终端没有渲染一些特殊字符?
【发布时间】:2020-04-01 18:36:02
【问题描述】:

我在 pngcairo 和 postscript eps(均为增强型)终端中渲染某些字符时遇到问题。有问题的字符是简单的管道|,以及小于/大于字符<>。这些以完全不同的方式呈现,完全不同的字符。具体如下:

set ylabel "<|S_{dy}(t)-S_{mc}(t)|/{/Symbol s}_{mc}(t)>"

产生以下结果:

所以,是的,基本上它用其他随机字符替换字符。难道我做错了什么?这可以解决吗?这是我正在使用的 gnuplot 5.2.2。

【问题讨论】:

  • 你的操作系统是什么?如果你输入show encoding,你会得到什么?
  • 您需要发布一个示例文件。我可以查看 EPS 和 PostScript 文件,但我非常怀疑您的问题是否与这些文件有关。您使用的字体很可能不包含您想要的字符的字形,或者正如 theozh 暗示的那样,应用于字体的编码不会将字符代码映射到字体中的正确字形。
  • 我设法通过使用其他字体解决了这个问题——尽管字体是 cmr10,我确信它应该有这些字形,也许只是它们的不同代码。无论如何,我会在此发布我自己的答案。
  • 很高兴你能解决它。但是,为避免猜测,请始终从一开始就提供足够的信息,请参阅:stackoverflow.com/help/minimal-reproducible-example

标签: unicode gnuplot postscript eps


【解决方案1】:

所以我最终通过使用不同的字体解决了这个问题。特别是对于&lt;&gt;,我实际上使用了两个稍微不同的字形,它们更适合我对Symbol 的需求,而对于|,我使用了Times New Roman。最后一行看起来像:

set ylabel "{/Symbol \341}{/TimesNewRoman \174}S_{dy}(t)-S_{mc}(t){/TimesNewRoman \174}/{/Symbol s}_{mc}(t){/Symbol \361}"

并正确渲染。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-05-16
    • 1970-01-01
    • 1970-01-01
    • 2012-11-08
    • 2016-03-10
    • 2023-04-05
    • 1970-01-01
    相关资源
    最近更新 更多