Pdf Presenter Console 2.0 released - Westhoffswelt - Welcome to the real world

Pdf Presenter Console 2.0 released

Since the last release of my Pdf-Presenter-Console quite some time has passed. Therefore I am happy to announce the release of a brand new version 2.0. Quite a lot has changed in the code base of this project since the last time I blogged about it. I rewrote all of the internal rendering code, as a preparation to move over to Cairo in a future release, as well as to allow more sophisticated things like cache compression.

New features

Most likely you are not interested in the tech-talk about what I changed, but what exactly will change for you as a user of the software. The most significant changes made are support for navigational links, a compressed prerendering cache and a new prerendering system making the process a lot smoother.

Navigational link support

PDF files allow links to be embedded into a document. These links may execute many different tasks. One of these tasks is to provide means to quickly jump to certain pages of the document itself. Most likely you have seen this feature in table of contents sections of PDF documents, where you may click onto a chapters name to directly jump it. In PDF presentations this feature can be useful to allow quick jumps between different sections or chapters of your presentation. If you are generating your presentations with Latex and Beamer all the needed links will be created automatically for you by default.

Navigational links created by Latex Beamer packageNavigational links created by Latex Beamer package

The new version of PDF-Presenter-Console supports these navigational links. If you hover a link with your mouse, either on the presenter or the presentation screen, your pointer will change to a hand symbol. A click to such a link will open the assigned presentation page on the presenter screen.

Compressed prerendering

A lot of people complained about the memory consumption problems presentations with a lot of slides (>=100 pages) created. Such presentations could easily eat up to 1.5gb of memory to store the prerendered slides. On most current systems this isn't a big problem. Unfortunately there are a lot of people out there using their netbooks for presentations. Netbooks normally only have about 1gb of ram. By refactoring the way slides are rendered I have been able to compress prerendered slides before storing them in memory for later access. This way I was able to reduce the over all memory consumption of prerendered slides by about a factor of 30. That's right if your presentation took about 1.5gb of ram before it will now only need 50mb!

As always compression comes at a cost of speed. The new prerendering storage reduces prerendering times by about a factor of 2. The time to display a slide however didn't change noticeably. Therefore this trade off seems to be a good bargain.

The new compression is enabled by default. If you have enough ram, want the fastest possible rendering as well as display times, you may use the -z option on the commandline to disable the compression. This way the old uncompressed storage engine will be used.

New prerendering system

The prerendering system itself has been changed to allow for a lot smoother user interaction with the console, while slides are prerendered. Displaying slides is now prioritized over prerendering them. This should allow for faster slide changes, while the presentation is still being prepared.

Further changes

Other changes to the console have been made as well. For a full list take a look at the changelog.

Changed license

As Jakub Wilk <jwilk@debian.org> and Barak A. Pearlmutter <barak@cs.nuim.ie> pointed out the license I used to publish the PDF-Presenter-Console (GPLv3) is incompatible with the license of the PDF rendering library I link against (libpoppler, GPLv2). I am terribly sorry for this. To solve these incompatibility I am licensing the PDF-Presenter-Console under the GPLv2+ license from this release on.

Feedback?

As always comments and suggestions as well as patches are very welcome. Use the comment function on this blog or contact me using email.

To report a bug you may either contact me directly or use the issue tracker on the github project page

Download

The new version can be downloaded from its project page or using the link directly below.

Detailed changelog for version 2.0

  • Complete rewrite of rendering system to allow more sophisticated actions.

  • Changed license of the project from GPLv3 to GPLv2+ because of incompatibilities with Poppler. (Thanks to Jakub Wilk <jwilk@debian.org> and Barak A. Pearlmutter <barak@cs.nuim.ie> for pointing out this out).

  • Implemented: Usage of left-/right mousebuttons for slide navigation.

  • Implemented: Handling of navigational links inside of PDF files.

  • Implemented: Abstraction to cache prerendered slides.

  • Implemented: Compressed cache for prerendered slides.

  • Implemented: Alternative way of executing the prerendering process to allow for smoother navigation while slides are generated.

  • Implemented: Means to switch displays in single monitor mode as well as dual monitor mode

  • Implemented: Disabled timer if a duration of 0 is provided

  • Fixed: Build problems on Fedora 13 due to changed linking procedure

  • Fixed: Slightly changed image data formats due to update of Gtk to Version 2.22 or higher.

  • Implemented: Removed usage of deprecated Gdk.GC in favor of Cairo.

Trackbacks

