【问题标题】:How to convert image to EPS file without leaving any margins with MATLAB?如何在不留任何边距的情况下将图像转换为 EPS 文件?
【发布时间】:2012-12-31 10:25:50
【问题描述】:

我正在使用以下脚本将图像转换为 EPS 文件。

%% Image 2 eps file.
% - img: the image.
% - eps: eps filename.
function Image2Eps(img, eps)
    imshow(img,'border','tight','InitialMagnification',100);
    print(gcf,'-depsc',eps);
end

生成的文件几乎将图像紧紧地绑定在一起。 但是在顶部和右侧总是会留下一个小的边距。 如何使EPS文件与位图图像大小一致?

【问题讨论】:

  • 你为什么使用 Matlab 来完成这项任务?为什么不使用gs
  • 这是文档中的相关评论,也许它有帮助:Note: There can still be a border if the image is very small, or if there are other objects besides the image and its axes in the figure. 除了防止它发生之外,您还可以在之后删除边框?
  • Shai:你能提供一些关于使用ghostscript将位图图像转换为eps的更多想法吗?用于演示的命令行?

标签: matlab eps


【解决方案1】:

如果你对 Matlab 没有太着迷。您可以使用Image Magick 进行转换。 我在命令行中使用它:

imgtops2.exe imge.ppm -e -c 0,0 -o image.eps

我在 Windows 机器上使用它,但我相信他们也有适用于其他操作系统的二进制文件。

此外,一旦您在dosshell 中有一个工作命令行,您就可以使用systemdosunix 命令从Matlab 调用它。

PS。

我使用的是旧版本的 ImageMagick,在最近的版本中,它们可能已将 imgtops2 更改为 convert,您必须查看他们的文档。

【讨论】:

    猜你喜欢
    • 2014-02-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-10
    • 1970-01-01
    • 2019-12-07
    • 2021-05-08
    相关资源
    最近更新 更多