nakst/imgview

fantastic program

Opened this issue · 3 comments

what a great program. loads instantly and does its job graciously. default behaviour seems to be "open file on clipboard" which is something I've never seen before. interesting. it also doesn't complain when it finds the end of a folder - it simply starts again from the beginning. some programs lack this function either by default or at all (irfanview...). compared to other similar programs, its memory footprint is non-existent: qview, for example, has a 20 megabyte executable, and has pretty much the same functions than imgview. also written in C++. honeyview takes 350MB for the same image imgview takes 5MB (760KB jpeg). insane.

at original resolutions (actual size), the image looks as good as other image viewers. when you zoom in too much, it gets a bit messy, but is still usable. i couldn't notice a quality difference between this and other image viewers at original resolution. the messy zoom thing is prolly due to the absence of filters.

it doesn't support gif (opens, but no animation), but it does support png.

some features that would be great and wouldn't harm the small size:

  • persistent preferences (dark mode, for example)

  • delete with del key

  • fullscreen

feature that would be nice as well: some kind of filtering to avoid messy images on zoom

it's still fantastic as-is though. these features would make it better, hopefully increasing the size by only a few kbytes

nakst commented

If you are able to compile the application yourself, you will find that persistent dark mode has already been implemented.

For filtered zooming, change this line https://github.com/nakst/imgview/blob/master/imgview.cpp#L298 to be GdipSetInterpolationMode(graphics, InterpolationModeHighQualityBilinear);

gif support is tricky, probably not going to happen unfortunately.

For deleting, add a branch for the delete key here https://github.com/nakst/imgview/blob/master/imgview.cpp#L952 and call DeleteFile(filesInFolder[indexInFolder].path);

For fullscreen, see https://devblogs.microsoft.com/oldnewthing/20100412-00/?p=14353

i'm not quite sure how to compile it, are there compiling instructions somewhere? not sure how to create a branch for the delete key either (i'm not a programmer). if these features are already implemented, could you add a new release that contains them?

nakst commented

Unfortunately I am quite busy at the moment so I don't have time to add these new features. I'll add the "Help wanted" tag in the hope that somebody else that contribute the necessary code.