cyotek / imagelistview

Automatically exported from code.google.com/p/imagelistview
5 stars 0 forks source link

Optional .NET 3.0 version using WIC #85

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Hello Ozgur,

I attached a modified Utility.cs that speeds up the thumbnail generation 
significantly (~factor 6) for large images that don't contain an embedded  
thumbnail. It uses the Windows Imaging Component (WIC) via .NET 3.0.
(http://en.wikipedia.org/wiki/Windows_Imaging_Component)

I'm currently working on Exif extraction, again via WIC. Since I only want to 
replace/swap affected classes/methods I already restructured the 
ShellImageFileInfo class. This changed class now implements only Exif 
functionality and can be easily disabled via #if #endif pragmas (see WIC_WPF in 
Utility.cs and ThumbnailFromFile() as example.)

Since ShellImageFileInfo opens an image file another time just for Exif 
extraction it would probably speed up the thumbnail generation a bit more if 
this would be moved to ThumbnailFromFile(). I only want to change one file 
(Utility.cs), so these (hopefully minor) changes must be made by you if my 
proposal makes sense to you. (I don't really understand the reasoning why 
ShellImageFileInfo functionality and Exif extraction are currently bound 
together.)

Besides the significant speed up, I think an optional WIC enabled ImageListView 
would be a worthy addition to your excellent control.

Regards,
Jens

Original issue reported on code.google.com by modernv...@arcor.de on 24 Aug 2010 at 8:25

Attachments:

GoogleCodeExporter commented 9 years ago
Wow, great feedback. Thanks a lot. I'll need a couple days to go through this.

Best regards,
Ozgur

Original comment by oozcitak on 24 Aug 2010 at 8:53

GoogleCodeExporter commented 9 years ago
Hi Jens,

I finally decided to bite the bullet and release a WPF version of the control 
with WIC enabled. This will be a major change (not the WIC part but the WPF 
part) mainly because I don't have much WPF experience yet. I am creating the v8 
branch for the new release. v7 will be the last major release for .NET 2.0. I 
won't add new features to the v7 branch anymore; only bug fixes. Hope to see 
you in the v8 release soon :)

Thanks,
Ozgur

Original comment by oozcitak on 22 Sep 2010 at 11:55

GoogleCodeExporter commented 9 years ago
Hi Ozgur,

I attached a new Utility.cs version. It's derived from the 7.5 version (for 
reasons I stated in my first posting).

The thumbnail code now also rotates the image according to the EXIF orientation 
flag.
I copied and modified your Exif metadata code. Some changes might be 
interesting. (Your code doesn't handle exposure times longer than one second 
very well, shutter speed is the same as exposure time, cannot/don't want to use 
fraction strings). Of course, I also added a WIC/WPF version.

I don't think I have anything else to contribute since I'm only interested in 
the .NET 3.0 wrapper for WIC. (My project requires window/control handles and 
they don't exist in WPF anymore.)

Regards,
Jens

Original comment by modernv...@arcor.de on 24 Sep 2010 at 6:53

Attachments:

GoogleCodeExporter commented 9 years ago
Thank you Jens. Can you tell me how you would like to be addressed in the 
contributors list? You can send me an email if you like.

Regards,
Ozgur

Original comment by oozcitak on 24 Sep 2010 at 7:08

GoogleCodeExporter commented 9 years ago
Jens, I am releasing the WIC version now. Please take a look at contrib.txt and 
let me know if it is OK.

Thanks,
Ozgur

Original comment by oozcitak on 25 Sep 2010 at 11:25

GoogleCodeExporter commented 9 years ago
Added WIC support in r402.

Original comment by oozcitak on 25 Sep 2010 at 11:27