Photo Selector


I wanted to create a slideshow of my favorite photos, which I had to select from over twenty thousand photos stored in many sub-folders of the Pictures folder on my laptop. Browsing these folders with a standard photo viewer and collecting the best photos by manually copying them to a new folder soon proved to be very time consuming; and because it is likely that I will want to redo this exercise in the future, I decided to write an app to make it more efficient.

Photo Selector lets you step through all JPEG photos (*.jpg) in a specified source folder. Sub-folders re optionally included, and the photos can be filtered by orientation (landscape and/or portrait) and size (minimum largest and/or smallest dimension). The selected options are frozen once a source folder is selected; to edit them, hit the source folder selection button and then Cancel the resulting dialog.

Depending on the number of photos in the source folder, reading and filtering the folder may take a while; the number of photos in the lower right will say ‘reading...’ while this is in progress.

A photo can be rotated for viewing purposes via the ⟲ and ⟳ buttons; this does not affect the corresponding image file. Photos can be deleted; deleting a source photo sends the image file to the recycle bin.

Users can navigate to the first, previous, next or last photo, or to specific photo in the range 1...number of photos.

Copying a source photo does not copy the image file but rather adds its path to a file called ‘selections.txt’ in the Destination folder. The selection can be reviewed by entering Review mode. In this mode, photos can be viewed, rotated and deleted, but not copied. Deletion simply means that the path is removed from the selections file.

Review mode is indicated by:

  • the Copy button being renamed to Annotate button, what can be used to assign tags to each selected photo;
  • the Review button being renamed to Select button, which can return the app to the selection mode;
  • crop functionality appearing below the Review/Select button; this can be used to crop & scale the selected photo to the aspect ratio & resolution defined in the upper right. To change the crop area, click & drag the image up or down; Save stores the crop area in the selections file;
  • slide show functionality appearing in the lower left; this allows the app to play the selected photos in slide show mode. If source paths are structured as ‘<source folder>\xyz\text\...’ and subtitling is enabled, then ‘text’ will be the slide subtitle. The ‘y’ and ‘c’ buttons allow limiting the slide show to selected years and/or tags, respectively. Year selection is only possible if the ‘xyz’-string mentioned before starts with a 4-digit year;
  • export functionality appearing in the lower right; this can be used to export the selected photos to the Destination folder as IPEG files and/or a PowerPoint presentation. JPEG files can be exported in either cropped or original fashion. Checking ‘Include player’ adds a ‘Player’ folder to the destination folder with a simple utility to play exported ]PEGs as a slide show. Checking ‘Cropped only’ excludes non-cropped files from export and from slide shows.

Screenshot