The single most important feature I am looking for is that the image viewer auto-refreshes the image (while you are viewing it) when it changes on the disk.

I have tried:

  • Irfanview
  • FastStone Image Viewer
  • Windows Photo Viewer
  • Imagine Picture Viewer
  • pViewer
  • Picasa

In case the version of Windows matters, it has to work on Windows 7. A free image viewer viewer is preferable. An open source one would be ideal.

  • 1
    +1 I am using the msdn.microsoft.com/en-us/library/… component in my app (not an image viewer) and I am sure it could be used in an image viewer as well, indeed.
    – Nicolas Raoul
    Commented Mar 27, 2014 at 6:13
  • 3
    I found this thread looking to solve the same issue and then after reading all the solutions decided to try Visual Studio Code, which I already had open, and it works! LIke Sublime, leave it to a text editor ...
    – Luther
    Commented Jan 21, 2021 at 2:09
  • FastStone MaxView maybe. Commented Nov 17, 2021 at 9:56

12 Answers 12


It's been a while since I've used it (and I don't have a Windows box handy to test on) but I remember using an image viewer called JPEGView. From memory, I seem to recall it supporting the feature you need most: refreshing the display when the source file changes. In any event it is one of the few open-source image viewers for Windows that I found to holds its own.

It has a few extra tricks up its sleeve like the ability to slideshow a folder of images and do quick on the fly basic editing, but its real claim to fame is the lightweight interface that stays out of your way.

JPEGView screenshot

Another one is imgv but it seems to have been a long time since it was updated and I cannot find any evidence of whether it supports what you are looking for.

  • JPEGView is perfect. +1 for it being an open source solution too and the fact that it refreshes faster than the FastStone image viewer.
    – Carl
    Commented Jun 16, 2014 at 21:13
  • JPEGView is nice but it doesn't let you open more than two images!
    – Michael
    Commented Jun 22, 2019 at 18:57

Sumatra PDF, though mainly used as a PDF reader, DJVU reader, and EPUB reader, can also open most image formats and automatically refreshes the document view, without locking the document if any other program is processing it. Quoting its web page, it opens:

PDF (.pdf) eBook formats: unencrypted EPUB (.epub) MOBI (.mobi)

Fiction Wise (.fb2, .fb2z, .zfb2) .pdb (Palm DOC format) .tcr

Comic book files: .cbz, .cbr, .cbt, .cb7z DjVu (.djv, .djvu)

Microsoft Compiled HTML Html (.chm) XPS (.xps)

Images (.tga, .gif, .jpg, .j2k,> .png, .webp, .tiff)

You can find further documentation at https://www.sumatrapdfreader.org/manual.html.

  • 2
    This is for me the best answer! Didn't know this about SumatraPDF (a great PDF viewer anyone should have anyway), and it works perfectly.
    – Duke
    Commented Sep 26, 2020 at 21:49
  • Sumatra works but the zooming and panning is super janky... DJVU allows you to open PNGs but it doesn't display them. No error message, you just get a single blank white page document... Commented Aug 31, 2021 at 21:43

Visual Studio Code also refreshes the image on file change.


Neither JPEGView nor Okular worked for me, however FastStone Image Viewer worked.

Also Atom from Github is refreshing my image on file-change. Currently tested with png.


Adding this answer in case someone needs this in the future:

FastStone image viewer actually does work for this purpose. However, sometimes there can be a significant delay in the image refresh, which is what had me fooled when I posted the question.

None of the others do.


If you have access to Visual Studio you can easily write one.

Create a new F# Library project, right click on it and select Properties. Change the Output Type to Windows Application. Finally paste this code into Library.fs:

open System
open System.IO
open System.Windows.Forms

let main argv = 
    match argv with
    | [|filePath|] ->
        if not <| File.Exists filePath then
            printfn "File doesn't exist"
            let path, file = Path.GetDirectoryName(filePath), Path.GetFileName(filePath)

            use box = 
                new PictureBox(
                    ImageLocation = filePath,
                    SizeMode = PictureBoxSizeMode.Zoom,
                    Dock = DockStyle.Fill)

            use form = new Form(Text = file)

            use fsw = new FileSystemWatcher(path, file)
            fsw.Changed.Add(fun _ -> box.ImageLocation <- filePath)
            fsw.EnableRaisingEvents <- true

    | _ ->
         Console.Error.WriteLine("Usage: ImageMonitor <filePath>")
  • 2
    You should create an open source project on GitHub and take credit for this :) Commented Mar 17, 2017 at 16:45

I just wrote a program, inspired by @Kit answer, with a few bonuses like retry, displaying last update time, etc. Very simple and straightforward, I hope it helps!


  • 2
    I've tried it briefly and it worked well for me. Thanks for sharing!
    – Wizek
    Commented Feb 3, 2018 at 5:22

Honeyview also does this. I was looking for the same to preview my pixel art on another monitor as I edit it. It also supports nearest neighbor scaling ("No filter" in the menu)


Okular is a document viewer that opens pdf, djvu, jpeg, png files, perhaps even more. It's a KDE app, since KDE is cross-platform, you may give it a try. Expect a big download though. On the other hand if you plan to use it on Linux, it should be pretty easy to get it up and running.

And yes, it auto refreshes when your file is changed on disk.

  • yes, definitely.
    – qed
    Commented Jun 16, 2014 at 14:12
  • 1
    Tried Okular, it didn't detect file change
    – A T
    Commented Mar 16, 2015 at 0:19
  • I guess you tried it on Windows?
    – qed
    Commented Mar 16, 2015 at 0:20
  • Yeah, Windows 7 with a remote network share.
    – A T
    Commented Mar 16, 2015 at 0:24
  • See my answer - softwarerecs.stackexchange.com/a/17974/872
    – A T
    Commented Mar 18, 2015 at 1:57

Windows Photo Viewer works just fine for me, but it's picky.

I have a script that outputs a PNG image. If I open the image in WPV from the explorer AND leave the explorer window open on that folder, then WPV updates in about half a second.

Otherwise, WPV doesn't seem to notice updates to the file.


This may be a bit unconventional but Sublime Text does this quite nicely. I haven't tested it with many file formats, but it's working for a PNG file just fine. In my particular case, I need it to update a python plot as I change it.

Leave it to a text editor to do what an image viewer should.


I know this is an old question but I did not want to install another image viewer. However, a web browser works just fine depending on what you need. You can open the image directly in it and then either

  • hit refresh if you want to check
  • or use a reloading extension/addon.

Granted, neither will detect a change and then reload but you will be able to keep track of changes you make in near-realtime. This solved the question for me.

As reloaders I use

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.