gpt4 book ai didi

ruby-on-rails - Carrierwave PNG 到 JPG 转换器。如何避免黑色背景?

转载 作者:行者123 更新时间:2023-12-04 20:50:21 24 4
gpt4 key购买 nike

例如,在回形针中,当 .png 转换为 .jpg 时,可以添加它来设置白色背景:

:convert_options => { :all => '-background white -flatten +matte'}

一旦carrierwave也使用rmagick,该怎么做?

观察:我的文件存储在 S3 中。

我的代码:
version :square do
process :resize_to_fill => [200, 200]
process :convert => 'jpg'
end

最佳答案

这是仅进行转换和背景填充的更健全的版本

def convert_and_fill(format, fill_color)
manipulate!(format: format) do |img|
new_img = ::Magick::Image.new(img.columns, img.rows)
new_img = new_img.color_floodfill(1, 1, ::Magick::Pixel.from_color(fill_color))
new_img.composite!(img, ::Magick::CenterGravity, ::Magick::OverCompositeOp)
new_img = yield(new_img) if block_given?
new_img
end
end

用法示例:
process convert_and_fill: [:jpg, "#FFFFFF"]

关于ruby-on-rails - Carrierwave PNG 到 JPG 转换器。如何避免黑色背景?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11440582/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com