Welcome to the wonderfull and colorfull world of webmontage.
Webmontage is a program very much inspired by WebCollage of Jamie Zawinski
http://www.jwz.org/webcollage/ who I greatly admire for his achievement.
Webmontage is a complete new program based on the same idea but with
IMHO more potential to give the user the fun (s)he is looking for and better
multiplatform support through the use of php instead of perl.
So what does it do?
It rips images of the web to do things with them. Currently it can create an
ever changing image with pictures on it linked and the searchterm annotated
or change your desktops background. Just like Jamie's webmontage it is
probably illegal to use in some countries as it cannot distinguish between
copyrighted or free to use imagery. So be warned you have to contemplate
very carrefully how to use it's output. f.i. you might consider:
- Producing wallpaper archieves
- Producing clipart archives
- Research and detect certain imagery
Though the latter might be in term with the law the primery certainly ar NOT.
You can use webmontage to find wallpapers on the internet, have them
optionally framed and displayed on your desktop. You can keep the
original picture or throw them out after creating your desktop.
Actually this is only a spinoff of:
Random image montage generation.
Which is IMHO much more intresting. webmontage will find images
of your choice defined by a searchitem list and place them randomy on
a canvas defined by you. It will at the same time generate a imagemap
that will make it possible to click on the canvas to trace where the origi-
nal picture came from. It also annotates the seachterm that was used.
Wheres the fun?
The program comes with examples on how to use it but I would like
to point out that one of the nice things are the searchterm lists.
If you look in the archive you will find a list that is build to create a
random canvas with the tv series Lost as topic. (No I do not watch it,
but luckely for you my family does giving me time to write this app).
You might create such lists and exchange them with your friend.
How good are your search terms can you avoid off-topic images???
What do you need?
webmontage should run on pretty much any system that has
with it's basic modules like
curl - to retrieve urls and images
gd - to handle the images
Then ofcouse it would be nice if you know how to use it, if not,
hopefully the two examples randpic.php and rndwallpaper.php
will be enough to get you started the first should run out of
the box, the second one might need edditing the commandline.
How do you work it?
Well if the previous didn't put you of let me surprise you with a
very flexible and simple engine to have hours of geek fun with.
The main class.
Webmontage exists of a single class
with the following callable
cycle() - the montage engine.
wallpaper() - yes the wallpaper engine.
these take some variable to play with their defaults are shown:
name of the html file that can be loaded in your browser to
see and examine the cycle canvas
optional directory where to store pictures. It's up to you to
make sure it exists
$object->picturedir = "";
search term list to use, you may place remarks at the start of the file
by preceding the lines with // like for php remarks. These lines will be
dropped untill the first line without //
$object->dictionary = "/usr/share/dict/words";
picture size google uses currently choose 0-6
$object->gsize = 2;
Google pages to search from, the more and better your terms the less pages
you will need to get a nice result
$object->gpages = 10;
Google safety signal to prevent 'nasty' pics.
$object->gsafe = 'off';
Canvas name, very important for both methods
$object->cvsname = "canvas.jpg";
Temporary store for the image map, might aswell leave that default unless
your planning to use it somehow
$object->cvsmap = "canvasmap.html";
An optinally border can be given. It should be a transparent gif that will be
resised automagically and projected on the canvas if this is set.
How many images should we track on map?
$object->cvsmapmax = 50;
$object->cvswidth = 800;
$object->cvsheight = 600;
Should we keep the original picture?
$object->keeppic = false;
The refresh rate for the html file
$object->refresh = 5;
How often should we cycle?
$object->cyclecount = 1;
How long to pause for the next cycle, this starts after the cycle has
finished so the processing time is not counted.
$object->cyclewait = 5;
Should we start with a clean canvas and map?
$object->restart = false;
This is a tricky one, it's used/needed for the wallpaper to place it, the routine will
look for %image% in the command line and replace that with the canvas
name before executing.
Would very much be appreciated. Send me your favorite searchlist aswell, I
intend to add it to a user searchlist directory. Send all you got including
bug reports, feature request but excluding spam or request to exclude
your image (this program has no images) to:
Raphael <email@example.com> So ingles, faz a favor.
Copyright 2007 "R.L. Renkema"
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, see <http://www.gnu.org/licenses/>.