Ubuntu安装ImageMagick

很久没有使用Rmagick了,因为做个程序需要,所以又要安装这个家伙,但遇到了问题:

Postscript delegate failed `/tmp/magick-3673DirXwP52M9uZ

解决方法:

./configure --with-gslib=yes

但是确保ghostscript及libjpeg-dev已安装,如果还需要png(libpng12-dev)等也要安装相应包

ruby使用了Rmagick和MiniMagick

重新编译安装后,Rmagick已正常,但MiniMagick仍然有问题:

如果在图片上写入“测试程序”则报编码错误,如果写入“a测试程序”,则可以写入,还是没有找到原因,在网上也查了,似乎MiniMagick确实会出现此问题。。。

代码如下:

# encoding: UTF-8



require 'RMagick'

require 'mini_magick'



module ImageExt



  class << self



    def generate_img

      img = Magick::Image.new(200,200,Magick::HatchFill.new('green','green')) 

      gc=Magick::Draw.new

      gc.stroke('transparent') 

      gc.pointsize(28)

      gc.font='simfang.ttf'

      gc.text(20,20,'测试程序')

      gc.font='simkai.ttf'

      gc.text(20,60,'测试程序')



      gc.draw(img)

      img.write("test.png")

    end



    def rmagick

      img = Magick::Image.new(200,200,Magick::HatchFill.new('green','green'))  

        

      gc = Magick::Draw.new  

      # gc.stroke('transparent')  

      gc.pointsize(24)  

      gc.font("simfang.ttf")

      gc.text(20,40, '测试程序')  

      gc.text(20,70, '测试程序')  

        

      gc.fill('white')  

      gc.font("simkai.ttf")  

      gc.text(20,100, '测试程序')  

      gc.text(20,130, '测试程序')  

      gc.text(20,160, '测试程序')  

        

      gc.draw(img)  

      img.write('love.jpg')  

    end



    def mini_magick

      img = MiniMagick::Image.open("test.png")

      img.combine_options do |c|

        c.gravity 'Southwest'

        c.pointsize '20'

        c.font "simfang.ttf"

        c.draw 'text 10,0 "a测试程序"'

        c.fill("#FF0000")

      end

      img.write("test.png")

    end



  end



end



ImageExt.generate_img

ImageExt.rmagick

ImageExt.mini_magick

  

Ubuntu安装ImageMagick

Ubuntu安装ImageMagick

 

问题补充:

今天安装一台新机器时,同样的安装方法,却又出现了新的错误:

安装RMagick时,报错如下:

checking for wand/MagickWand.h... no

发现又缺少两个包,但不理解为什么同样的安装方式,系统与开发环境的版本都相同,却缺少这些包??

sudo apt-get install libmagickcore-dev libmagickwand-dev

 

你可能感兴趣的:(ImageMagick)