7010
Comment:
|
8097
remove wikispam
|
Deletions are marked like this. | Additions are marked like this. |
Line 9: | Line 9: |
[[attachment:wydiwys]] perl code | |
Line 11: | Line 10: |
[[attachment:template.html]] an html template file, contains the javascript buttons | [[attachment:wydiwys]] Perl code. For complete documentation of usage and design, do a "perldoc wydiwys" |
Line 13: | Line 12: |
[[attachment:style.css]] a style sheet to go with the template, instantiated as an image | [[attachment:template.html]] An html template file, calls jquery.js and wydiwys.js |
Line 15: | Line 14: |
[[attachment:design]] example control file, piped as standard input into wydiwys | [[attachment:style.css]] A style sheet to go with the template |
Line 17: | Line 16: |
[[attachment:wydiwys.js]] navigation functions, someday image sizing | [[attachment:design]] An example design file, piped as standard input into wydiwys |
Line 19: | Line 18: |
You will also need [[http://jquery.com/ | jQuery ]]. | [[attachment:wydiwys.js]] Navigation functions and key interpretation, image sizing, preload. Called from the template. |
Line 21: | Line 20: |
[[http://www.server-sky.com/slides/wydiwys_demo]] is a very short presentation (about wydiwys) made with wydiwys. | You will also need [[http://jquery.com/ | jQuery ]] placed in your image directory. [[http://www.server-sky.com/slides/wydiwys_demo/ ]] is a short presentation (about wydiwys) made with wydiwys. [[http://www.server-sky.com/slides/wydiwys_demo.tar | tar file ]] of demo presentation - the design directory contains the files needed to reconstruct wydiwys. [[http://www.server-sky.com/slides/wydiwys_slide_images.tar | tar file ]] of original images (in "slides" directory), and the design and template pages. [[http://www.server-sky.com/slides/stest1024/ ]] wydiwys test images, sizes from 512x284 to 2048x1536 . [[http://www.server-sky.com/slides/stest1024.zip | zip file ]] ... [[attachment:stest1.c | source file ]] |
Line 28: | Line 36: |
|| PAGE UP, UPARROW, BACKSPACE || Previous Slide || || PAGE DOWN, DOWNARROW, SPACE || Next Slide || || HOME || First Slide || || END || End Slide || || ENTER || Navigate to/from menu || |
|| '''keyboard''' || '''wireless presenter''' || '''action''' || || PAGE UP, UPARROW, BACKSPACE || back || Previous Slide || || PAGE DOWN, DOWNARROW, SPACE || forward || Next Slide || || HOME || --- || First Slide || || END || --- || End Slide || || ENTER || ''other control'' || Navigate to/from menu || |
Line 46: | Line 55: |
=== recent improvements === * wydiwys now does autoscaling of images to fit the browser window. Unless you need to scale it down (say, to make the SWF animations render quickly enough on old hardware) then the default template.html should work for most presentations. Be sure to set margins and padding to zero in the stylesheet or the template. * wydiwys preloads images. It should change slides more quickly, especially from a remote server. * both new features need more testing. |
|
Line 50: | Line 67: |
* this site ( server-sky.com ) needs a git repository, so you don't need to send me the results. | * this site ( server-sky.com ) needs a git repository, so you don't need to send me your patches. |
Line 53: | Line 70: |
* The template file contains either fixed display sizes or "100%". Sucky. '''wydiwys.js''' should be able to measure the aspect ratio of the display window, and the image or swf, and render the image at the "best" size to preserve designed aspect ratio. |
|
Line 67: | Line 82: |
macro or add-on for Firefox, to render a sequence of these slides to fixed names and locations, suitable for processing by WYDIWYS, would be very handy. | macro or add-on for Firefox, to render a sequence of these slides to fixed names and locations, suitable for processing by WYDIWYS, would be nice. |
WYDIWYS
webslide presentation compiler
wydiwys FAQ - It doesn't work! How can I help? How do I ...?
downloads
wydiwys Perl code. For complete documentation of usage and design, do a "perldoc wydiwys"
template.html An html template file, calls jquery.js and wydiwys.js
style.css A style sheet to go with the template
design An example design file, piped as standard input into wydiwys
wydiwys.js Navigation functions and key interpretation, image sizing, preload. Called from the template.
You will also need jQuery placed in your image directory.
http://www.server-sky.com/slides/wydiwys_demo/ is a short presentation (about wydiwys) made with wydiwys. tar file of demo presentation - the design directory contains the files needed to reconstruct wydiwys. tar file of original images (in "slides" directory), and the design and template pages.
http://www.server-sky.com/slides/stest1024/ wydiwys test images, sizes from 512x284 to 2048x1536 .
zip file ... source file
usage - Navigating a WYDIWYS presentation
With Firefox under Linux, there are 5 buttons:
keyboard |
wireless presenter |
action |
PAGE UP, UPARROW, BACKSPACE |
back |
Previous Slide |
PAGE DOWN, DOWNARROW, SPACE |
forward |
Next Slide |
HOME |
--- |
First Slide |
END |
--- |
End Slide |
ENTER |
other control |
Navigate to/from menu |
The first slide of the presentation is aliased to 00000.html, aaaaa.html, index.html, and zzzzz.html .
WYDIWYS output presentations are intended for use with any browser with javascript and flash animation capabilities. It has been verified working so far with:
Linux |
Firefox 3.5 |
Firefox 2.9 |
|||
Win7 |
Firefox 3.5 |
IE8 |
Chrome |
||
Mac OSX |
Firefox 3.5 |
Firefox 3 |
Safari |
Chromium |
Omniweb |
If it works with another browser, please add to the list above.
For most browsers, F11 toggles between regular and fullscreen display. In the menus, you can navigate to other menu items by clicking on them as hyperlinks.
recent improvements
* wydiwys now does autoscaling of images to fit the browser window. Unless you need to scale it down (say, to make the SWF animations render quickly enough on old hardware) then the default template.html should work for most presentations. Be sure to set margins and padding to zero in the stylesheet or the template.
* wydiwys preloads images. It should change slides more quickly, especially from a remote server.
* both new features need more testing.
todo
Feel free to update wydiwys (the perl code) or wydiwys.js ( the javascript ), and send me the results.
- this site ( server-sky.com ) needs a git repository, so you don't need to send me your patches.
- wydiwys (perl) loads the template once, before the slides are prepared. It should attach a copy of the template to each slide, allowing the template to be changed during the presentation. Since the template refers to the style sheet and calls the javascript, this allows for multiple style sheets, sizing options, etc.
description ... sorta
WYDIWYS ( What You Draw Is What You See) is a cheap hack for making image-based slide presentations that can be shown with any web browser on any platform. WYDIWYS does not create content, it just arranges a series of html slides, each with a pointer to a browser-compatible image, with navigation javascript to link them all in a hierarchical way. The images ( PNG and SWF preferred, but GIF, JPG, and any other format a browser can render is acceptable) can be made with any image composition process, including ad-hoc programs driving LibGD, GnuPlot, Mathematica, the Gimp, Photoshop, digital camera output, screenshots, and so forth. Powerpoint and OpenOffice Impress can output single slides as images; these can be used as source images, too, too. You can turn a series of images into a SWF ( ShockWaveFlash , pronounced "swiff" ) movie with the open source swftools.
WYDIWYS is written in Perl. It is uses an HTML template file, template.html, which may call a style sheet. There is more information about operation in the perlpod documentation inside WYDIWYS, which Linux users can see with "perldoc ./wydiwys".
The motivation for this is that all presentation programs suck, especially when they talk to each other. They are dependent on fonts, and what the presenter (and version) does with them. They use "slide sorters" for navigation, a metaphor made obsolete by hyperlinks. They present animation very badly. They scale badly to screen size. It is very difficult to evolve a presentation into multiple versions and maintain the versions as a group.
If slide images are rendered down to and stored as full-screen pixel-based images, they cannot be mis-rendered. Ditto for simple Flash movies. The same image can be used in multiple presentations, and with Linux hard links, updating an image will propagate to all the presentations.
This is not a real-time text rendering system like Eric Meyer's S5 or Eric Wilhelm's Text::Slidez, two great products of the Eric Conspiracy. Since many slide sets are all text, these tools and others like them can be great front-end composition tools. Some kind of macro or add-on for Firefox, to render a sequence of these slides to fixed names and locations, suitable for processing by WYDIWYS, would be nice.
Slides are connected by hyperlinks, not just simple forward and back. WYDIWYS adds a third control, "enter", which is used to navigate up and down through hierarchy. With a few clicks on a wireless presenter control, or with keyboard buttons or mouse, the user can quickly navigate to any part of a presentation.
WYDIWYS builds from a simple text design control file, described in the perlpod documentation. The design file can be built by other programs, though a text editor is good enough for composing most shows. Multiple design files can use the same slide images to build different presentations. Since the composition is controlled with text files, the construction and maintenance of presentations can be controlled with "make", integrated design environments, and revision control systems.
WYDIWYS presentations are started by browsing one of 00000.html, aaaaa.html, zzzz.html, or index.html .
WYDIWYS builds a subdirectory called "design" which contains a copy of the original design file ("design_original"), template file, and a copy of wydiwys itself. The directory also contains a design file called "design_proto". If WYDIWYS is run from the design directory, with "./wydiwys < design_proto", it will make a duplicate of the presentation underneath it. This is useful as a starting place for making a modified presentation. By changing INDIR and OUTDIR in design_proto, the duplicate can be built someplace else.
This is most definitely alpha code, and needs the attentions of competent programmers (incompetent programmers, please contribute to other projects!). But it works OK for me. It was developed for Linux, it should be easy to port to Mac, and if you run Windows, then I must inform you that God hates your operating system, because He did not give you hard links.
Note: renamed WYDIWYS from Makeshow