Hallo, ich bastle gerade mit xsim, um folgendes zu erreichen: Es gibt eine Collection mit beliebig vielen Fragen, aus denen dann zurfällig 10 ausgewählt und gedruckt werden. Zu jeder Frage soll es eine leere Antwortbox über die gesamte Textbreite geben, wobei die Höhe variabel ist. Bisher habe ich: \documentclass{article} \usepackage{xsim} \DeclareExerciseCollection{coll1} \newcommand{\mybox}{% \begin{center}% \setlength{\fboxsep}{1pt}% \fbox{\parbox[t][4cm][t]{\textwidth}{\hfill}}% \end{center}% } \begin{document} \collectexercises{coll1} \begin{exercise} Question 1. \mybox \end{exercise} \begin{exercise} Question 2. \end{exercise} \begin{exercise} Question 3. \end{exercise} \collectexercisesstop{coll1} \printrandomexercises[sort=false, collection=coll1]{2} \end{document} Ich war aber unsicher, ob die Antwortbox zu exercise oder besser zu solution gehört. Wenn ich sie in solution schreibe, habe ich auch die Überschrift "Solution" anschließend, was ich aber nicht will. Es soll alles recht kompakt werden für einen kurzen Test. Meine bisherige "Lösung" klappt aber so gar nicht, da mybox nicht unter der ersten Frage platziert wird sondern am Ende der gedruckten 2 Fragen, das ist also Quatsch. Kann jemand helfen? Ist meine Box überhaupt ok so, oder gibt es xsim-Boardmittel, die ich hätte verwenden sollen? gefragt 02 Jul '19, 12:58 RungeZipperer |
Ich kenne mich mit dem Paket Deine Box ist noch etwas zu breit. Von \newcommand{\mybox}[1]{% \begin{center}% \fbox{\parbox[t][#1][t]{\dimexpr\linewidth-2\fboxsep-2\fboxrule\relax}{\hfill}}% \end{center}% } Was die Zuordnung der Box zur Frage betrifft, bist Du vermutlich einem Irrtum aufgesessen. Die Box taucht mit Deinem Code nur dann "nach" den zwei zufällig gewählten Fragen auf, wenn die zweite, diejenige ist, die die Box auch enthält. Direkt über der Box steht also in jedem Fall Question 1. Beachte, dass Du in Deinem Code Damit das besser sichtbar wird, verwende ich mal etwas farbigen Text: \documentclass{article} \usepackage{xcolor} \usepackage{xsim} \DeclareExerciseCollection{coll1} \newcommand{\mybox}[1]{% \begin{center}% \fbox{\parbox[t][#1][t]{\dimexpr\linewidth-2\fboxsep-2\fboxrule\relax}{\hfill}}% \end{center}% } \begin{document} \collectexercises{coll1} \begin{exercise} \textcolor{red}{Question 1.} \mybox{4cm} \end{exercise} \begin{exercise} \textcolor{green!50!black}{Question 2.} \end{exercise} \begin{exercise} \textcolor{green!50!black}{Question 3.} \end{exercise} \collectexercisesstop{coll1} \printrandomexercises[sort=false, collection=coll1]{2} \end{document} Ein mögliches Ergebnis ist Beachte, dass sich die zunächst zufällige Auswahl bei wiederholtem Kompilieren nicht ändert. Möchte man eine neue Auswahl treffen lassen, muss man vorher die Ein weiteres mögliches Ergebnis ist beantwortet 02 Jul '19, 16:29 esdd Ah, danke, das hilft schon sehr! Natürlich hab ich das sort=false bewusst eingefügt, aber dann die Konsequenzen nicht beachtet. Jetzt wäre eigentlich nur noch die Frage, ob ich in "mybox" auch etwas reinschreiben kann bzw. eine Abbildung reinladen kann. Also z. B. wird es so sein, dass bei einigen Fragen ein Koordinatensystem vorgegeben wird, das ich vermutlich mit Inkscape erstellen werde.
(03 Jul '19, 13:30)
RungeZipperer
|