Объедините несколько «полос» изображения в одно изображение с помощью ChunkyPNG - PullRequest
2 голосов
/ 25 ноября 2011

Как бы объединить несколько (в данном случае 10) «полос» изображения (все одинаковой ширины) в одно изображение с ChunkyPNG?

Прямо сейчас у меня есть все эти полосы изображения, хранящиеся в массиве, и в какой-то момент мне придется расположить их на основе данных пикселей.Вот как выглядит мой код:

require 'chunky_png'

image = ChunkyPNG::Image.from_file('input.png')

width = image.dimension.width
currentWidth = 0
strips = []

20.times do
    image2 = image.crop(currentWidth, 0, 32, 359)
    strips << image2
    currentWidth += 32
end

Я новичок в программировании на ruby ​​и chunkypng, поэтому любая помощь очень ценится.

Спасибо.

1 Ответ

1 голос
/ 25 ноября 2011

Попробуйте это:

newpic = newpic.replace(strips[0], offset_x = 0, offset_y = 0)
newpic.save('name.png') # save when done

С помощью метода замены вы можете выбрать любую из полос из вашего массива и положить их на холст в соответствии со смещениями. Это то, что вы имели в виду?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...