Basic raw / JPEG slideshow
This is a simple personal project used to:
.pp3processing profile files to raw (
.RW2) and JPEG pictures.
Export these pictures to lightweight JPEG files.
Use these new JPEG files to create a static HTML slideshow ready for web upload.
Add HTML descriptions to each picture for the slideshow.
Scripts and tools
This converts your high-quality pictures into lightweight versions, applying RawTherapee processing profiles along the way.
This generates the HTML slideshow and its assets (the pictures), using what was generated using
If you installed
make, this allows you to run a few rules:
make→ combination of
make clean→ Remove
Stuff you (kinda) have to manage yourself
This is where your original-quality raw and JPEG files should be stored, along with the specific
.pp3files that should be applied to them.
For each picture, if a file named from that picture’s name with an appended
.htmlis found in there, this file will be used as the pictures description. For example, if you have a
pics_hq/, its description will be in
This is the skeleton for the HTML file containing the final slideshow. I write the introductory slide in there, and the CSS is bundled in it too. Edit it to adjust the page’s title and the introduction, I guess. It contains placeholders for the main slides and the navigation dots; do not touch that.
An additional processing profile that gets applied to every picture, but after the picture-specific profiles. I use it to choose the export dimensions, apply post-resizing sharpening, strip GPS metadata, and add an artist name to pictures.
Stuff that gets automatically generated
This is where the new versions of your pictures end up after export, etc.
This contains the static HTML slideshow and its assets after generation. I generally copy the whole content of this directory to my website once everything looks fine, or open
build/index.htmllocally with a web browser to check the result.
Usage, step by step
Choose a bunch of pictures (JPEG or RW2 files).
Use RawTherapee to post-process them as you like. Export the resulting processing profiles (
.pp3files) with “correct” names (see Naming your processing profiles).
Store the initial pictures from Step 1 into
pics_hq/along with the
.pp3files from Step 2.
index.htmlfile found at the root of the project:
Change the page’s title (within
Edit the content of the introductory slide:
<div class="mySlides fade only-text"> <div class="text"> <p>Plop plup.</p> <p>Foo bar.</p> </div> </div>
I guess you’ll also want to change this:
<p class="link-to-site"><a href="http://www.alicem.net/">← alicem.net</a></p>
Edit the common export processing profile, found at the root as
Change the Artist’s name.
Optionally, make sure the resizing bounding box suits your fancy, and edit anything you like. This is none of my concern, actually.
Check the result by opening
build/index.htmlwith the web browser of your liking. If there’s an issue with the pictures, fix whatever needs to be fixed and go back to Step 6. To fix descriptions and stuff, however, you only need to rerun
exiv2 is installed, lots of metadata can be extracted from the original files (whereas RawTherapee 5.4 seems to be having issues with my GPS data).
To prevent location information from appearing in the slideshow, edit
generate.sh to replace…
declare -r SHOULD_USE_GPS_INFO=1
declare -r SHOULD_USE_GPS_INFO=''
Naming your processing profiles
When I want to check the result of my postprocessing, I export my files to JPEG files with names like
foo_edit.JPG in order to make sure the postprocessed files are easily discernible from the original ones.
You’ll notice that the original file extension actually doesn’t matter at all. I strip it and append
_edit.JPG to the name.
_edit JPEG files are not actually used in the final slideshow. I just want to make sure the result looks good.
Now back to the point: since the
.pp3 processing profiles are saved alongside the exported files and named after them, I end up with files like
foo_edit.JPG.out.pp3. This is the convention used in this project to find the processing profile corresponding to each file. So for example, for a picture
pics_hq/foo.RW2, the processing profile that will be applied will be
This behaviour can be changed without much hassle, especially if you have at least a little knowledge in Bash. The