Skip to content
FirekeeperPhatePublic

About

Fast image viewer and small editor for Windows, with comic and manga reading straight from zip/rar/7z archives. .NET 10 + WPF.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

pViewer

Latest release Downloads License: GPL v3

Image viewer and small editor for Windows, with comic and manga reading straight from archives.

pViewer demo: browsing, zoom, drawing, effects, two-page manga mode and keyboard shortcuts

Watch the demo in full quality (MP4, 45 s) — the images in it are generated for the demo.

This is the revised and finally updated version of the original pViewer, published on SourceForge: sourceforge.net/projects/picoviewer. Version 2 is a complete rewrite in .NET 10 + WPF of pViewer 1.x (WinForms, .NET Framework 4.0), keeping its ideas and keyboard shortcuts.

Features

  • Fast viewing: nearby images are preloaded, large photos show their EXIF thumbnail instantly, photos are auto-rotated from their EXIF orientation, files are sorted like in File Explorer.
  • Ready in the background: an installed pViewer keeps one hidden copy of itself started, so the next image opens almost at once (also after the window is closed). It can be turned off in Settings › Startup.
  • Formats: animated GIF, WebP and PNG (P pauses), JPEG, PNG, GIF, BMP, TIFF, ICO, JPEG XR, WebP, TGA, QOI, PBM and, with the Windows extensions, HEIC/HEIF, AVIF, JPEG XL and RAW.
  • Comics and manga: opens zip/cbz, rar/cbr, 7z/cb7 (nested archives too) reading pages in memory, with no temporary folders. Two-page Manga (right to left) and Comic (left to right) modes, F12 to realign page pairs; at the end of an archive the next volume in the folder opens automatically.
  • Views: shrink to fit, fit, fill, fit width/height, actual size; zoom towards the pointer, pan, full screen, slideshow, white background.
  • Editing with undo/redo: crop (Ctrl+drag), rectangle (Alt+drag, Tab fills it to hide data), text written directly on the image (Shift+click), red-eye, rotate/flip, resize, borders, invert, grayscale, sepia, black and white, brightness/contrast, hue/saturation, sharpen, blur with live preview.
  • Background removal (Effects › Remove background): the subject stays, the background becomes transparent. It runs on the PC with the ISNet network; the model (170 MB) is downloaded once, when first asked for, and no picture ever leaves the PC.
  • Safe saving (temporary file, then replace) that keeps the EXIF metadata of JPEG photos.
  • Batch processing of a folder or an archive (resize, rotate, flip, convert, borders, grayscale, invert) into a separate folder, and batch rename.
  • Delete to the Recycle Bin, rename, copy/paste via the clipboard, EXIF data, file properties, "Open with", set as desktop background.
  • Updates: once a day pViewer asks GitHub whether a newer release exists (it sends nothing else) and offers to install it; the installer then reopens pViewer on the same file. The check can be turned off in Settings › Updates, and Help › Check for updates runs it on demand.
  • Settings live in settings.json next to the executable (if that folder is not writable, %AppData%\pViewer is used).

All keyboard shortcuts are listed in the app's help (F1) and can be changed in Settings › Keyboard shortcuts.

Installing

Download an installer from the releases:

  • Full (pViewer-Setup-<version>-Full.exe): includes the .NET runtime, no prerequisites.
  • Light (pViewer-Setup-<version>-Light.exe): much smaller, needs the .NET 10 Desktop Runtime (x64); setup checks for it and offers the download page.

Both install per user by default (no administrator rights needed; installing for all users can be chosen in the first dialog), optionally add pViewer to the "Open with" menu of images and comic archives, and replace each other. Requires 64-bit Windows 10 or 11.

Building

Requires the .NET 10 SDK.

dotnet build
dotnet test

To build the two installers (needs Inno Setup 6.6 or later) into installer\Output\ — the script runs the tests first, then publishes both editions:

powershell -ExecutionPolicy Bypass -File installer\build.ps1

Project layout

Folder Contents
src/pViewer/Core Formats, natural sorting, image sources (folder/archive), manga/comic navigation
src/pViewer/Imaging WIC decoding with Skia and pViewer's own small decoders as fallback, animations, editing operations, saving
src/pViewer/Services Caching and preloading, settings, undo/redo, batch, Windows integration
src/pViewer/Controls ImageViewer: zoom/pan and editing gestures
src/pViewer/ViewModels MainViewModel (MVVM with CommunityToolkit.Mvvm)
src/pViewer/Views Dialogs
tests/pViewer.Tests xUnit tests

Libraries

Library License
SkiaSharp (with Skia) MIT (Skia: BSD 3-Clause)
MetadataExtractor Apache 2.0
XmpCore (used by MetadataExtractor) BSD 3-Clause
SharpCompress MIT
CommunityToolkit.Mvvm MIT
.NET runtime (Full edition only) MIT
ONNX Runtime MIT
ISNet model, as converted by rembg (downloaded on first use) Apache 2.0 (ONNX file: MIT)

Their copyright notices and license texts are in THIRD-PARTY-NOTICES.txt, which is installed next to pViewer and linked from its About window, together with skiasharp-THIRD-PARTY-NOTICES.txt (Skia and the libraries built into it) and onnxruntime-THIRD-PARTY-NOTICES.txt; the Full edition also installs the .NET runtime's own dotnet-LICENSE.txt and dotnet-THIRD-PARTY-NOTICES.txt.

License

pViewer is released under the GNU GPL v3 — see LICENSE.

About

Fast image viewer and small editor for Windows, with comic and manga reading straight from zip/rar/7z archives. .NET 10 + WPF.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages