Verwenden von \multispan im Klartext, um einem Array eine Überschrift zu geben

Verwenden von \multispan im Klartext, um einem Array eine Überschrift zu geben

Ich versuche, einen Code zu ändern, den WeBWorK verwendet, um PDF-Ausdrucke der Online-Matheaufgaben von Studenten zu erstellen. Mein Ziel ist es, die Zugänglichkeit von WeBWorK zu verbessern.

Meine Aufgabe besteht derzeit darin, Tabellen mit Überschriften zu versehen. Derzeit werden Tabellen wie die erste im folgenden MWE erstellt. Ich habe viele Dinge ausprobiert, um eine Überschrift gut einzufügen, und die zweite Tabelle zeigt das Beste, was ich erreichen konnte.

Bildbeschreibung hier eingeben

Das Problem sehe ich in der dritten Tabelle. Der einzige Unterschied besteht darin, dass die Überschrift länger ist als die Summe der Breite der nachfolgenden Spalten. In diesem Fall ist die Überschrift nicht zentriert. Außerdem wäre es besser, die Spalten genauso getrennt zu lassen wie in den ersten beiden Tabellen.

Ich müsste bei einfachem Tex bleiben. Gibt es eine Universallösung für mein Problem?

\batchmode
\documentclass{amsart}


\begin{document}


\par\medskip\centerline{\kern 1pt\vbox{\halign{#\hfil&&\kern 1em #\hfil\cr
\hfil \(x\)&\hfil \(y\)\cr
\hfil \mbox{\parbox[t]{4ex}{\hrulefill}}&\hfil \mbox{\parbox[t]{4ex}{\hrulefill}}\cr
\hfil \mbox{\parbox[t]{4ex}{\hrulefill}}&\hfil \mbox{\parbox[t]{4ex}{\hrulefill}}\cr}}\kern 0pt}\medskip

%----------------------------

\par\medskip\centerline{\kern 1pt\vbox{\halign{#\hfil&&\kern 1em #\hfil\cr
\omit\hfil\multispan2{caption}\hfil\cr
\hfil \(x\)&\hfil \(y\)\cr
\hfil \mbox{\parbox[t]{4ex}{\hrulefill}}&\hfil \mbox{\parbox[t]{4ex}{\hrulefill}}\cr
\hfil \mbox{\parbox[t]{4ex}{\hrulefill}}&\hfil \mbox{\parbox[t]{4ex}{\hrulefill}}\cr}}\kern 0pt}\medskip

%----------------------------

\par\medskip\centerline{\kern 1pt\vbox{\halign{#\hfil&&\kern 1em #\hfil\cr
\omit\hfil\multispan2{caption that is very long}\hfil\cr
\hfil \(x\)&\hfil \(y\)\cr
\hfil \mbox{\parbox[t]{4ex}{\hrulefill}}&\hfil \mbox{\parbox[t]{4ex}{\hrulefill}}\cr
\hfil \mbox{\parbox[t]{4ex}{\hrulefill}}&\hfil \mbox{\parbox[t]{4ex}{\hrulefill}}\cr}}\kern 0pt}\medskip


\end{document}

Antwort1

Ich verstehe nicht, welchen Vorteil Sie sich dadurch verschaffen wollen. Ich verstehe nicht, warum die \halignVorlagen so angegeben sind.

Ihr \omit\hfil\multispanFehler ist falsch, aber \hidewidthes ist das, wonach Sie suchen.

\documentclass{amsart}


\begin{document}


\centerline{%
  \vbox{
    \halign{%
      #\hfil&&\kern 1em #\hfil\cr
      \hfil \(x\)&\hfil \(y\)\cr
      \hfil \parbox[t]{4ex}{\hrulefill}&\hfil \parbox[t]{4ex}{\hrulefill}\cr
      \hfil \parbox[t]{4ex}{\hrulefill}&\hfil \parbox[t]{4ex}{\hrulefill}\cr
    }
  }%
}

\bigskip

\centerline{%
  \vbox{
    \halign{%
      #\hfil&&\kern 1em #\hfil\cr
      \multispan2\hidewidth caption\hidewidth\cr
      \hfil \(x\)&\hfil \(y\)\cr
      \hfil \parbox[t]{4ex}{\hrulefill}&\hfil \parbox[t]{4ex}{\hrulefill}\cr
      \hfil \parbox[t]{4ex}{\hrulefill}&\hfil \parbox[t]{4ex}{\hrulefill}\cr
    }
  }%
}

\bigskip

\centerline{%
  \vbox{
    \halign{%
      #\hfil&&\kern 1em #\hfil\cr
      \multispan{2}\hidewidth caption that is very long\hidewidth\cr
      \hfil \(x\)&\hfil \(y\)\cr
      \hfil \parbox[t]{4ex}{\hrulefill}&\hfil \parbox[t]{4ex}{\hrulefill}\cr
      \hfil \parbox[t]{4ex}{\hrulefill}&\hfil \parbox[t]{4ex}{\hrulefill}\cr
    }
  }%
}


\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen