【问题标题】:ActiveStorage variant compositeActiveStorage 变体组合
【发布时间】:2018-08-16 15:13:28
【问题描述】:

我需要给图片加水印,cmd ImageMagick 命令

convert image.png watermark.png -composite target.jpg 

composite -watermark 30% -tile watermark.png image.png target.jpg

如何使用 ActiveStorage::Variant 执行此操作?

【问题讨论】:

    标签: ruby-on-rails imagemagick rails-activestorage


    【解决方案1】:

    试试这个:

    def medium_img_watermark
        if self.img_first.attached?
          self.img_first.variant(resize: '1200', quality: 75, density: 96,
                                 combine_options: {
                                  gravity: 'center',
                                  draw: 'image Over 0,0 0,0 "public/logo_white.png"'
                                }).processed
        end
      end
    

    【讨论】:

      【解决方案2】:

      只需添加 gem 'mini_magick',安装并按照他们的说明进行操作。

      ActiveStorage 将可以访问 API,您可以在此处找到该 API:

      https://www.imagemagick.org/script/mogrify.php 
      

      在活动存储中,您可以像这样访问 API:

      <%= image_tag image.variant(resize: "500x500", monochrome: true) %>
      

      问候

      【讨论】:

        猜你喜欢
        • 2018-11-05
        • 2019-07-24
        • 2019-06-05
        • 2019-02-22
        • 1970-01-01
        • 2011-09-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多