我已經使用resize_to_fill縮小爲[1,1]大小,從而將圖像縮小爲包含基本上整個圖像的平均顏色的單個像素(提供圖像當然,高度和寬度之間沒有巨大的差距)。 現在我試圖以十六進制格式檢索這個單個像素的顏色。檢索給定像素的顏色的十六進制代碼
從我能夠像這樣運行convert命令終端窗口:
convert image.png txt:
# ImageMagick pixel enumeration: 1,1,255,rgb
0,0: (154,135,116) #9A8774 rgb(154,135,116)
不過,我不確定我怎麼可以從應用程序內的模型before_save節期間運行此命令的圖像屬於。 圖像上傳和連接使用carrierwave
到目前爲止,我已經檢索到的圖像:
image = MiniMagick::Image.read(File.open(self.image.path))
但我不是很肯定如何從這裏PROCEDE。
啊,好極了!這完美的做法,謝謝! – 2012-01-17 13:24:11
很酷。我現在確定如果你在圖像外面戳,或者如果有一個alpha通道,它將會如何。所以請注意:) – 2012-01-17 13:28:46
我認爲把圖像縮小到1px×1px的大小應該可以消除這個問題,但絕對值得記住另一個實現。 – 2012-01-17 14:01:45