1

I try to use metapost code inside LaTeX, and I only receive MP Icon insted of dediecated picture:

example of code which I want to produce:

\documentclass[]{article}
\usepackage[T1]{fontenc}
\usepackage[polish]{babel}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\selectlanguage{polish}
\usepackage{indentfirst}
\usepackage[shellescape, latex]{gmp}
\gmpoptions{everymp={input expressg;}}
\usepackage{amsmath}

\usepackage[top = 2.50cm, bottom = 2.50cm, left = 2.50cm, right = 2.50cm]{geometry}

%opening \title{Pole wielokąta. (nr 69, str. 30)} \author{Adam Kasprzak}

\begin{document}

%\maketitle

\section{Treść} Dane są dwa współśrodkowe okręgi o promieniach $r=/sgrt{3}$ cm i $R=2$ cm. Pewien wielokąt jest opisany na okręgu o promieniu $r$ i jest wpisany w okrąg o promieniu $R$. Znajdź pole tego wielokąta.

\begin{figure}[htp]

\centering

\begin{mpost}

    z0 = origin;

    drawroundedbox(0, 2.5cm, 3cm, 5mm)();

\end{mpost}

\end{figure}

blablabla

\end{document}

allways the same result: enter image description here

2 Answers2

2

You need

  1. to run pdflatex with the -shell-escape command line option;

  2. to put something inside the box, even nothing to print, but btex...etex is necessary.

\documentclass[]{article}
\usepackage[T1]{fontenc}
\usepackage[polish]{babel}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\selectlanguage{polish}
\usepackage{indentfirst}
\usepackage[shellescape, latex]{gmp}
\gmpoptions{everymp={input expressg;}}
\usepackage{amsmath}

\usepackage[top = 2.50cm, bottom = 2.50cm, left = 2.50cm, right = 2.50cm]{geometry}

%opening \title{Pole wielokąta. (nr 69, str. 30)} \author{Adam Kasprzak}

\begin{document}

%\maketitle

\section{Treść} Dane są dwa współśrodkowe okręgi o promieniach $r=\sqrt{3}$ cm i $R=2$ cm. Pewien wielokąt jest opisany na okręgu o promieniu $r$ i jest wpisany w okrąg o promieniu $R$. Znajdź pole tego wielokąta.

\begin{figure}[htp] \centering

\begin{mpost} z0 = origin; drawroundedbox(0, 2.5cm, 3cm, 5mm)(btex etex); \end{mpost}

\end{figure}

blablabla

\end{document}

enter image description here

egreg
  • 1,121,712
0

Alternatively you can do the whole of this with lualatex using the luamplib package, which is a bit more modern, and avoids mucking about with shell escape.

Here is the OP script updated for luamplib:

\documentclass{article}
\usepackage[polish]{babel}
\selectlanguage{polish}
\usepackage{indentfirst}
\usepackage{luamplib}
\mplibtextextlabel{enable}
\everymplib{input expressg beginfig(0);}\everyendmplib{endfig;}
\usepackage{amsmath}
\usepackage[top = 2.50cm, bottom = 2.50cm, left = 2.50cm, right = 2.50cm]{geometry}
%opening
\title{Pole wielokąta. (nr 69, str. 30)}
\author{Adam Kasprzak}
\begin{document}
%\maketitle
\section{Treść}

Dane są dwa współśrodkowe okręgi o promieniach $r=\sqrt{3}$ cm i $R=2$ cm. Pewien wielokąt jest opisany na okręgu o promieniu $r$ i jest wpisany w okrąg o promieniu $R$. Znajdź pole tego wielokąta.

\begin{figure}[htp] \centering \begin{mplibcode} z0 = origin; drawroundedbox(0, 2.5cm, 3cm, 5mm)("Witaj $e=mc^2$") \end{mplibcode} \end{figure}

blablabla

\end{document}

Compile this with lualatex to get this:

enter image description here

Thruston
  • 42,268