Welcome-page (German)

Html2Slideshow

Download Installation Short introduction Objective Motivation Alternative

Download

Program-archive
html2slideshow_0.71.zip
SHA1 checksum
beca93611a1f02de49bb40c49f9e5d42579cf04c
My digital signature for the archive
html2slideshow_0.71.zip.asc
Signature made Sun Mar 7 19:58:39 CET using DSA key ID 1CC33275 1CC33275.

License

Htm2Slideshow is free software under the GNU General Public License.

Copyright (C) 2008, 2009, 2010
Michael Uplawski <michael.uplawski@uplawski.de>
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.

The full english text of the license is found in the program-archive or on the GNU web-site: GPL, V3

up

Installation

Ruby

Because Ruby is an interpreter-language, Ruby (version 1.8.6 or higher) must be installed on your system to run Html2Slideshow. For instructions see the Ruby Homepage. As a Linux-user, you should have no problem to install Ruby with the help of the package-management tool, that comes with your distribution.

In addition, to benefit from the graphical user interface, you need the Ruby/GTK2language-bindings.

Version 0.6 is the first one with a new graphical user-interface, that I have programmed with the GTK2 library.

Unpacking

There is no Ruby-gem for Html2Slideshow.

The Zip-archive decompresses into a directory html2slideshow_[version_suffix]. It contains all the necessary files. You can move the whole directory to a suitable location in the file-system.

Linux

On a Linux-system, you may want to do something like this:
mv html2slideshow_0.2.3 /usr/local/share/

But this way, you risk to forget completely where you put the program or even the fact, that it is already installed on your computer, if you do not use it often.

That is the reason, why for this kind of installation, I prefer to engage the Paco Package Organizer:
paco -lD mv html2slideshow_0.2.3 /usr/local/share

Next, you should provide for an easy way to call the Ruby-interpreter with the name of the start-up script html2slideshow.rb. For this purpose, I have prepared an exemplary shell-script html2slideshow.sh in the program-directory, which you should modify to your needs, then move to a directory in the search-path for executable program-files on your system. Usually you have to become root and will move the script to a path like /usr/local/bin or create a symbolic link there. The original script looks like this:

#!/bin/sh
ruby /usr/local/share/html2slideshow_0.6/html2slideshow.rb "$@"

To execute the GUI-version of the program, you must replace the sript-file by html2slideshowGui.rb like this:

#!/bin/sh
ruby /usr/local/share/html2slideshow_0.6/html2slideshowGui.rb

Windows

There is no Windows-installer for Html2Slideshow.

You can put the program-directory anywhere, e.g. move it to c:\Program-Files\html2slideshow
Afterwards, you should move the batch-file html2slideshow.bat into the search-path for executable files. Alternatively you can also create a link to the Ruby-interpreter on your Windows-desktop or in the start-panel:

ruby c:\Programme\html2slideshow_0.2.3\html2slideshowGui.rb

up

Short introduction

There is no long introduction.

The following instructions apply exclusively to the console program. There is a more detailed HOWTO in the subdirectory doc in the program-directory or here: HOWTO.

At the starting point, there are either picture-files of the supported formats gathered in a directory in the file-system or one or more (X)HTML-files, which link to such pictures. My own web-site does currently almost entirely consist of such pages.

It takes time to scroll through all the text to the chagrin of people who would rather just look at my 20 photos. But now, I can execute html2slideshow on all my pages which deal the Provence and swiftly fabricate a few slide shows, without any text (I am ignoring the file-extensions .sh or .bat of the start scripts):

html2slideshow -s [local web-projekt]/Provence -t slideshow

The meaning of the parameters:

-s or --source
Source directory
-t or --target
Sub-directory, which will receive the slide shows. In the example above, this would be something like ../Provence/slideshow. The program creates the target-directory, if it does not exist.
The parameter -t can be omitted, to put the slide show files in the same directory, where the original sources are read.

The other possible parameters are:

-l or --local
will search for image files directly in the source-directory, not read them from the links in html-files.
-r or --recursive
includes sub-directorys in the search for image-files (without effect, when HTML-files are scanned for image-references)
-h or --help
explains the command-line usage of the program with its parameters.
-d or --debug, followed by true or false
will provide for logdata to be written to the screen. You can direct this information into a file:
html2slideshow -s ... -t ... -d true > /tmp/log.txt
--version
displays a version-number
up

Objective

My Ruby-program html2slideshow either finds picture-files in a directory or reads the contents of (X)HTML-file in that directory, then extracts from there all references to linked images. From these references of each such page will result a new XHTML-page, that can show a slide show of the images found. The image-files will not be copied or moved on the file-system but be loaded from their current location. Also, no picture will be resized to fit into the browser-window. You must take care to scale your images appropriately, before creating the slide show and consider, that some control-elements will take-up space on the left of the surface.

