Home

Awesome

:exclamation: Updates may be slow due to war in Ukraine :sunflower: :sunflower: :sunflower:

qimgv | Current version: 1.0.2

Image viewer. Fast, easy to use. Optional video support.

Screenshots

Main window & panelFolder viewSettings window
img1img2img3

Key features:

Default control scheme:

ActionShortcut
Next imageRight arrow / MouseWheel
Previous imageLeft arrow / MouseWheel
Goto first imageHome
Goto last imageEnd
Zoom inCtrl+MouseWheel / Crtl+Up
Zoom outCtrl+MouseWheel / Crtl+Down
Zoom (alt. method)Hold right mouse button & move up / down
Fit mode: window1
Fit mode: width2
Fit mode: 1:1 (no scaling)3
Switch fit modesSpace
Toggle fullscreen modeDoubleClick / F / F11
Exit fullscreen modeEsc
Show EXIF panelI
Crop imageX
Resize imageR
Rotate leftCtrl+L
Rotate RightCtrl+R
Open containing directoryCtrl+D
Slideshow mode~
Shuffle modeCtrl+~
Quick copyC
Quick moveM
Move to trashDelete
Delete fileShift+Delete
SaveCtrl+S
Save AsCtrl+Shift+S
Folder viewEnter / Backspace
OpenCtrl+O
Print / Export PDFCtrl+P
SettingsP
Exit applicationEsc / Ctrl+Q / Alt+X / MiddleClick

... and more.

Note: you can configure every shortcut by going to Settings > Controls

User interface

The idea is to have a uncluttered, simple and easy to use UI. You can see UI elements only when you need them.

There is a pull-down panel with thumbnails, as well as folder view. You can also bring up a context menu via right click.

Using quick copy / quick move panels

Bring up the panel with C or M shortcut. You will see 9 destination directories, click on the folder icon to change them.

With panel visible, use 1 - 9 keys to copy/move current image to corresponding directory.

When you are done press C or M again to hide the panel.

Running scripts

You can run custom scripts on a current image.

Open Settings > Scripts. Press Add. Here you can choose between a shell command and a shell script.

Example of a command:

convert %file% %file%_.pdf

Example of a shell script file ($1 will be image path):

#!/bin/bash
gimp "$1"

Note: The script file must be an executable. Also, "shebang" (#!/bin/bash) needs to be present.

When you've created your script go to Settings > Controls > Add, then select it and assign a shortcut like for any regular action.

HiDPI (Linux / MacOS only)

If qimgv appears too small / too big on your display, you can override the scale factor. Example:

QT_SCALE_FACTOR="1.5" qimgv /path/to/image.png

You can put it in qimgv.desktop file to make it permanent. Using values less than 1.0 is not supported.

qimgv should also obey the global scale factor set in KDE's systemsettings.

High quality scaling

qimgv supports nicer scaling filters when compiled with opencv support (ON by default, but might vary depending on your linux distribution). Filter options are available in Settings > Scaling. Bicubic or bilinear+sharpen is recommended.

Additional image formats

qimgv can open some extra formats via third-party image plugins. All of them are included with windows package.

FormatPlugin
JPEG-XLgithub.com/novomesk/qt-jpegxl-image-plugin
AVIFgithub.com/novomesk/qt-avif-image-plugin
APNGgithub.com/Skycoder42/QtApng
HEIF / HEICgithub.com/jakar/qt-heif-image-plugin
RAWhttps://gitlab.com/mardy/qtraw

Installation

Windows builds

Grab the latest release here

Windows builds are portable (everything is contained within install folder). Installer additionally sets up file associations.

NOTE: -video variants include mpv for video support

GNU+Linux

Arch Linux / Manjaro / etc.

AUR package:

qimgv-git

Ubuntu / Linux Mint / Pop!_OS / etc.

sudo apt install qimgv

Fedora

sudo dnf install qimgv

OpenSUSE

zypper install qimgv

Gentoo

emerge qimgv

Void linux

xbps-install -S qimgv

Alpine Linux

apk add qimgv

BSD

FreeBSD

pkg install qimgv

This list may be incomplete.

Compiling from source

See Compiling qimgv from source on the wiki

Donate

If you wish to give me a few bucks, please consider donating to the Ukrainian Army instead:

https://savelife.in.ua/en/donate-en/#donate-army-card-once

https://u24.gov.ua/

This directly increases the chances of me being able to work on this in future