Skip to content

Latest commit

 

History

History
238 lines (134 loc) · 15.6 KB

README.md

File metadata and controls

238 lines (134 loc) · 15.6 KB

Quick Picto Viewer

To keep the development going, please donate using PayPal.

QPV is an image viewer, editor and a tool to organize image collections based on the GDI+ and FreeImage libraries. It can open about 85 image file formats: .hdr, .raw, .tif, .emf, .wmf, .png, .bmp, .gif, .jpeg and many others.

Download latest version (compiled for Windows, x64 binary)

QPV is able to create image slideshows and cache very large dynamic lists of files. Unlike other applications of this kind, it can load, on my system, a list of 900100 files in under 10 seconds, while XnView Classic or Irfan View need more than 15 minutes. The index of files can be saved as plain-text or as an SQLite database.

With Quick Picto Viewer you can generate file statistics over huge image libraries which can help identify very small images, very low key, or washed out images. You can also identify image duplicates and auto-select files by given criteria.

QPV also has specific tools to index image contents and identify image duplicates, based on similarity. Users can choose from four algorithms to identify the duplicates.

Quick Picto Viewer is also able to play sound files associated with images, automatically or on demand, and even generate slideshows that are in synch with the audio files duration. Supported audio formats: WAV, MP3 and WMA. It can also display image captions / notes for image.

QPV can be used to edit images and/or paint new images. Various tools to this end are available, including blending modes and alpha masking abilities. Please see the features list to learn more in details what QPV can do.

In action

Video showing file management capabilities.

Image painting time-lapse. The video shows the image editing capabilities.

YouTube playlist with more videos.

Quick Picture Viewer - thumbnails list screenshot

Quick Picture Viewer - image view screenshot

QPV runs on Windows 7, Windows 10 and Windows 11, and with some efforts, even on Windows XP - please read the notes at the end.

Source code available on Github.

If you want to run the uncompiled edition, please make sure you download the required DLL files from the Github repository, or the ones included in the ZIP file.

Features

IMAGE EDITING:

  • Options to control viewport brightness, contrast, saturation and RGB color channels balance/intensity.
  • Images can be rotated or mirrored horizontally and vertically in the viewport.
  • Paint brushes: soft edges, cloner, eraser, pinch, bulge, smudge and more:
    • ability to randomize various brush properties when painting
    • textured brushes
    • paint with symmetry
  • Image editing tools:
    • draw arcs, lines and filled shapes
    • parametric line generators [grids, spirals, rays and more]
    • advanced flood fill [color bucket]
    • insert text with advanced customization options
    • paste in place
    • transform selected area
    • various blur filters: gaussian, box blur, radial blur and others
    • rotate, crop, flip, pixelize, add noise, and more.
  • Draw free-form Bézier curved paths or polygonal lines; options to fill with color, textures or gradients.
  • Free-form curved or polygonal selections, elliptical and rectangular selections, rotated at any angle.
  • Vector shapes can be defined with symmetry on X or Y axis.
  • Ability to save/load user created vector paths.
  • 18 blending modes and alpha masking support implemented for various image editing tools.
  • Alpha mask can be user painted or generated: a gradient [linear, box, radial] or a previously drawn vector path.
  • Advanced yet easy to use auto-crop for images.
  • Real-time histogram for any image color channel of the image displayed.
  • Easy to configure viewport grid.
  • Paste texts from clipboard and render them as images. Text and background colors, font style, alignment and size can be personalized.
  • Copy / paste image to/ from clipboard with the alpha channel preserved.
  • Print image. Users can add text, adjust size and position on the page before printing.
  • Batch printing of multiple images.
  • Acquire images from scanners.
  • Resize and crop images preserving the alpha-channel on save.
  • Multiple file formats supported for saving an image.

