Hi,
danke fuer den Tipp. Ich habe es jetzt folgendermassen hinbekommen.
Minimalbeispiel 3: Dies funktioniert, hier wird der Code per \lstinputlisting{datei} eingebunden.
Code:
\documentclass[11pt]{article}
\usepackage{amsmath, amsthm, amssymb}
\usepackage{listings}
\usepackage{pstricks} % pstricks zum malen
\usepackage{pst-node} % gehoert zu pstricks
\lstset{basicstyle=\small,escapechar=\&}
\newcommand{\sel}{\leftarrow}
\newcommand{\gen}[1]{\langle#1\rangle}
\newcommand{\card}[1]{\lvert#1\rvert}
\begin{document}
\begin{figure}[h]
\centering
%\hspace{1.5cm}
\begin{psmatrix}[mnode=r,colsep=0.8,rowsep=0.4]
[name=game1] \psshadowbox{
\lstinputlisting{test.lst}
}
&
[name=game2] \psshadowbox{
\lstinputlisting{test2.lst}
}
%Arrows
\ncline{->}{game1}{game2}
\end{psmatrix}
\caption{first transformation}
\label{first transformation}
\end{figure}
\end{document}
Wundert euch nicht ueber das hinzugekommene lstset und die 3 newcommand's, die brauche ich bei der Schilderung des nun auftretenden Folgeproblems
Wir kommen der Sache aber schon sehr viel naeher!
Solange als Text nur "test" oder "test2" in den *.lst Dateien steht, geht es genau, wie ich es mir vorgestellt habe. Wenn ich nun aber den "richtigen" Programmcode in diese Dateien schreibe, sind die psshadowboxes viel zu klein und der Text geht ueber den Rahmen hinaus
Nehmt das Minimalbeispiel 3 und als test.lst folgendes:
Code:
let (e, d) &$\sel$& :encGen ElGamal: &$1^n$&
(&$m_1$&, &$m_2$&, a) &$\sel$& :A: (&$1^n$&, e)
c &$\sel$& :encEnc ElGamal: (&$1^n$&, e, &$m_1$&)
in :A': (&$1^n$&, &$m_1$&, &$m_2$&, a, e, c)
und als test2.lst folgendes:
Code:
let x &$\sel$& fun(uniform, &$\card{\gen{g_n}}$&)
(e, d) &$\sel$& (&$g_n^x$&, x)
(&$m_1$&, &$m_2$&, a) &$\sel$& :A: (&$1^n$&, e)
y &$\sel$& fun(uniform, &$\card{\gen{g_n}}$&)
c &$\sel$& (&$g_n^y$&, &$m_1 \times e^y$&)
in :A': (&$1^n$&, &$m_1$&, &$m_2$&, a, e, c)
Wie ihr seht, macht LaTex zwar nun prinzipiell das richtige, aber die psshadowboxes werden viel zu klein dargestellt.
Wieso passiert das? Sollte die psshadowbox nicht automatisch die Groesse annehmen, die sie braucht? Wie koennte ich das nun beheben?
Danke schonmal fuer euer Interesse
Malte
Lesezeichen