2012-03-01 3 views
1

2D BYTE (부호없는 char) 배열이 있습니다. buf [50] [100] 어떤 데이터가 있습니다. QgraphicsView를 사용하여 Qt의 이미지에이 버퍼를 그려야합니다. (x, y)의 바이트는 배열의 (x, y) 번째 픽셀을 나타냅니다. 이 배열을 QGraphicsView에 전달하여 매우 빨리 그릴 수 있습니까? 아니면 QGraphicsView를 사용하지 않고 다른 방법으로 2D 배열로 이미지를 그리는 데 도움이됩니다.2D BYTE 배열 Qt에서 QGraphicsView를 사용하여 이미지를 그릴 수 있습니까?

답변

0

from a pre-existing memory area 개체를 만들 수 있으며 drawImage 호출을 사용하여 보통 QPainter에 그릴 수 있습니다.

픽셀 당 8 비트 이미지를 사용하는 경우 이미지의 경우 set up a palette이어야합니다.

팔레트는 단순히 바이트 인덱스에서 QRgb 색상 값으로의 매핑입니다. 다음과 같이 설정할 수 있습니다.

static void setGrayColorMap(QImage * img) 
{ 
    img->setColorCount(256); 
    for (int i = 0; i < 256; ++i) { 
     img->setColor(i, qRgb(i,i,i)); 
    } 
} 
+0

이미지 팔레트를 어떻게 설정할 수 있습니까? 각 픽셀은 배열의 각 바이트에 해당합니다. – indira

관련 문제