FILES MANAGEMENT

  • Omnibox and folders tree view - two specialized panels meant to help users navigate through folders, with support for drag and drop amongst them.
  • Quick file actions. Easily move or copy files to user defined folder paths using the number keys: 1 to 6.
  • Ability to automatically group files into sub-folders based on file types or modification date, by months or years.
  • Specialized tool to copy or move files by maintaining their folder(s) structure.
  • Create PDFs or multi-paged TIFFs from selected images. Up to 2048 images allowed.
  • Create customizable contact sheets (thumbnail sheets) of selected images.
  • Extract frames from GIF and WebP animated images, or pages from TIFFs.
  • Multiple list view modes. Display the indexed files as an easy to scroll list with or without image file details, or as thumbnails list.
  • The thumbnails list comes with three predefined aspect ratios: square, wide or tall. Easy to adjust their size: +/- keys.
  • Adaptive multi-threaded thumbnails caching to sizes ranging from 600 pixels to 125 pixels. On very fast PCs, no caching occurs.
  • Files can automatically be selected by strings, or the ones already seen, favourited, and other options.
  • Files list map. A quick view, at a glance, of the files list, highlighting selected files.
  • Sort images by histogram data points, such as the average or median point, resolution, aspect ratio.
    • by their image properties: resolution, aspect ratio, width, height and so on
    • by file properties: size, name, date, et cetera
  • Option to keep a record of seen images and have these skipped during slideshows or erased from the index list. QPV can also generate statistics and charts based on the image viewing habits.
  • Image and folders favourites lists; easy to manage. The list can be very big, up to 950100 images.
  • Multi-rename. Rename multiple files with easy to use patterns. Users can add a prefix and/or suffix to file names, or to count them, or search and replace strings in file names, and more.
  • File statistics panel with categories for: file sizes, file types, modified dates, image size, image histogram data points and much more.
  • Identify image duplicates by user chosen image properties, histogram data points or image content similarity. Multiple algorithms are available to choose from.
  • Index filters: based on text strings or file and image properties.
  • Dedicated panel to automatically identify keywords in file names and folder paths, and option to filter the list based on any identified keyword.
  • Copy files from Explorer and paste in Quick Picto Viewer, or from QPV to Explorer.
  • Copy file names or folder paths as text to clipboard.
  • Quick Picto Viewer has its own slideshow formats to store the list of folders and cache files lists: plain-text and SQLite database.
  • Ability to selectively refresh the cached files list from selected folders.
  • Search and replace in the index, enabling users to correct potentially broken files lists.
  • Very fast loading of cached or not cached lists of files. Tested with 900100 images and it loads in 10 seconds on my system.
  • Support for drag and drop of folders or files on the QPV window.
  • Perform JPEG lossless operations in batch: flip or crop images.
  • Perform actions on image files: resize, rotate [at any degree], crop, change/adjust colors, rename, convert to different file formats, rename, delete, copy or move.
  • Batch processing. You can apply any of the previously mentioned action or operation on multiple files at once.
  • Multiple levels of undo for file actions: rename, move, copy or delete.

GENERAL / USER INTERFACE

  • Support for 85 image file formats, including various Camera RAW formats.
  • Touch screen friendly user interface: swipe gestures and hot-areas to navigate or zoom into images.
  • Adjustable user interface font sizes and colors.
  • Dark mode for the user interface.
  • Customizable keyboard shortcuts and toolbar icons
  • Ambiental textured window background. Automatically generated background based on the currently displayed image.
  • Various modes to adapt images to window.
  • Vertical or horizontal toolbar. Toolbar size adjustable.
  • Slideshows modes: random order, backwards or forwards.
  • Slideshow random modes: with a bias for the first or second half of the files list, or no explicit bias.
  • Option to set background music for the entire slideshow.
  • Audio annotations or text captions for any image file.
  • Quick search box allows users to search through menus and other available options in QPV.
  • Support for animated .WEBP and .GIFs in slideshows - HD GIFs are support as well.
  • Support for multi-paged .WEBP, .TIFFs and .GIF frames. Ability to go through each image frame/page.
  • Private mode. In this mode, images are blurred, and file names and paths are hidden.
  • Multi-monitor support.
  • User interface compatible with Windows Narrator and other screen readers.
  • Fancy welcome screen random-generated images :-).

