zoukankan      html  css  js  c++  java
  • 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
    

      

    问题补充:

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

    安装RMagick时,报错如下:

    checking for wand/MagickWand.h... no
    

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

    sudo apt-get install libmagickcore-dev libmagickwand-dev
    
  • 相关阅读:
    asp.net mvc 路由检测工具
    asp.net mvc 通过StyleBundle添加样式后,没有作用
    mssql for xml path使用
    vs2013在使用ef6时,创建模型向导过程中,四种模型方式缺少2种
    Enterprise Craftsmanship
    对于已经添加引用,还找不到类型或名字空间的错误及svn客户端清除用户帐号密码
    Hadoop Yarn环境配置
    mac和Linux的环境变量设置
    文本分类入门(十)特征选择算法之开方检验
    ERROR 2003:Can't connect to MySQL server on 'localhost'
  • 原文地址:https://www.cnblogs.com/arrongao/p/2791779.html
Copyright © 2011-2022 走看看