[Photo de l'auteur]


Original in fr Charles VIDAL

fr to enCharles VIDAL


President of a gastronomic lug in Paris, He likes the GNU philosophy and Open Source, because they both allow people to share knowledge. He would like to find some time to play Saxophone.


This article describes the features of the free software MagicPoint. It is one among the very few free presentation software for X-Window. The presentation is described by a simple but powerful language.


logo de magic point



Presentation software became popular a few years ago and have now been integrated into the office sotfware packages by default. Before that, in order to make a presentation using a free system, the old method of the retroprojection with the slides (using latex Slitex ) was used.

But with the retroprojection of the computer's screen, the presentation take another dimension and make the presentation look better. Magic Point is a presentation software working with every X11/Unix system.

It comes from the BSD world and is developed by a japanese team. Writing a Magicpoint presentation is made through a text file. We will study its syntax later on.

Use the library FreeType to get a better font rendering but one must be careful because Apple has a patent on the true type fonts.

Sample pictures generated by MagicPoint.


The display is full screen and you can show text:
  1. in many differents fonts with different sizes or colors.
  2. with a special indentation.
  3. with a variable alignment.
  4. using lists.
  5. and pictures
  6. as the result of an external process ( text and graphics )
  7. allowing special effects for the text.
All of this can be customized.
The resulting output could be shown on a screen, or stored in HTML, latex or postscript files.

Syntax and examples

The character % is a special character of the language. It should be placed at the beginning of lines in order to tell Magicpoint that the rest of these lines are commands of the language. If there are several commands after %, they must be comma separated. If a line doesn't begin with a % then it will be considered as the presentation text.

Means the rest of the line represents comments

Usually, a MagicPoint document begins with:
%include "default.mgp"
The command include includes a file ( for example default.mgp). The command page begins a new page . The next line will be the title of the slide and skips a blank line.

%pagebegins a new page.
%size size sets size of fonts .
%fore "color" color of foreground
%back "color" color of background.
%left Left justify.
%leftfill Left justify, with folding of long lines.
%center centering
%right Right justify.
%cont Draw without line break
%pause Stop drawing until forward key or button is pressed.
Let's see now a short example of the command we just learnt.:

%include "default.mgp"
%fore "red", size 6
This will be centered
This will appear left justified
and this right justified
Text can be shown with any size or color.
%SIZE 10,FORE "orange"
Orange size 10
%SIZE 7,FORE "gray"
Grey size 7
%SIZE 5,FORE "blue"
Blue size 5
%SIZE 4,FORE "yellow"
Yellow size 4
%SIZE 3,FORE "green"
Green size 3
%SIZE 2,FORE "red"
Red size 2
%SIZE 1,FORE "pink"
Pink size 1

This yields :

If you press the Ctrl key then at the bottom a little bar with the number of pages will appear, and you can go to a page by clicking on its number.


When MagicPoint finds a tab in the presentation text, then it displays the text in a special way:
The format of the indentation can be configured by the command tab

example : %tab 1 size 5, vgap 40, prefix " ", icon box "green" 50

These symbols are available :

To have something nice on the background

Magicpoint can display many different backgrounds, with the command bgrad. bgrad creates color graduations.
Let's see two examples:
Example 1 Example 2
This command has a lot of arguments:
  1. 0 :Top to Bottom
  2. 90 :Left to Right
  3. 180 :Bottom to Top
  4. 270 :Right to Left
default 0 negative value means "non-linear gradation"

You can show a picture in the background with the command bimage .Syntax:

%bimage "imagefile" [ <screensize> ]
Specifies the name of a background image file

<screensize> :: auto resizing. specify the original screen size with WIDTHxHEIGHT. unless screensize is the same size of the physical display, zoomrate is calculated automagically.

Where screensize is expressed as WIDTHxHEIGTH.

%size 7, font "thick", fore "gold", bimage "bg-black-brilliant.jpg" 1024x768
%center, size 4

%size 7
Test with a background image
%cont, size 7

%size 4
Linux Focus.

Special Effects :

Magicpoint allows a few animations of the text to take place. Effects are limited to a text or an image moving from right to left or left to right.

Executing a program during your presentation

Magic Point can also display the result of a shell command like the version of your Linux kernel for instance. In order to do so, use the following syntax:

%filter "command"
text to pipe to the standard input of the command
To display the version of your linux kernel, type the command:
%filter "cat /proc/version"
To better understand the syntax try:
%filter "rev"
This is a test
This will display the following string:
tset a si sihT

But Magicpoint can also display a graphic program in its window with the system command:
%system "xeyes -geometry %50x20+25+60"

You can find all the documentation about the syntax in a file called SYNTAX in magicpoint tarball.

mpg's Arguments :

-b color Specify background color
-d Demo mode - go through the presentation
-g geometry Set window geometry
-h Display this help message
-n Disables control key input from tty
-o Do not override the window manager
-p page Start at the specified page
-q Do not beep on errors
-t timeslot Enable presentation timer
-v Show version number and quit
-w dir Specify a working directory
-x engine Disable specified rendering engine
-B Ignore background image
-C Use private colormap
-D Generate html pages for the presentation
-F mode,effect,value Use forwarding caches
-G Page guide is on
-O Obey to the window manager
-Q quality Set background image quality(0-100)
-R Do not perform automatic reload
-S Do not process directives that fork process
-T timestampfile Update timestampfile on page refresh
-V Be verbose
-X gsdevice ghostscript device to use

Using the magicpoint file .mgp

If you want to put your presentation on the internet, the authors of Magicpoint have had the good idea to add an option to make things easy:
mpg -D output_directory mgp -D the directory where the html and pictures will be created.
You have to install xwintoppm; you can find it in the directory contrib of the tarball, and put it in your PATH (if you do a make install, it will be in your PATH).

The program will display each screen and dump them into files and create html pages. Contributors have made some conversion programs from the file format mgp to other formats like Postscript ( mgp2ps ), then you can have a paper presentation to give to the public. Example of pictures generated by Magicpoint in html. .

In the directory contrib, you can find some perl programs:



Follow these different steps to compile MagicPoint:
  1. ./configure -help (read and choose your configuration)
  2. ./configure
  3. xmkmf
  4. make Makefiles
  5. make
  6. make install (you need to be root)