For the time I disallow access to the generated files to the Microsoft Internet-Explorer, because I do not want to be held responsible for the rendering-errors which happen in this software.

Status

Starting with version 0.4, a history of changes and, -maybe-, announcements for future releases, should be kept up to date on this page: History of changes.

This software works.
It does not all the time and in each detail work the way I would like it to. But I am quite content to have created a program in my currently favorite programming-language, which even in its present state has already been useful to me. And in addition, I am convinced, that despite its clumsy appearance, here and there, my Ruby-code is not downright bad but, in the contrary, quite stable. Of course, much improvement is due and some of my choices will be re-considered.

Supported graphics-formats

The generated slide shows will contain JPEGs, GIFs or PNGs, the formats, usually found on the web. But I do not scrutinize any file for header-data to detect its compatibility with a web-browser. Any file which has one of these file-extensions will thus be included: jpg, jpeg, jp2, png, gif.

The GUI-version of html2slideshow supports JNG-files, too (even if your browser will not).

Adjustments after generation

Each new slide show bases on one and the same template and references one JavaScript- and one CSS-file, which are placed alongside the slide shows in the same directory. JavaScript and CSS can be modified to adjust the appearance and operation of the slide shows.

Important!!

During the generation-process, the location to the displayed images are hard-coded into the resulting XHTML-code. Should they be noted as relative paths in the original page-code, they are only extended to meet the needs of the slide show. Moving the slide show-files to another location will render these file-paths invalid. The slide shows will then no longer work.

up

Motivation

The animated picture-galleries, which are found on the web for a long time, had inspired me to connect something similar with my own web-site. The first idea had been to resort to an existing service, to present my photos seperately from the long text, that I use to wrap them in.

But none of the solutions I have found would please me. It is far too complicated to direct people to a foreign web-site, where they even had to enter a password or need to register an account, before they would be able to see the frugal results of my struggle against the camera.

Philosophy

My web-pages are still very static; that means, I do not incorporate many dynamic elements, but just present photos and text. On the one hand I want to limit the use of JavaScript to a minimum. On the other hand, the slide shows rely on JavaScript-code to exchange photos against each other.
The compromise is, that I transfer the photos of each inside page into an individual slide show and avoid the complication of switching contents and labels in only one routine, which could then be used over and over again, depending on which page the visitor has just come from.

In the worst case, the number of pages doubles with my chosen procedure. Because the generator relieves me of all the work, this fact leaves me cold. Instead, the JavaScript-code is reduced to the absolutely necessary and fool-proof (which appears to still exclude the MS-Internet-Explorer).

The mass of slide show-files would be a problem, if I wished to manually modify some or all of them later. But any custom-made generator is already defunct, if it turns out, that its output is not directly useable without further modifications. In consequence, I would rather modify the program Html2Slideshow, then erase all my slide shows and create them once more anew.

That is the idea. An interpreter-language like Ruby is also ideally suited for such a task: The source-code is the program. And there is no external XML-code or similar, which would first need to be adjusted. Rather the generator is modified as needed and there you are!

up

Alternative

MagicLantern

This program is not meant to assist in the creation or presentation of Internet slide shows, but rather to configure such a photo show and make it run in an instance of MagicLantern, even on a different computer than the one, used to create the show.

I do not know if I pass for a fan of Paul Lutus. Actually, since after having listened to Elkie Brooks' album Minutes for some time and not feeling excitement, I thought I had stopped being anybody's fan.
But this man's productivity and the almost oppressive quality of his technical and editorial output has earned my respect a long time ago, even if my opinions on many subjects are different.

Let's see the software: MagicLantern is primarily a typical slide show program. You can arrange photo files from your hard disk into slide shows, and either control the shows manually or automatically. The software offers a few options which I will not enlarge on. A complete online-manual is integrated.

MagicLantern is a Java-program. This means, for example, that you can run it on any operating system, on which a pertinent Java-environment can be installed. Paul Lutus does not give an exact hint on the preferred Java-version, but any Java5- or 6-release should do.
Also, Java requires to deal with the software differently than what may be a user's usual way with his familiar programs. An operation which consumes much memory, like the generation of thumbnails, may stress the ressources of a computer to a degree which affects the ease of use. Other programs do the same, but the Java environment is usually not automatically prepared for such a situation. The author recommends to set a start-parameter for the Java runtime to -Xmx1000m and provide sufficient memory this way.

All in all, MagicLantern is the most developped slide show program with Graphical User Interface that I have seen so far. The others were less intuitive or downright clumsy, my own trials included. There are such tools for the console, which I like, but these probably belong to a different category. Ω

up

Welcome-page (German)
Previous versions of Html2Slideshow in the Shoebox
2007, 2008, 2009, 2010, Michael Uplawski e-mail address