Slide-Views

PPresenter
Manual
SlideView

Portable Presenter is a package designed to give presentations. A presentation is based on slides, which are shown on viewports.

PPresenter is able to show a slide on more than one viewport at the same time, maybe in different styles, on different devices, in different fonts and fontsizes. So: for each viewport, a slide has a slide-view, which is written in a specific style.

On the slide-page you find examples for one viewport presentations. Read this page for examples on multiple screen presentations.

style options:

How it works

Basically, a slide-view is the representation of one slide on one specific viewport.

In case of one viewport for the show, the specification of slide options is simple, but on the moment you have more viewports, then you might want to show a slide on one, on all, or on a subset, possibly with different flags.

To be able to specify the viewport, you can use the options:

-viewport => string
-viewports => [ string, ... ]
As alternative, you are allowed to use the option names -screen and -screens which may be a bit more intuitive names, but differs from the internal naming of the PPresenter software.

The default is 'OTHER', which means: all viewports excluding those which I specified explicitly, and excluding the viewports which show slidenotes.. The value 'ALL' can also be defined, but is rarely used (OTHER is doing a good job as default).

Next to this extra option you have to use nexted option specifications. Here is starts to become complicated. Examples show the possibilities best.

Examples

First we need a few viewports:
  use PPresenter;
  my $show = PPresenter->new(-name => 'demo'
      , -controlDisplay => $ENV{DISPLAY});
  $show->addViewport(-name => 'first');
  $show->addViewport(-name => 'second');
  $show->addViewport(-name => 'third');
OK, now we have 4 viewports: one control viewport, which shows slidenotes. The control viewport is created because there is a display defined for it.

Furthermore, there are three windows on my screen, ready to display slides. You need more options: for instance to specify geometry and such if you want to try this out. But we try to demonstrate slide-view specifications and not the creation of viewports.

Example 1: slide on all viewports

   $show->addSlide(-title => 'slide 1');
   $show->addSlide(-title => 'slide 2'
       , -viewports => 'ALL');
   $show->addSlide(-title => 'slide 3'
       , -viewports => 'OTHER');
Three times the same: of course you prefer the first notation.

Example 2: on only one viewport

   $show->addSlide(-title => 'slide 4'
       , -viewport => 'first');
This was simple, wasn't it. To add a slide to two viewports is left as an excercise.

Example 3: all viewports, but a bit different

Now we need nesting in our specification. Nesting is done by adding a hash always to the end of an option list. For instance:
   $show->addSlide(-title => 'slide 5'
       , -template => 'tm'
       , -bgcolor  => 'red'
       , { -viewport => 'first'
         , -main     => 'text 1'
         }
       , { -viewports => [ 'second', 'third' ]
         , -template  => 'tlr'
         , -left      => 'text 2'
         , -right     => 'text 3'
         }
       );
The slide general options shall be but before (outside) the nestings. All three viewports will have a red background. Viewport 'first' will use template tm, but this is overruled for the both other viewports.

The same could be written as:

   $show->addSlide(-title => 'slide 6'
       , { -viewport => 'first'
         , -template => 'tm'
         , -main     => 'text 1'
         , -bgcolor  => 'red'
         }
       , { -template  => 'tlr'
         , -left      => 'text 2'
         , -right     => 'text 3'
         , -bgcolor  => 'red'
         }
       );
The default viewport is 'OTHER'.

Example 4: one viewport differs

Another way to write the same as in the previous example:
   $show->addSlide(-title => 'slide 7'
       , -template  => 'tlr'
       , -left      => 'text 2'
       , -right     => 'text 3'
       , -bgcolor   => 'red'
       , { -viewport => 'first'
         , -template => 'tm'
         , -main     => 'text 1'
         }
       );
This shows one viewport which is a bit different: the main option-level has no viewports specified, hence defaults to viewports is 'OTHER'.

Example 5: use only two viewports differently

The following works, because the options of the nesting (describing the future contents of the second screen) overrule those of the first):
   $show->addSlide(-title => 'slide 7'
       , -template  => 'tlr'
       , -viewport  => 'first'
       , -left      => 'text 2'
       , -right     => 'text 3'
       , -bgcolor   => 'red'
       , { -viewport => 'second'
         , -template => 'tm'
         , -main     => 'text 1'
         }
       );
However, it is nicer to write:
   $show->addSlide(-title => 'slide 7'
       , -bgcolor   => 'red'
       , -viewport  => 'NONE'
       , { -viewport => 'first'
         , -template => 'tlr'
         , -left     => 'text 2'
         , -right    => 'text 3'
         }
       , { -viewport => 'second'
         , -template => 'tm'
         , -main     => 'text 1'
         }
       );
If you forget the viewport 'NONE', then the general options are used to destroy the other viewports: the third, in this case.

The second example showed how easy it is as both views are equal.

 
Portable Presenter is written and maintained by Mark Overmeer. Copyright (C) 2000-2002, Free Software Foundation FSF.