PSfrag 不适用于 eps 文件的 3D 绘图

问题描述

我正在尝试使用 psfrag 来更改 eps 文件的文本字体和大小,包括 MATLAB 在我的期刊论文中制作的 3D 绘图。在这方面,我在 Overleaf 上的日记没有任何变化。你有什么解决办法? 我使用 pdflatex 作为编译器,并且还在与项目关联的 latexmkrc 文件中设置了这些设置:

    $pdflatex = 'pdflatex --shell-escape';
    $pdf_mode = 1;
    $postscript_mode = $dvi_mode = 0; 

我应该指出,使用 psfrag 正确更改了包含 MATLAB 2D 绘图的其他 eps 文件,但是此 3D 绘图 eps 文件不会更改!

这里是文章的文档类:

\documentclass[a4paper,fleqn]{cas-dc}

这里是项目中使用的包:

\usepackage[numbers]{natbib}
\usepackage{amsmath,amssymb}
\usepackage{ragged2e}
\usepackage{geometry}
\usepackage{caption}
\usepackage{subcaption}
\usepackage{graphicx}
\usepackage{lineno,hyperref}
\usepackage{psfrag}
\usepackage{pstricks}
\usepackage{auto-pst-pdf}

这是我用来生成图形的代码

\newcommand{\picwidd}{50mm}

\begin{figure*}[tp]
   \centering
   \psfrag{Inphase}{Inphase}
   \psfrag{Quadrature}{Quadrature}
   \psfrag{Probability}{Probability}
   \psfrag{0}{$0$}
   \psfrag{0.1}{$0.1$}
   \psfrag{0.2}{$0.2$}
   \includegraphics[width=\picwidd]{uni.eps}
\end{figure*}

这里是the link of the eps file.

解决方法

似乎所有由 MATLAB 制作并保存为 eps 文件的 3D 图都无法区分图形上的文本和图形本身,即当您检查 eps 文件时,您可以看到文本实际上是作为其中的一部分包含的光栅图像而不是文本。您不能使用 tex 更改文本。你能做的最好的事情就是覆盖文本,例如用tikz画白框,然后再写一遍。 [samcarter_is_at_topanswers.xyz]提出的解决方案

我有一个易于使用的替代解决方案,特别是如果您不熟悉 tikz 并正在寻找图形解决方案: 您可以使用 Inkscape 作为编辑 eps 文件的工具,向其中添加所需的文本,最后将它们另存为新的 eps 文件。因此,PSfrag 可以识别 eps 文件中的文本,并且效果很好。