在 .eps 中进行 psfrag 替换后,文本错位

在 .eps 中进行 psfrag 替换后,文本错位

我需要翻译 eps 文件中的文本。为此,我使用 psfrag 包,如下所示:

\documentclass[12pt]{article}
\usepackage{psfrag}
\usepackage[dvips]{graphicx,color}
\usepackage[utf8]{inputenc}
\usepackage[T2A]{fontenc}
\usepackage[ukrainian]{babel}
\thispagestyle{empty}

\begin{document}

\begin{figure}
\psfrag{valid}[][][0.8]{справжній}
\psfrag{match}[][][0.8]{збіг}
...
\includegraphics{rk-figure.eps}
\end{figure}

\end{document}

但替换后,有些单词未对齐。在这里您可以看到单词молодший比略高старший。我可以使用一些 LaTeX 命令来避免这种情况吗?

在此处输入图片描述


调查显示,问题出在 latex 如何对齐原始英文字符。在此示例中,问题出ghigh-order

因此,我想放入\struteps 文件以使所有基线对齐相同。但我不能这样做:

1 -99.5 -100 @w
268 1685 :M
(\strut{}high-order)S

还有其他选择吗?也许有一个已知字母具有最大的深度,我可以将其放在 eps 文件中每个标签的开头?

答案1

如果没有 MWE 的话很难提供帮助,但我建议\strut在所有替换文本中放入一个来对齐文本框。

答案2

这是 (La)TeX 命令,指定高度和深度\strut的距离。Postscript (ps) 是一种不同的语言,因此无法理解这一点。0.7\baselineskip0.3\baselineskip

由于 strut 来自排版,我很确定可以在 ps 中实现,但不知道怎么做。您可以尝试将文本替换为没有深度字母的文本(例如 g 或 j)。但我怀疑这是否可行,因为定位已经在 ps 文件中完成。

对于有字母深度的情况,我会尝试找到它,从0.3\baselineskip这个值开始并以此值递增。如果所有 ps 文件中的字体相同,则只需找到此值一次。

相关内容