Comments

  • Ignacio on Thu, 03 Feb 2011 14:50:22 +0100

    Hi,
    I'm trying to compile Pdf Presenter Console 2.0 in ubuntu 10.10 64bits and failing. Can you help me?

    cmake ../
    CMake Error at cmake/Vala_CMake/vala/FindVala.cmake:63 (string):
    string sub-command REPLACE requires at least four arguments.
    Call Stack (most recent call first):
    cmake/Vala_CMake/vala/ValaPrecompile.cmake:31 (find_package)
    CMakeLists.txt:5 (include)


    CMake Error at cmake/Vala_CMake/vala/FindVala.cmake:64 (string):
    string sub-command STRIP requires two arguments.
    Call Stack (most recent call first):
    cmake/Vala_CMake/vala/ValaPrecompile.cmake:31 (find_package)
    CMakeLists.txt:5 (include)


    CMake Error at cmake/Vala_CMake/vala/FindVala.cmake:63 (string):
    string sub-command REPLACE requires at least four arguments.
    Call Stack (most recent call first):
    cmake/Vala_CMake/vala/ValaVersion.cmake:31 (find_package)
    CMakeLists.txt:6 (include)


    CMake Error at cmake/Vala_CMake/vala/FindVala.cmake:64 (string):
    string sub-command STRIP requires two arguments.
    Call Stack (most recent call first):
    cmake/Vala_CMake/vala/ValaVersion.cmake:31 (find_package)
    CMakeLists.txt:6 (include)


    CMake Error at cmake/Vala_CMake/vala/FindVala.cmake:63 (string):
    string sub-command REPLACE requires at least four arguments.
    Call Stack (most recent call first):
    CMakeLists.txt:8 (find_package)


    CMake Error at cmake/Vala_CMake/vala/FindVala.cmake:64 (string):
    string sub-command STRIP requires two arguments.
    Call Stack (most recent call first):
    CMakeLists.txt:8 (find_package)


    -- checking for a minimum Vala version of 0.11.0
    CMake Warning (dev) at cmake/Vala_CMake/vala/ValaVersion.cmake:82 (if):
    given arguments:

    "VERSION_GREATER" "0.11.0" "OR" "VERSION_EQUAL" "0.11.0"

    Unknown arguments specified
    Call Stack (most recent call first):
    CMakeLists.txt:10 (ensure_vala_version)
    This warning is for project developers. Use -Wno-dev to suppress it.

    CMake Error at cmake/Vala_CMake/vala/ValaVersion.cmake:88 (message):
    Vala version 0.11.0 or greater is required.
    Call Stack (most recent call first):
    CMakeLists.txt:10 (ensure_vala_version)


    -- Configuring incomplete, errors occurred!


    Thanks!

  • Flüstern on Tue, 01 Mar 2011 16:37:02 +0100

    I have quite the same problem as Ignacio, but with Ubuntu 10.10 x32. Can you provide a solution?

  • Emma on Tue, 20 Sep 2011 17:14:51 +0200

    I have the same problem. Have you find a solution?

  • Omega on Fri, 18 Nov 2011 19:33:55 +0100

    This is such a great programm. Just simple the one I need for presentations.
    Do you yet know whether it will run on systems with gnome 3 and GTK+3? I don't know much about the compability of GTK2 and 3, but wondering if I can use this program on my system, because I plan to switch to gnome3.

  • Arne on Fri, 18 May 2012 00:25:54 +0200

    Have you thought about video support (see latex package movie15)?
    Very usable tool. Cheers,
    Arne

  • slendertone abs belt on Mon, 23 Jul 2012 10:20:52 +0200

    know much about the compability of GTK2 and 3, but wondering

  • Running 2 on Wed, 05 Sep 2012 01:45:20 +0200

    but wondering if I can use this program on my system, because I plan to switch to gnome3.

  • cheap nike shocks on Wed, 19 Sep 2012 08:11:44 +0200

    use this program on my system, because I plan to switch to gnome3.

  • Christoph on Thu, 29 Nov 2012 09:38:46 +0100

    Here is a feature suggestion, I'd grately appreciate: Notes. I'd like to be able to display notes for every slide that help in in my presentation. Latex Beamer has a build-in \note{} command that would be perfect for this. Thanks alot for your awesome program by the way!

  • tagheuerwatcheshut on Sun, 31 Mar 2013 07:58:20 +0200

    replica aquaracer tag heuer watches,http://www.tagheuerwatcheshut.com/
    replica caliber tag heuer watches,http://www.tagheuerwatcheshut.com/
    replica formula tag heuer watches,http://www.tagheuerwatcheshut.com/
    replica grand carrera tag heuer watches,http://www.tagheuerwatcheshut.com/

Add new comment

Fields with bold names are mandatory.