Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby MiniMagick:使png部分不透明/如何使用'-评估';_Ruby_Image Processing_Imagemagick_Minimagick - Fatal编程技术网

Ruby MiniMagick:使png部分不透明/如何使用'-评估';

Ruby MiniMagick:使png部分不透明/如何使用'-评估';,ruby,image-processing,imagemagick,minimagick,Ruby,Image Processing,Imagemagick,Minimagick,我试图使用MiniMagick制作一个部分不透明的png,但我猜它真正归结起来是使用“-evaluate”的语法 这在终端中起作用: convert input.jpg -alpha on -channel a -evaluate set 25% output.png 但我不太明白如何将其转换为minimagick代码 这是我正在尝试的(最新排列): require 'mini_magick' img = MiniMagick::Image.open('input.jpg') img.co

我试图使用MiniMagick制作一个部分不透明的png,但我猜它真正归结起来是使用“-evaluate”的语法

这在终端中起作用:

convert input.jpg -alpha on -channel a -evaluate set 25% output.png 
但我不太明白如何将其转换为minimagick代码

这是我正在尝试的(最新排列):

require 'mini_magick'

img = MiniMagick::Image.open('input.jpg')
img.combine_options do |mogrify|
    mogrify.alpha 'on'
    mogrify.channel 'a'
    mogrify.evaluate 'set', '25%'

    puts mogrify.inspect
end
img.write('output.png')
inspect
输出显示
@args
@args=[“-alpha”、“-channel”、“-a\”、“-evaluate”、“-set\”、“-25%\”]


没有错误消息,但我得到的只是一个相同的输入副本。jpg

您几乎完全可以做到这一点,只是您还需要让Minimagik知道您正在使用以下方式以PNG格式输出:

    img.format('png')
请尝试以下方法:

    require 'mini_magick'

    img = MiniMagick::Image.open('input.jpg')
    img.format('png')
    img.combine_options do |mogrify|
        mogrify.alpha 'on'
        mogrify.channel 'a'
        mogrify.evaluate 'set', '25%'
    end
    img.write('output.png')

您可能想尝试设置
mogirfy.evaluate“set 25%”
,因为逗号不符合您的想法是的,这是我开始的,但随后您会收到以下错误消息:命令(“mogrify-alpha“on”-channel“a”-evaluate“set 25%”/var/folders/wh/2k_8_pq10xj0w241f6438l_w0000gn/T/mini_magick20121122-25863-u6ysmi.jpg”)失败:{:status_code=>1,:output=>“mogrify:option需要一个参数`-evaluate'@error/mogrify.c/MogrifyImageCommand/4539。\n”}(MiniMagick::error)是否也尝试将格式设置为PNG?