我在将科学手稿的图像转换为图像时遇到问题。我一直使用它gnuplot
来制作图表,使用 TikZ 终端,最后使用 LaTeX 将图形生成为 PDF。它生成了一个漂亮的矢量图形图像,采用 PDF 文件格式(PDFLaTeX)。问题是出版商要求使用 EPS 格式的图像。当我尝试使用Imagemagick
或转换我的 PDFpdf2ps
时,我得到了一个低分辨率的光栅化图像。但据我所知,eps 也是一种矢量图形格式。我试图设置转换的分辨率,但得到的是相同的低分辨率图像。有没有办法将我的矢量图形 PDF 转换为矢量图形 EPS?或者有人知道如何使用gnuplot
LaTeX 排版/字体以 eps 格式导出?
谢谢,
答案1
使用pdftops
而不是convert
(来自 ImageMagick)。命令是
pdftops -f <first-page> -l <last-page> -eps <input.pdf> <output.eps>
例如,
pdftops -f 4 -l 4 -eps input.pdf output.pdf
模拟器
尝试以下步骤来诊断您的问题。
% simulator.tex
\documentclass[preview,border=12pt]{standalone}
\usepackage{filecontents}
\begin{filecontents*}{input.tex}
\documentclass[preview,border=12pt]{standalone}
\usepackage{tikz}
\begin{document}
This is a TikZ output.
\begin{tikzpicture}
\draw (0,0) circle (2);
\end{tikzpicture}
\tikz\fill[red] (0,0) ellipse (3pt and 5pt); is an ellipse.
\end{document}
\end{filecontents*}
\immediate\write18{pdflatex input}
\immediate\write18{pdftops -f 1 -l 1 -eps input.pdf output.eps}
\usepackage{graphicx}
\begin{document}
I am importing EPS image.\\
\includegraphics{output}
\end{document}
使用以下代码编译上述代码
latex -shell-escape simulator
dvips simulator
ps2pdf -dAutoRotatePages=/None simulator.ps
由于 ps2pdf
有时会自动旋转输出,请使用-dAutoRotatePages=/None
以防止其进行这种不必要的旋转。
如果您使用的是 Windows,请使用#
而不是=
,-dAutoRotatePages=/None
因为=
对于 Windows 中的批处理文件具有特殊含义。
非常重要的说明
opacity
例如,如果你在 TikZ 代码(以及 PSTricks 代码)中使用,
\documentclass[preview,border=12pt]{standalone}
\usepackage{tikz}
\begin{document}
This is a TikZ output.
\begin{tikzpicture}
\draw (0,0) circle (2);
\end{tikzpicture}
\tikz\fill[red,fill opacity=.5] (0,0) ellipse (3pt and 5pt); is an ellipse.
\end{document}
然后您将获得如下的栅格化输出。