U++ framework
Do not panic. Ask here before giving up.

Home » U++ Library support » Draw, Display, Images, Bitmaps, Icons » How to efficiently update a large Image?
Re: How to efficiently update a large Image? [message #22597 is a reply to message #22588] Wed, 29 July 2009 09:18 Go to previous messageGo to previous message
Tom1
Messages: 1319
Registered: March 2007
Ultimate Contributor
Hi Mirek,

Here's the raw GDI code for SetSurface with added flexibility:

void SetSurface(HDC dc, Rect &dest, Point &srcoff, Size &bufsz, const RGBA *pixels){
	GuiLock __;
	BitmapInfo32__ bi(bufsz.cx, bufsz.cy);
	::SetDIBitsToDevice(dc,dest.left,dest.top,dest.Width(),dest.Height(),srcoff.x,-srcoff.y-dest.Height()+bufsz.cy,0,bufsz.cy,pixels, bi, DIB_RGB_COLORS);
}

void SetSurface(SystemDraw &w, Rect &dest, Point &srcoff, Size &bufsz, const RGBA *pixels){
	SetSurface(w.GetHandle(),dest,srcoff,bufsz,pixels);
}


I'm not quite confident I can reproduce this in X11 in a truly powerful way, so I hope someone with solid X11 knowledge will pick it up.

// Tom
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Color menu choice
Next Topic: Support for 2bpp tiff images
Goto Forum:
  


Current Time: Mon Sep 28 11:07:17 GMT+2 2026

Total time taken to generate the page: 0.01123 seconds