Anzeige:
Ergebnis 1 bis 7 von 7

Thema: Beamer-Klasse und Floating-Umgebungen

  1. #1
    Registrierter Benutzer
    Registriert seit
    21.08.2008
    Beiträge
    36

    Beamer-Klasse und Floating-Umgebungen

    Hallo,

    nachdem ich erfolgreich Codesamples in meine Ausarbeitung eingebunden habe, ist es nun an der Zeit, diese auch für eine Präsentation vorzubereiten. Dazu habe ich die Beamer-Klasse verwendet. Leider bekomme ich beim Kompilieren die Fehlermeldung:

    ! LaTeX Error: Not in outer par mode.
    Code:
    \frame
    {
    	\frametitle{Der Shadercode}
    	\framesubtitle{}
    
    	\begin{codeSample}[h]
    	\end{codeSample}
    }
    Selbst wenn ich noch nichts einbinde.

    Ich habe das Paket float eingebunden:

    Code:
    \usepackage{float}
    Die Umgebung codeSample habe ich wie folgt definiert:

    Code:
    \newfloat{codeSample}{htbp}{lol}[section]
    \floatname{codeSample}{Listing}
    \renewcommand{\thecodeSample}{\thesection.\arabic{codeSample}}
    Wo liegt der Fehler? Existiert vielleicht die section nicht?

  2. #2
    Registrierter Benutzer Avatar von mechanicus
    Registriert seit
    10.07.2008
    Ort
    Hamburg
    Beiträge
    3.944
    Hallo,

    wieso willst du auf einer Folie was gleiten lassen? Wie sieht denn dein Code aus - genügt die verbatim-Umgebung bzw listings nicht?

    Gruß
    Marco

  3. #3
    Registrierter Benutzer
    Registriert seit
    21.08.2008
    Beiträge
    36

    Highlight Code Converter

    Ich verwende den Highlight Code Converter (http://www.andre-simon.de/doku/highl...highlight.html), um den Code schöner aussehen zu lassen.

    Bisher habe ich Code immer auf diese Art und Weise eingebunden:

    Code:
            \begin{codeSample}[h]
            \centering
            \fcolorbox{black}{bgcolor}
            {
            	\begin{minipage}{\linewidth}\scriptsize
            	\changefont{cmtt}{m}{n}
            	\input{sourceCode/datei.xml}
            	\end{minipage}
            }
            \end{codeSample}
    Mit dem listings-Paket ist die Schriftart viel zu groß und ich habe noch kein Syntax Highlighting. Es wäre schön, wenn das wie gehabt gehen würde.

  4. #4
    Registrierter Benutzer Avatar von mechanicus
    Registriert seit
    10.07.2008
    Ort
    Hamburg
    Beiträge
    3.944
    Hallo,

    sorry, mit Code meinte ich ein komplettes Minimalbeispiel.

    Gruß
    Marco

  5. #5
    Registrierter Benutzer
    Registriert seit
    21.08.2008
    Beiträge
    36

    Minimalbeispiel, welches nicht kompiliert

    Code:
    \documentclass{beamer}
    
    \usepackage[ansinew]{inputenc}
    \usepackage{float}
    \usepackage{beamerthemesplit}
    \usepackage{listings}
    
    \usecolortheme{seahorse}
    
    \newfloat{codeSample}{htbp}{lol}[section]
    \floatname{codeSample}{Listing}
    
    \begin{document}
    
    \frame
    {
    	\frametitle{Das Minimalbeispiel}
    	\framesubtitle{Das Minimalbeispiel - Untertitel}
    
    	\begin{codeSample}[h]
    	\centering
    	\fcolorbox{black}{bgcolor}
    	{
    		\begin{minipage}{\linewidth}\scriptsize
    		\changefont{cmtt}{m}{n}
    		\input{sourceCode/meineDatei.xml}
    		\end{minipage}
    	}
    	\caption{Eine Caption zu meiner Datei}
    	\label{codeSample:EineCaptionZuMeinerDatei}
    	\end{codeSample}
    }
    
    \end{document}
    ! LaTeX Error: Not in outer par mode.

  6. #6
    Registrierter Benutzer Avatar von sommerfee
    Registriert seit
    02.07.2006
    Beiträge
    1.603
    Die beamer-Dokumentenklasse unterstützt keine Gleitumgebungen. "figure" und "table" sind zwar definiert, gleiten aber dort nicht und ignorieren den optionalen Parameter.

    Dementsprechend funktioniert das float-Paket (oder die Neudefinition von Gleitumgebungen mit Hilfe von anderen Paketen) nicht.

    Wenn man wirklich mehr als "figure" und "table" unter beamer braucht, und es nicht reicht einen der Prosa-Namen der beiden umzubenennen (z.B. "Abbildung" => "listing"), dann müsste man sich den passenden Code aus der beamer-Klasse anschauen und die eigenen Umgebungen analog dazu selber definieren.

    Liebe Grüße,
    Axel

  7. #7
    Registrierter Benutzer
    Registriert seit
    21.08.2008
    Beiträge
    36

    Listings

    Vielen Dank für die Antwort. Ich habe es jetzt zähneknirschend mit dem listings-Paket gelöst. Zähneknirschend deshalb, weil listings kein CG (C for graphics) Syntax-Highlighting unterstützt. Ist wahrscheinlich dann doch etwas speziell. Zumindest wird es in http://www.pvv.ntnu.no/~berland/latex/docs/listings.pdf nicht aufgeführt. Naja, C++ kommt schon nah ran.

    Code:
    \lstloadlanguages{C++}
    \lstset{%
        language=C++,
        showstringspaces=false,
        basicstyle=\ttfamily\tiny,
        keywordstyle=\color{blue},
        commentstyle=\color{green},
        stringstyle=\color{red}
    }%
    Code:
            \frame
            {
            	\frametitle{Der Shadercode}
            	\framesubtitle{Teil 1}
    
            	\lstinputlisting{sourceCode/meinShader.cg}
            }

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •