other versions
- wheezy 0.10.3-2
IMPRESSIVE(1) | Impressive Documentation | IMPRESSIVE(1) |
NAME¶
Impressive - presentation tool with eye candySYNOPSIS¶
impressive [OPTIONS...] FILES...DESCRIPTION¶
Impressive is a simple presentation program that displays slideshows of image files (JPEG, PNG, TIFF and BMP) or PDF documents. Rendering is done via OpenGL, which allows for some "eye candy" effects.OPTIONS¶
-a <seconds> or --auto <seconds>Automatically advance to the next page after
the given number of seconds. Together with the -w option (described
below), this can be used to create automatic slideshows.
Specifies the display aspect ratio. Normally,
Impressive assumes that the pixel aspect ratio is 1:1 (square pixels),
regardless of the display resolution that has been set up. If a resolution has
been selected that doesn't match the display's aspect ratio, the screen will
be distorted. To overcome this, this option may be used to manually specify
the display aspect ratio, e.g. "-A 16:9". Note that this option has
no effect if Xpdf is used for rendering.
Disabled background rendering. By default,
Impressive will pre-render all pages in a separate background thread while the
presentation runs. If this option is specified, it will instead render all
pages immediately on startup. This option has no effect if caching is disabled
( --cache none, see below).
Sets the duration (in milliseconds) of the
highlight box fade-in/fade-out animation. Default value: 100 ms.
Specifies the page cache mode to use. Valid
options are:
none
memory
disk
persistent
Disables page caching altogether, only the
current and the following page will be kept in RAM. Jumping between pages will
be very slow, because Impressive will need to render the requested pages on
the fly. In addition, the overview page won't be complete until every page has
been shown at least once.
Caches all page images in memory. This is the
fastest method, but it requires very large amounts of memory (about 3 MiB per
page at 1024x768 resolution).
Like above, but uses a temporary file rather
than memory for storage. This is the default.
Uses a permanent cache file for caching. This
file will not be deleted when Impressive quits and will be reused on
subsequent invocations. The default name for the cache file is derived like
the names for Info Scripts (see below for an explanation), but with a
.cache file name extension instead of .info. This method is a
little bit slower than disk mode, but the time span until the overview
page is fully populated will be significantly decreased if Impressive is ran
again with the same input files and options.
The mode name may be abbreviated at will, down to one character. Thus,
--cache persistent, -c persist and even -cp are all
synonyms.This option can be used to specify the path to
an image file (typically a transparent .png) that shall be used as the mouse
cursor instead of the default one. Optionally, the hotspot may be specified
(this is the position inside the cursor image where the real mouse position is
located). Example: --cursor mycursor.png:2,4
Specifies the expected run time of the
presentation. The time parameter can be either a number of seconds or a
human-readable time like 1:23 (1 minute and 23 seconds), 4:56h
(4 hours and 56 minutes), 3m45s (3 minutes and 45 seconds), 5m
(5 minutes) or 1:23:45 (1 hour, 23 minutes and 45 seconds).
If an expected duration is specified, Impressive will show a semi-transparent
green progress bar at the lower edge of the screen, indicating how much time
has already passed. If the time is up, the bar will occupy the whole edge and
fade to yellow (at 125% of the expected time) to red (at 150% or more).
Sets the time (in milliseconds) the mouse
cursor is shown in fullscreen mode if it is not moved. Default value: 3000
ms.
OpenGL normally only supports textures with
power-of-two dimensions. This means that for a 1024x768 screen, the actual
texture size will be 1024x1024, for 1600x1200 it will even be 2048x2048. To
overcome this limit and save texture memory, Impressive will automatically use
the OpenGL extensions GL_ARB_texture_rectangle (available on most
graphics cards) or GL_ARB_texture_non_power_of_two (available on modern
graphics cards with current drivers). If these cause any trouble, the
-e option may be used to prevent Impressive from using the problematic
extensions.
Toggles fullscreen mode. By default,
fullscreen mode is activated, and can be deactivated using this switch.
Impressive uses some kind of text OSD to
overlay the current page number and title (if available) on the overview page.
This option can be used to specify a TrueType font file (.ttf) to use for the
OSD. If the path specified doesn't directly point to a useable font file,
Impressive will try to search the system font directories. It assumes that all
fonts are stored below /usr/share/fonts, /usr/local/share/fonts
or /usr/X11R6/lib/X11/fonts/TTF for this purpose (the latter one is
useful for Mac OS X systems specifically). If this option is not specified,
any of DejaVuSans.ttf or Vera.ttf (the typical file name of
Bitstream Vera Sans) will be used as a default.
Sets the screen size or resolution Impressive
shall use (in pixels). If xrandr is installed, the default screen size
for fullscreen mode is the current screen resolution; on other platforms,
Impressive uses the highest resolution available to the graphics system. If a
standard resolution cannot be determined, the default is 1024x768 pixels. Note
that this option is not the standard X "geometry" option and
does therefore not support window positioning (e.g. -g 800x600+0-0 will
not work!).
Sets up the startup gamma and (optional) black
level value. The black level is the original image's intensity level (0...254)
that is to be mapped to black in Impressive's output. Note that gamma and
black level adjustments may be unavailable or constrained on some
systems.
If this option is specified, Impressive writes
a short command line help screen to standard output and does not start a
presentation.
Specifies the page number to start with. The
default value is 1 (start with the first page). If another value is specified,
the page shown by Impressive right after initialization is not the first one
of the PDF or image list. Additionally, pre-rendering (if enabled) will also
start at the specified page.
Overrides automatic derivation of the info
script filename and specifies a script file directly.
If this option is specified, Impressive writes
a list of all available transition classes to standard output and does not
start a presentation. Transitions that are enabled by default are marked with
a star ( *) left of the class name.
Specified the OSD layout. Read below for an
explanation of this option
If this option is set, Impressive will show
the on-screen timer (activated with the [T] key) only with 1 minute
resolution. By default, it will show a timer with 1 second resolution.
This option disables the Impressive logo and
version number display. Instead, the loading screen will be just black or, if
background rendering is disabled, only the progress bar will be visible.
Do not display the presentation, but render it
into a series of PNG image files inside the specified directory. The images
will be generated in the current resolution as specified by the -g
option. This option is useful if you're going to give a presentation on a
foreigh PC with an old, broken or otherwise problematic Xpdf or GhostScript
installation: By generating images of the PDF pages you can ensure that no
rendering bugs will happen on the target system.
Enables or disables automatic derivation of
whether a page shall or shall not be shown on the overview page. This feature
is based on the fact that some LaTeX presentation packages tag all pages with
a title (that can be read by Impressive with the help of pdftk), except
those that contain multiple reveal steps.
The following modes are available:
off
first
last
Disables automatic overview mode. All pages
will be shown on the overview page by default. This is also the default
setting.
All pages with a PDF title will be shown on
the overview page. The purpose is to show the initial state of
multi-step slides on the overview page.
All pages before a page with a PDF
title will be shown on the overview page. The purpose is to show the
final state of multi-step slides on the overview page.
Again, the mode may be abbreviated arbitrarily, down to one character, just like
with the -c option above..Using this option, the range of the page
displayed can be narrowed down. The presentation will start at the first page
in the range. All pages outside of the range will not be shown on the overview
page and will not be cached. However, they can be entered manually when
cycling through the presentation. Due to the fact that these pages are
uncached, preparation of the display will take considerably longer.
This option can be used to override the Xpdf /
GhostScript path autodetection. The full path to the executable of either
GhostScript ( gs or gs.exe) or Xpdf's pdftoppm utility
must be specified.
If this option is enabled, Impressive will
show a light-blue semi-transparent progress bar at the lower edge of the
screen that shows the position inside the presentation, i.e. the relation
between the current page number and the total number of pages. Note that this
progress bar will not be shown if the duration progress bar ( -d
option) is also enabled.
Display all pages rotated by nx90
degrees clockwise. Try -r 1 or -r 3 if you run into problems
with PDFs generated by LaTeX on some Xpdf or GhostScript versions.
Most effects subdivide the visible screen into
a mesh of rectangular or quadratic pieces, each with its own coordinates and
alpha blend values. Using this parameter, the resolution of the subdivision
mesh can be defined. The default value is 48x36. On slow machines, lower
values like 24x18 or 12x9 can heavily speed up transition rendering at the
cost of visual quality. On the other hand, higher values like 64x48 or 96x72
improve quality, but use much more CPU cycles.
If a directory with image files is used as
input, Impressive will scale down images that are too big for the screen. But
by default, it will not scale up smaller images to fit the screen; it will
leave a black border instead. This option overrides this setting and enables
upscaling of smaller images.
This switch enables antialiasing by 4x
supersampling instead of the normal multisampling method used by Xpdf or
GhostScript. While this usually degrades both visual quality and performance,
it may be necessary for circumventing white strips or moire-like patterns in
gradients.
This option sets the size, in pixels, of the
OSD font. The default value is 14.
Using this switch, the set of transitions
Impressive will randomly draw at page changes can be specified. If only one
transition class is specified, this class will be used for all pages that do
not have another transition explicitly assigned in their page properties.
Multiple transitions have to be separated by commas; they will be used in
random order. The -l option can be used to get a list of available
transitions.
Sets the duration (in milliseconds) of page
transitions. 0 (zero) disables transitions altogether. Default value: 1000
ms.
If this option is specified, the source file
or directory will be checked for changed regularly. If a change in the input
PDF file or any of the image files in the input image directory is detected,
the page cache will be flushed and the current page as well as the info script
will be reloaded. The current page's transition will be shown between the old
and the new version of the page.
The new PDF file must have at least as much pages as the old one; also, it
should have the same aspect ratio. If the input is a directory, image files
must not have disappeared.
PDF files often contain tiny amounts of white
borders around the edges which look bad in screen presentations. To eliminate
this problem, Impressive uses "overscan": PDF files will not be
rendered to fit the screen size exactly, but they will be rendered a bit
larger so that the (possibly broken) borders can be cropped off. The amount of
overscan, in screen pixels, can be set with this option. The default value is
3 pixels, which should remove borders in most presentations at most common
screen resolutions without cropping the pages too much.
If this option is set, Impressive will
"wrap" over to the first page after the last page. In other words,
advancing to the next page at the end of the presentation will restart the
whole presentation.
This option enables a smooth fade-in effect at
the start of the presentation and a fade-out effect just before Impressive
quits.
If this option is enabled, the input files
will be shuffled into random order before starting the presentation. The
individual pages of PDF input files will stay in their original order, though,
so this option is mainly useful for image presentations.
Sets the zoom factor that is used in zoom
mode. It must be an integer value of at least 2. The default value is 2. Note
that it might not be possible to get high-quality zooming for large zoom
factors due to hardware restrictions.
Sets the duration (in milliseconds) of the
overview page zoom-in/zoom-out effects. Default value: 250 ms.
Activates persistent cache mode and specifies
the name of the cache file to use.
ARGUMENTS¶
Following the options, the input file name(s) must be specified. Recognized file types are PDF, JPEG, PNG, TIFF, BMP and PGM/PPM. If the name of a directory is put on the command line, all recognized image files (no PDF files!) in this directory will be played in alphanumeric order (case-insensitive). In addition, Impressive can use a text file containing a list of files or directories to show: This text file must contain at most one file name per line; every character after a hash sign ( #) is treated as a comment and will be ignored. If such a comment is put on the same line as an image file name, it will be used as the page's title. List file names must be prefixed with an at sign ( @) on the command line, e.g. impressive @my_list_file. Impressive will also expand wild-card characters ( * and ?) if this isn't already done by the shell, but apart from that, it will not reorder the arguments. Thus, it will show the documents in the order specified at the command line.LAYOUT OPTIONS¶
The OSD layout option ( -L/--layout) accepts a string with comma-separated key=value pairs. The following keywords are recognized:The opacity of the OSD text, either as a
floating-point value between 0 and 1 or a percentage between 2 and 100.
The distance (in pixels) of the OSD text to
the screen borders.
The position of the timer.
The position of the page title in overview
mode.
The position of the page number in overview
mode.
The position of the status line.
The position specifications are composed by one character that indicates whether
the text shall be displayed at the top ( T) or bottom (B) edge
of the screen and one character that indicates whether it shall appear on the
left ( L), on the right (R) or centered (C).
For example, the default OSD layout equals the following option string:
USAGE¶
On startup, Impressive will display a black screen with the program logo at the center. If caching is enabled, but background rendering is disabled, all pages of the presentation will then be rendered once. A bar in the lower half of the screen displays the progress of this operation. Any key (except for Q and Esc) or mouse click skips this process, with the effect that Impressive will render the remaining pages on demand. Please note that the overview page will not be complete until every page has been rendered at least once. In other words, if the precaching process was skipped, placeholders will be displayed for all pages that have not been rendered yet. By default, Impressive will build up the cache in the background while the presentation runs. Thus, the progress bar will not appear and the preparation will only take the amount of time required to render the first two pages of the presentation. After this initialization process, Impressive will switch to the first page directly and without any transition.CONTROLS¶
Q key or Esc keyQuit Impressive immediately.
Go to the next page (using a
transition).
Go to the previous page (using a
transition).
Go directly to the first or last page of the
presentation.
Return to the last (most recently displayed)
page. This can be used to toggle back and forth between two pages.
Toggle fullscreen mode.
Zoom back to the overview page. While in
overview mode, a page can be selected with the mouse and activated with the
left mouse button. The right or middle mouse button or the Tab key leave
overview mode without changing the current page.
Jump to the page referenced by the hyperlink.
Two types of hyperlinks are supported: Links that point to some other page of
the same document, and URL hyperlinks like Web links and e-mail addresses.
This feature is only available if pdftk is installed. Furthermore,
xdg-open from the freedesktop.org Portland project is required for URL
links to work. Please note that the hyperlink feature will not work properly
when pages are rotated.
Create a new highlight box. While at least one
highlight box is defined on the current page, the page itself will be shown in
a darker and blurry rendition. Only the highlight boxes will be displayed in
their original lightness and sharpness.
If a page with highlight boxes is left, the boxes will be saved and restored the
next time this page is shown again.
If the right mouse button is clicked while the
mouse cursor is above a highlight box, the box will be removed. If the last
box on a page is removed, the page will turn bright and sharp again.
Save the info script associated with the
current presentation. The main purpose for this is to permanently save
highlight boxes or keyboard shortcuts, so they will be restored the next time
this presentation is started.
Activate or deactivate the time display at the
upper-right corner of the screen. If the timer is activated while the very
first page of the presentation is shown, it activates "time
tracking" mode. In this mode, a report of all pages visited with their
display duration, enter and leave times will be written to standard output.
This can be very useful when preparing presentations.
Reset the presentation timer.
Toggle spotlight mode. In this mode, the page
is darkened in the same way as if highlight boxes are present, but instead of
(or in addition to) the boxes, a circular "spotlight" will be shown
around the mouse cursor position, following every motion of the mouse
cursor.
Adjust the spotlight radius.
Toggle zoom mode. When this key is first
pressed, the current page will zoom in. The page will be displayed at double
size, but in its original resolution (i.e. it will be blurry). Impressive will
re-render the page at the new resolution if the graphics hardware supports it.
During this time, Impressive will not accept any input, so don't even
think about clicking the mouse or pressing keys before the image gets crisp
again.
In zoom mode, all other functions will work as normal. Any operations that leave
the current page, such as flipping the page or entering the overview screen,
will leave zoom mode, too.
Adjust the gamma value of the display (might
not be supported on every hardware).
Adjust the black level of the display (might
not be supported on every hardware).
Revert gamma and black level back to
normal.
This will toggle the "visible on overview
page" flag of the current page. The result will not be visible
immediately, but it can be saved to the info script (using the S key)
and will be in effect the next time the presentation is started.
This will toggle the skip flag of the current
page. A page marked as skipped will not be reachable with the normal
forward/backward navigation keys.
Fade to black or white, respectively. This
feature can be used if a whiteboard or blackboard in front of the projection
area is to be used during the presentation. Using these two keys, the screen
will fade into a solid color. On any keypress or mouse click, it will fade
back to normal. These keys are not available in overview mode.
Move the visible part of the page in zoom
mode.
Navigate through pages.
Leaves fullscreen mode to facilitate task
switching while running full-screen presentations.
Any other alphanumeric (A-z, 0-9) or function key (F1-F12) can be used to assign
shortcuts to pages that require quick access. If one of the keys is pressed
together with Shift, the currently displayed page is associated with
this key. To recall the page later, it is sufficient to press the shortcut key
again. Shortcuts can be permanently stored with the S key.
INFO SCRIPTS¶
Impressive offers a powerful way to customize individual presentations using so-called info scripts. An info script is a text file having the same name and located in the same directory as the presentation file itself, except for the additional suffix .info. Thus, a presentation file called BrandNewProduct.pdf would have a info script with the name BrandNewProduct.pdf.info. If multiple arguments were specified on the command line, the info script will be called just .info (a dot file, so to speak). If a directory name was specified as the only argument, either a file called DirectoryName.info or a file called .info inside the directory will be used, depending on whether a path separator was specified at the end of the directory name or not - Impressive simply appends .info to whatever the input path name was.PAGE PROPERTIES¶
The main part of an info script defines the properties of each page. At the moment, the following properties are defined:Each page can have a title that is displayed
in the Impressive window's title bar. If there is no title explicitly
specified in the info script, the title of the page will be extracted from PDF
metadata if pdftk is installed, or the image file name will be used if the
presentation is an image slideshow.
With this property, the transition class to be
used for rendering the transition between this page and the following page can
be specified. For pages lacking this property, random transitions will be
chosen. A list of available transition classes can be obtained with
impressive -l.
This property overrides the global transition
time parameter ( -T at the command line). It contains the integer time
(in milliseconds) the transition between this page and the following page
shall be shown.
This property holds a boolean value
(0/False or 1/ True) that specifies whether the page shall be
included in the overview page. If this property isn't specified, it is assumed
to be True.
This boolean property can be set to
1/True if the page shall be skipped during the presentation.
Pages with overview:True, skip:False will be accessible both by cycling
through the pages and using the overview page,
pages with overview:True, skip:True will be silently skipped in the
normal page cycle, but remain accessible from the overview page,
pages with overview:False, skip:False will appear in the normal cycle,
but not on the overview page
and pages with overview:False, skip:True will not be accessible at
all.
This property stores a list of highlight box
coordinates. Normally, there is no need to edit this by hand, as Impressive
handles this automatically if the S key is pressed.
If a timeout property is present and
the page is shown, Impressive will automatically switch to the next page after
the specified number of milliseconds. Normally, the timeout will only be
effective the first time the page is shown unless wrap mode is used
(command-line option -w or --wrap). This restriction makes it
possible to create self-running presentations with individual per-page
timeouts.
This property can hold a string with a single
line of text that will be displayed on screen while the page is shown. Display
of this text can not be disabled.
Specifies the file name of a sound file to be
played (via MPlayer) when the page is first entered. Once started, the sound
will be played until its end is reached, another sound or video is played, or
Impressive is exited.
Specifies the file name of a video file to be
played when the page is first entered. The video will be displayed
full-screen. Any key or mouse click stops playback, except the cursor keys,
which are used to seek in the video file, and space, which can be used to
pause playback. Note that this function is highly experimental and might not
work reliably on every system!
If this property is present and set to 1 or
True, the media file specified in the sound or video
properties will be played every time the page is entered, not just the first
time.
If this property is set to zero, the
presentation progress bar (which is usually set up with the
-d/--duration command line switch) will not be shown on this
page. In practice, it might be useful to hide the bar from the first page so
that it is not visible during the introduction.
If this property is set to 1 or True,
the timer will be reset each time this page is left, just as if the R
has been pressed. If the special value 2 or FirstTimeOnly is used, the
reset will only take place if the page was shown for the first time. Again,
this is particularly useful on the first page: A combination of
progress:False, reset:FirstTimeOnly makes it possible to set up the
presentation long before it actually begins - the first page can be showed as
long as desired, actual timing starts at the second page.
This property is a per-page override of the
global -r command line option: It specifies how the page shall be
rotated, in 90-degree steps clockwise.
These properties can contain a Python callable
(i.e. a function reference or lambda expression) that is executed when the
page is entered or left. The ~Once variants will only be executed when
the page is entered or left for the first time. The callable must not take any
arguments. This feature can be used to associate arbitrary Python code with
specific pages, for example to execute external programs.
Warning: Lambda expressions cannot be properly processed by the Info
Script save function ( S key). If Impressive encounters lambda
expressions when saving, it will remove them. In addition, it will not
overwrite the original info script, but generate an extra file that needs to
be merged withe the original script by hand.
This property can be assigned a dictionary
that maps alphanumerical keys to Python functions. For example, 'keys': {
'x': SomeFunction } will invoke SomeFunction() if the lowercase
character 'x' is typed while the page is displayed. Regarding the functions,
the same restrictions as for the OnEnter/OnLeave family apply:
the function must not take any parameters and lambda functions can not be
saved. Also note that it is not possible to overwrite Impressive's pre-defined
key bindings with this method.
The properties are stored together in a Python dictionary called
PageProps. The syntax looks like in this example:
PageProps = { 1: { 'title': "Title Page", 'transition': PagePeel, 'sound': "background_music.mp3" }, 2: { 'title': "Another Page", 'timeout': 5000 } }The PageProps definition (and only the PageProps definition) will be rewritten by Impressive if the S key is pressed. User-defined PageProps entries will also be left untouched, except for some pretty-printing.
GLOBAL PRESENTATION PROPERTIES¶
The name of the presentation is shown in the title bar of the Impressive window (if not in fullscreen mode). By default, the file name or (if available) PDF metadata title will be used for this purpose, but the presentation title can also be explicitly set by overwriting the DocumentTitle variable:OPTION OVERRIDES¶
Another use of info scripts is overriding the default or command-line settings on a per-file basis. This can be done by simply overwriting one of the variables that are defined at the beginning of impressive.py. Each of these variables corresponds either to a command-line setting, or to some constant related to visual appearance or performance. So, for example, to force fullscreen mode for a presentation, writeAUTHOR¶
Impressive and its documentation has been written mainly by Martin J. Fiedler <martin.fiedler@gmx.net>, with small portions of the code written by external contributors. See the source code file for details.REPORTING BUGS¶
Report bugs to to <martin.fiedler@gmx.net>.2010-10-17 | Martin J. Fiedler |