Overview
Examples
Screenshots
Comparisons
Applications
Download
Documentation
Tutorials
Bazaar
Status & Roadmap
FAQ
Authors & License
Forums
Funding Ultimate++
Search on this site
Search in forums












SourceForge.net Logo
Home » U++ Library support » Draw, Display, Images, Bitmaps, Icons » Slow image drawing on big images
Re: Slow image drawing on big images [message #13856 is a reply to message #13855] Wed, 30 January 2008 10:33 Go to previous message
mdelfede is currently offline  mdelfede
Messages: 1307
Registered: September 2007
Ultimate Contributor
luzr wrote on Wed, 30 January 2008 09:01



IMO, forget about ImageCtrl. It was not designed for this purpose and it is about 20 lines anyway. Roll your own widget.

For zooming, just use Rescale, it is close to perfect. Also, you might prefer cached variant, use

Image CachedRescale(const Image& m, Size sz, const Rect& src);

or

Image CachedRescalePaintOnly(const Image& m, Size sz, const Rect& src);

PaintOnly means that you do not intent to access the pixel matrix anymore; Draw is then allowed to free the memory. "Cached" means you can call this function in Paint routine; if source parameters do not change, Image is restored from the cache.




What I need is :

1-load images from a multipage tiff file
2-make some small thumbnails of it to show on left side (easy)
3-show the pages on the center, with zoom/rotate/pan ability

For the point 3, I'd rescale all the images at once on zoom request (zooms are seldom than pans), but I'd keep the original images in order to avoid multiple file loading and to not loose quality on successive rescalings. So, original images + scaled images to display them quickly + thumbnails.
The best would be a rescale that keeps the cached image up to a new rescale, but it should allow panning, so multiple partial displays of it... I don't know if CachedRescale does the job.

Ciao

Max
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Image into a polimorphic array
Next Topic: Alpha channel in raster images
Goto Forum:
  


Current Time: Tue May 14 17:14:32 CEST 2024

Total time taken to generate the page: 0.02287 seconds