while循環我relativly新Ruby或編程好,所以請原諒我,如果我在拍「noob2錯誤與這裏的邏輯。while循環在紅寶石
我試圖使用Chunky_PNG獲取圖像中每個像素的二進制rgba像素值輸出(以及它的位置)
儘管輸出是正確的,但它只顯示第一行,好像外層循環會只能運行一次
是否存在邏輯錯誤,或者while循環中的while循環無法工作? 這樣做可能是不好的做法,我可以想象,但我仍然想知道爲什麼它不是它應該的。
require 'chunky_png'
image = ChunkyPNG::Image.from_file('test.png')
#vars
$width0 = 0
$widthmax = image.dimension.width.to_i
$height0 = 0
$heightmax = image.dimension.height.to_i
#main
while $height0 < $heightmax do
while $width0 < $widthmax do
puts image[$width0,$height0].to_s(2)[0..7] + " " + image[0,0].to_s(2)[8..15] + " " + image[0,0].to_s(2)[16..23] + " " + $height0.to_s + "," + $width0.to_s
$width0 += 1
end
width0 = 0
$height0 += 1
end
爲什麼你使用全局變量(即帶有'$'前綴的變量)? – 2013-05-05 20:03:48
Globals是教程中使用的第一種類型的血統書我擡頭,所以我想他們是第一選擇 – x3nu 2013-05-05 20:34:19
我建議你找到一個更好的教程。 – 2013-05-05 20:38:10