void PictureFlowSoftwareRenderer::init()
{
if(!widget)
return;
surfaceCache.clear();
blankSurface = 0;
size = widget->size();
int ww = size.width();
int wh = size.height();
int w = (ww+1)/2;
int h = (wh+1)/2;
#ifdef PICTUREFLOW_QT4
buffer = QImage(ww, wh, QImage::Format_RGB32);
#endif
#if defined(PICTUREFLOW_QT3) || defined(PICTUREFLOW_QT2)
buffer.create(ww, wh, 32);
#endif
//buffer.fill(bgcolor); // 把一些设置背景的地方注释掉,如这里 rays.resize(w*2);
for(int i = 0; i < w; i++)
{
PFreal gg = ((PFREAL_ONE >> 1) + i * PFREAL_ONE) / (2*h);
rays[w-i-1] = -gg;
rays[w+i] = gg;
}
// 添加下面的语句,绘制图片的背景
QPainter painter(&buffer);
painter.save();
painter.setBrush(QBrush(QImage(":/s5.jpg")));
painter.drawRect(buffer.rect());
painter.restore(); dirty = true;
}