使用图像转换分发ruby脚本

时间:2012-06-29 21:13:50

标签: ruby image-processing imagemagick executable freeimage

我想分发一个Ruby脚本的Mac / Windows可执行文件(除了其他东西)将从/到常见图像格式转换为.xpm / X PixMap(wikipedia

我知道以下宝石可以作为预装库(主要是ImageMagick)的包装:RMagick,Mini magick,Image science,Magickly,Devil,Im magick,Free-image等。

根据我的理解,问题归结为以下几点:Imagemagick和Freeimage需要安装在系统上,而不仅仅是在脚本中以相对方式指向。并且Ruby2Exe,Ocra,Crate没有将库和我的脚本作为可执行文件分发的功能。

有没有技术上的原因我还没有发现gem可以在不使用外部库的情况下执行此操作? 我的问题有哪些可能的解决方案?

1 个答案:

答案 0 :(得分:0)

一种可能的解决方案:

找一个可以执行所需转换的免费命令行实用程序。最好的是不需要任何特殊安装(只需将EXE文件放到硬盘驱动器上并运行它)。

在Ruby程序中,使用反引号调用命令行实用程序。如果它不在系统路径上,则可能必须以utility.exe而不是utility调用它。因此,无论当前工作目录如何,您都可以正确调用它,您可能必须使用使用File.dirname(__FILE__)File.expand_path生成的绝对路径。或者在尝试调用该实用程序之前更改工作目录。

最后,您只需将该实用程序与Ocra生成的Ruby EXE打包在一起。

我建议这一切因为我知道尝试在Windows系统上安装RMagick会非常痛苦。