1
안녕하세요 저는 BMP 리더 작가를 루비에 쓰려고하는데 지금은 화면에 글을 쓰고 있습니다. 나는 그림을 픽셀 배열에 저장하고 모든 픽셀에 RGB 색을 저장합니다. 창에서 아무 것도 일어나지 않습니까? 내가 뭘 잘못하고있어? 아니면 픽셀 데이터를 저장할 수있는 qt 개체가 있고 단순히 그것을 칠합니까?qtruby 그림을 한 점 씩 그리시오
def initialize
super
setWindowTitle "Transparent rectangles"
resize 590, 90
move 300, 300
show
end
def paintEvent event
painter = Qt::Painter.new self
bmp = BMP::Reader.new("picture.bmp")
drawPicture(painter,bmp.getPixels())
painter.end
end
def drawPicture(painter, pixels)
painter.setPen Qt::NoPen
0.upto(pixels.length-1) do |i|
0.upto(pixels[0].length-1) do |j|
painter.setBrush Qt::Brush.new Qt::Color.new pixels[i][j][2], pixels[i][j][1], pixels[i][j][0], 255
painter.drawPoint(i,j)
end
end
end
아, 고맙습니다. :) QImage 정보는 사실이지만 독자를 쓰고 싶습니다. 그것이 내가하는 일의 주요 부분입니다. 이제 Qt :: Picture에서 이것을 페인트하려고합니다. 데이터 나 다른 객체로 QImage를 채울 방법이 있습니까? 또는 Qt :: Picture를 회전시키기위한 쉬운 조작 클래스? – zajca