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
    
  • 相关阅读:
    【数据结构】树的DFS序&欧拉序
    Codeforces 1335E2
    Codeforces 1335E1
    Codeforces 1338A/1339C
    【数据结构】ST算法
    Codeforces 1334C
    Codeforces 1333D
    Codeforces 1333C
    python中的socket编程实例与查看端口占用
    java中打印数组
  • 原文地址:https://www.cnblogs.com/arrongao/p/2791779.html
Copyright © 2011-2022 走看看