Why another image viewer/editor

This project is developed out of passion since May 2019 by me, Marius Șucan. It first began as a challenge to make a simple image viewer that can generate slideshows very quickly on over 100 thousand images. What I was using back in those days (XnView and Irfan View) could not do this. After having succeeded this, the project expanded into a complete image viewer and organizer, and gradually, into an image editor as well. The target audience is any occasional user, or the people with huge image libraries, or those who might like advanced image editing features, available through isolated tools, in their image viewer.

As a physically disabled developer, I paid particular attention through-out the development to the needs of people with poor eye-sight and other disabilities. To this end, users with screen readers might notice that the user interface is populated with readable texts. Furthermore, users can activate large UI fonts, adjust the zoom level for texts (Ctrl + -/=) in the viewport, activate dark mode, and right-click on menu items or panel controls to display larger the control's associated texts. The panels' controls can be navigated with the Tab and arrow keys, even the custom slider controls. The users can define the value of a slider via Ctrl+L-Click, where a dialog box prompts the user for the new value. To navigate with the keyboard the main toolbar, press Shift+Tab when the viewport is focused and it will gain keyboard focus.

Key concepts in QPV to know about

THE FILES LIST. It is an index, a list of records pointing to files on the disk.

When users open a folder, a files list index is automatically generated where one can add more files, from other folders, to the index, or remove index entries. Dedicated options and tools are available to manage the index itself.

Given that it is just an index, when you add files, or paste files from the clipboard, the images are inserted only in the files list index, and not into the initially opened folder.

The files list index can be saved and reopened in later sessions. QPV allows users to save the files list in two formats: plain-text and as a SQLite database. For more details, see the Help provided in the Save panel (Ctrl+Shift+S).

THE VIEWPORT. In QPV, unlike in other image viewers, there is a clear distinction between how images are displayed on the screen and the pixel/image data. QPV allows users to alter the viewing conditions without affecting the images themselves. The color adjustments, image rotation and flip options (available in the «Viewport adjustments» panel), are applied in real-time for each image when loaded, before displaying it on screen. There are distinct options and tools in QPV to edit and adjust images or to apply the viewport conditions. QPV will seamlessly apply the viewport viewing conditions onto the image itself when users choose to save the image or when image editing tools are used.

USER/APP CONTEXTS. QPV was developed having in mind keyboard users by providing many keyboard shortcuts or menu accelerators keys. The purpose is to ease the access to different tools.

The user is provided with different keyboard shortcuts, menus, context menus and toolbar icons based on the application context. The main contexts are: image view, files list/thumbs modes, image live editing, and vector shape drawing mode. For each of these contexts, the same keys can do different things, based on the context, or new shortcuts are available, while others are disabled. The same applies to toolbar icons and menus. The toolbar icon tooltips and menu items available always reflect these changes. This contextual mindset is expanded to, and applies to, the ability to customize keyboard shortcuts and the toolbar.

In any context, users can invoke the Quick Menus Search panel with the «;» key or by clicking on the «S» button below the menu items. In this panel, users can search for the currently available options. Most of the menu items are associated with keywords, and synonyms, to facilitate the ease of reach to the available tools.

Other details

Developed by Marius Șucan with special attention for people with disabilities.

I coded the application as an AHK script for AutoHotkey_H v1.1.33. To execute or compile the source code one needs AHK_H.

Quick Picto Viewer can run on Windows 7 and even on XP, but various features might not work. To this end, you may have to copy all the DLL files found in the .\optional-DLL-files-x64\ folder to the same folder where the QPV binary is. If you are running it uncompiled, you must place them in the folder where the AutoHotkey binary resides. The required DLLs for x64 are bundled since version 5.7.5 in the ZIP package and can also be found in the Github repository.