Wir versuchen, eine Überlagerung auf eine Reihe von Bildern anzuwenden, bevor Sie sie zu einer zusammenfügen. Derzeit scheint es, als ob imagemagick das Bild in die Farbe umwandelt, die angewendet wird, anstatt eine Überlagerung anzuwenden. Die Dokumente sind nicht sehr klar, was wir anders machen sollten. Ich würde mich freuen, wenn Sie dazu einen Einblick haben. Code folgt:Farbüberlagerung mit Deckkraft mit ImageMagick in Rails
def self.concatenate_images (source, image)
height = FastImage.size(image.url)[0]
width = FastImage.size(image.url)[1]
source = source.first
source = source.resize_to_fill(height, width).quantize(256, Magick::GRAYColorspace).contrast(true)
User.color_variant.each_slice(3).with_index do |slice,variant_index|
slice.each_with_index do |color,color_index|
colored = Magick::Image.new(height, width) { self.background_color = color.keys[0]}
colored.composite!(source.negate, 0, 0, Magick::CopyOpacityCompositeOp)
colored.write("#{User.get_img_path}#{color.values[0]}.png")
if variant_index == 2 && color_index == 0
system "convert #{User.get_img_path}#{slice[0].values[0]}.png #{image.url} +append #{User.get_img_path}#{slice[0].values[0]}.png"
end
if color_index!=0 && variant_index != 3
system "convert #{User.get_img_path}#{slice[0].values[0]}.png #{User.get_img_path}#{slice[color_index].values[0]}.png +append #{User.get_img_path}#{slice[0].values[0]}.png"
end
end
end
, die nicht Kumpel funktionierte aber danke ich versuchte es. Es ist nur imagemagick hat solche sprudelnde Dokumentation ... soooo viel Schreiben ... –