Beamer e MetaUML - não consigo ver nenhum diagrama

Beamer e MetaUML - não consigo ver nenhum diagrama

Na compilação, acabei de ver

insira a descrição da imagem aqui

Por que a classe não está visível? Aqui está o código:

\documentclass{beamer}
\usepackage[shellescape,latex]{gmp}
\usetheme{Montpellier}
\title{Something}
\date{\today}

\begin{document}

\frame{\titlepage}

\section[Outline]{}
\frame{\tableofcontents}

\section{something}
\subsection{Class Diagram}
\frame
{
\frametitle{Frame 1}
    \begin{figure}
        \centering
        \begin{mpost}[mpsettings=input metauml;]
            Usecase.U("Authenticate user",
            "by name, password");
            drawObject(U);        
        \end{mpost}
        \caption{Something}
    \end{figure}
}
\end{document}

Responder1

Na seção 5 da documentação gmpvocê encontra

\usempxclass [⟨options⟩] {⟨class⟩}
Isso tem a mesma sintaxe que \documentclass. Seu objetivo é declarar a classe utilizada para as execuções do TeX ou LaTeX para preparar os mpxarquivos que o METAPOST necessita para desenhar os rótulos de texto. Não deveria ser necessário alterá-lo do padrão (que é artigo). Mas se você estiver usando uma classe não padrão com um tamanho de tipo não padrão (ou seja, não com tamanho de 10, 11 ou 12 pontos), então você precisará declarar uma classe, caso contrário seus rótulos serão compostos em tipo de 10 pontos.

Na verdade, não testei o pacote com beamer. Mas se enquadra nesta categoria, então você pode resolver o problema afirmando

\usempxclass{article}

no preâmbulo.

\documentclass{beamer}
\usepackage[shellescape,latex]{gmp}
\usempxclass{article}

\usetheme{Montpellier}
\title{Something}
\date{\today}

\begin{document}

\frame{\titlepage}

\section[Outline]{}
\frame{\tableofcontents}

\section{something}
\subsection{Class Diagram}
\begin{frame}
\frametitle{Frame 1}
\begin{figure}
\centering
\begin{mpost}[mpsettings=input metauml]
  Usecase.U("Authenticate user",
   "by name, password");
   drawObject(U);        
\end{mpost}
\caption{Something}
\end{figure}
\end{frame}
\end{document}

insira a descrição da imagem aqui

Responder2

insira a descrição da imagem aqui

Você precisa usar

pdflatex -shell-escape   yourfile

para permitir o back-end do MP.

Aparentemente, também, beamervocê precisa definir o tamanho do ponto:

\documentclass{beamer}
\makeatletter
\def\@ptsize{10}
\makeatother
\usepackage[shellescape,latex]{gmp}
\usetheme{Montpellier}
\title{Something}
\date{\today}

\begin{document}

\frame{\titlepage}

\section[Outline]{}
\frame{\tableofcontents}

\section{something}
\subsection{Class Diagram}
\frame
{
\frametitle{Frame 1}
    \begin{figure}
        \centering
        \begin{mpost}[mpsettings=input metauml;]
            Usecase.U("Authenticate user",
            "by name, password");
            drawObject(U);        
        \end{mpost}
        \caption{Something}
    \end{figure}
}
\end{document}

informação relacionada