Startseite > Newskommentare > Präsentationen einfach erstellen

Präsentationen einfach erstellen

So sieht eine fertige Folie aus

So sieht eine fertige Folie aus

(eine Runde schamloser Eigenwerbung für ein Open-Source-Projekt von mir)

Im Folgenden möchte ich dieses Blog nutzen, um ein von mir entwickeltes Programm vorzustellen, mit dem man sehr schnell einfache Präsentationsfolien erstellen kann. Aus einer Textdatei mit einer einfachen, eingerückten Gliederung wird eine komplett gestaltete Präsentation (als PDF) erzeugt. Wie das fertige Ergebnis dann aussieht, ist rechts zu sehen.

Vor einiger Zeit musste ich für einen Workshop eine Beamer-Präsentation erstellen. Dafür habe ich mir zunächst Notizen in einem Texteditor geschrieben – einfach die einzelnen Punkte, die rein müssen, schön nach Unterpunkten gegliedert. Das sah dann ungefähr so aus:

Arten von Verschlüsselung
  Hashes
    Eigenschaften
      Eingabe beliebiger Länge
      Ausgabe fester Länge
      sehr schnell
      Bei kryptographisch sicheren Hashes:
        Kleine Veränderungen der Eingabe ändern Ausgabe völlig
        Gleichmäßige Verteilung der Ausgabe
        Nichtumkehrbar (Einwegfunktion)
        Kollisionsresistenz
          zu einem Hash kein "passender" Eingabewert findbar
          keine zwei Eingaben mit gleichem Hash findbar
    Beispiele
      Verwendung
        Passwörter
        Prüfsummen
      Beispiele
        MD5
        SHA-1
        Whirlpool

Ich habe überlegt, ob ich die Präsentation mit üblicher Präsentationssoftware oder mit der LaTeX Beamer Class machen soll. Die LaTeX beamer class ist eine nette LaTeX-Klasse, mit deren Hilfe man relativ schnell sehr schön aussehende Präsentationen erstellen kann. Allerdings muss man dafür ziemlich nervigen Code schreiben:

    \section{Arten von Verschlüsselung}
      \subsection{Hashes}
        \begin{frame}[fragile] \frametitle{Eigenschaften}
          \begin{itemize}
            \item Eingabe beliebiger Länge
            \item Ausgabe fester Länge
            \item sehr schnell
            \item Bei kryptographisch sicheren Hashes:
            \begin{itemize}
              \item Kleine Veränderungen der Eingabe ändern Ausgabe völlig
              \item Gleichmäßige Verteilung der Ausgabe
              \item Nichtumkehrbar (Einwegfunktion)
              \item Kollisionsresistenz
              \begin{itemize}
                \item zu einem Hash kein \glqq{}passender\grqq{} Eingabewert findbar
                \item keine zwei Eingaben mit gleichem Hash findbar
              \end{itemize}
            \end{itemize}
          \end{itemize}
    \end{frame}

Das war mir nach wenigen Zeilen Copy&Paste zu blöd, zumal ich quasi nur die Befehle vor meine Stichpunkte setzen musste – die Struktur (Themen, Punkte, Unterpunkte) hatte ich ja schon fast vollständig.

Daraufhin habe ich ein kleines Perl-Skript geschrieben, welches die Drecksarbeit für mich erledigt hat und aus den Stichpunkten direkt den LaTeX-Code generiert. Mit pdflatex und der LaTeX Beamer Class wird der dann in eine PDF-Präsentation verwandelt. Da ich mir dachte, dass es auch für andere nützlich sein könnte, habe ich es noch ein wenig verbessert, dokumentiert und veröffentlicht.

Das Programm ist Open Source (und somit kostenfrei) und kann auf der entsprechenden Projektseite bei Sourceforge heruntergeladen werden. Website und Dokumentation sind derzeit in Englisch (es sprechen nunmal mehr Menschen Englisch als Deutsch). Kenntnisse in LaTeX sind hilfreich, aber nicht nötig, eine funktionierende LaTeX-Umgebung mit pdflatex und beamer class sowie Perl werden vorausgesetzt.

Das auf der Projektseite zu findende Beispiel kann als Schnellstarthilfe dienen. Eine detaillierte Erklärung bietet die (englische) Readme, die wichtigsten Dinge hier nochmal in Kürze:

Die Syntax basiert auf Einrückungen (nicht eingerückte Zeilen sind Abschnittsnamen, einmal eingerückte Unterabschnittsnamen, zweimal eingerückte Foliennamen und dreimal, viermal oder fünfmal eingerückte sind Aufzählungspunkte, -unterpunkte bzw. Unterunterpunkte). Eine Einrückung sind zwei Leerzeichen (kann man im Perlskript ändern). Kopf und Fuß der Datei müssen LaTeX-Code enthalten, bei Bedarf einfach aus dem Beispiel kopieren und Name etc. anpassen. Folgende Zeichen:

  \ { } $ ^ _ % ~ # &

müssen einen Backslash (\) vorangestellt bekommen, da es sich um LaTeX-Sonderzeichen handelt (also um ein Dollarzeichen zu erhalten \$ schreiben). Um aus einer Stichpunktliste eine Präsentation zu machen, einfach die Liste auf die enthaltene Batchdatei ziehen. Achtung, PDF-Dateien, die den gleichen Namen wie die Stichpunktliste haben, werden überschrieben.

Feature requests und Bugreports sind willkommen, aber ich werde nicht viel Zeit hineinstecken können, da mein Studium viel Zeit frisst, und das geht nun mal vor. (Das ist auch der Grund warum es keine vollständige deutsche Doku gibt und warum diese Ankündigung so spät erscheint.) Support kann ich daher nur sehr beschränkt leisten und ich bitte daher um Verständnis, dass ich nicht bei nicht direkt mit dem Programm zusammenhängenden Problemen wie dem Einrichten von Perl und MikTeX helfen kann.

Kategorien:Newskommentare
  1. 2008-11-19 um 10:00 UTC

    Hallo,

    das klingt interessant. Kann man damit auch Bilder in die Präsentationen einfügen?

    Gruß,
    Renée

  2. Jan
    2008-11-19 um 19:52 UTC

    @Renée Bäcker: Ja. Das Programm generiert ja nur eine LaTeX-Datei. Man kann also direkt LaTeX-Befehle eingeben (am Besten mit einem @@ davor, wie in der Readme beschrieben, wenn man die Bilder nicht als Aufzählungspunkt haben will). Es ist zwar leider nicht besonders bequem, aber es geht. Oben muss noch das entsprechende Paket eingebunden werden, also \usepackage{graphicx} und dann die Bilder ganz normal wie in LaTeX einbinden. Aber ich muss gestehen: wenn man viele Bilder hat, vor allem wenn man noch oft mehrere auf einer Seite unregelmäßig anordnen will, ist man mit entsprechender Office-Software besser dran.

  3. 2008-11-20 um 08:57 UTC

    Danke für die Antwort. Ich werde es mir mal anschauen…

  4. Christian
    2009-05-04 um 18:36 UTC

    Ich habe das Script für eine Präsentation (ohne Grafiken) verwendet. Das Feedback war insgesamt positiv.

    Ein Kommentar war, dass es zu viel sei, oben an 2 Stellen die Gliederung anzuzeigen. Der Kommentator mag wohl lieber „Standard PowerPoint“ und ist auch schon etwas älter ;-)

    @Jan: Ich persönlich finde das gesamte Paket (tex, beamer class, outlinebeamer script) eine gute Sache und danke dir für die Veröffentlichung des Projekts in deinem Blog.

  5. Jan
    2009-05-05 um 08:19 UTC

    @Christian: Vielen Dank für das Feedback, freut mich, dass ich nicht der einzige bin der das Tool nutzt. Das mit der Gliederung hängt vom verwendeten Beamer Class theme ab. Hier findet sich eine Übersicht von Themes. Das verwendete Theme kann man im Header einstellen, indem man den Namen statt „Warsaw“ in der Zeile \usepackage{beamerthemeWarsaw} einsetzt. Abhängig von der Struktur der Präsentation kann es sinnvoll sein, ein anderes Theme zu nehmen. Außerdem muss man, wenn man diese nicht nutzt, keine Subsection definieren. Wenn man also eh immer nur eine Subsection mit dem gleichen Namen wie die Section anlegt, kann man die Subsection-Zeile (eine Einrückung) einfach weglassen, dann lassen viele Themes die Subsection-Anzeige weg.

  6. Christian
    2009-05-05 um 14:06 UTC

    Ah danke, gut zu wissen.

    Da freue ich mich schon fast auf die nächste Präsentation :-)

  7. Boris
    2010-05-28 um 17:31 UTC

    Hallo Jan!

    Vielen Dank für Dein Programm!

    Habe das Skript verwendet, um ein Grundgerüst für die Präsentation zu erstellen, und kann sagen, es funktioniert auch auf dem Mac problemlos! Terminal auf und lostippen, keine zusätzlichen Pakete nötig, ist alles schon da.

    Hast du zufällig auch ein Skript für die umgekehrte Richtung? Z.B. habe ich gerade eine Fertige Präsentation, mit Format, die aber nicht gut ankommt. Es wäre viel leichter die Textdatei zu bearbeiten, als den Latex Code mit allen Formatierungen…

    Gruß, Boris

    • Jan
      2010-05-29 um 01:39 UTC

      Danke fürs Feedback.

      Eine Art „Decompiler“ sollte im Repo sein, ist aber extrem experimentell, völlig unfertig und eher dafür gedacht, ursprünglich mit diesem Tool erstellte und dann im LaTeX-Code bearbeitete Präsentationen wieder zurückzuübersetzen. Probieren kannst du es gerne, aber mach dir keine großen Hoffnungen. Beliebigen LaTeX-Code sauber in eine Outline umzuwandeln dürfte genug Stoff für mehrere Masterarbeiten liefern.

  1. No trackbacks yet.

Schreibe einen Kommentar

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

%d Bloggern gefällt das: