プレーンテキストで \multispan を使用して配列にキャプションを付ける

プレーンテキストで \multispan を使用して配列にキャプションを付ける

私は、WeBWorK が学生のオンライン数学課題の PDF ハードコピーを生成するために使用するコードの一部を変更しようとしています。私の目的は、WeBWorK のアクセシビリティを向上させることです。

現時点での私の仕事は、表にキャプションを付けることです。現在、表は下の mwe の最初の表のように作成されています。キャプションをうまく挿入するためにさまざまなことを試しましたが、2 番目の表は私が作成できた最高の結果を示しています。

ここに画像の説明を入力してください

問題は、3 番目の表で見られるもので、唯一の違いは、後続の列幅の合計よりも長いキャプションがあることです。この場合、キャプションは中央に配置されません。また、最初の 2 つの表と同じように、列を離しておく方がよいでしょう。

プレーン テックスに固執する必要があります。私の問題に万能の解決策はありますか?

\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}

答え1

\halignこの方法でどのような利益を得ようとしているのか理解できません。テンプレートがそのように指定されている理由も理解できません。

あなたのは\omit\hfil\multispan間違っています、そして\hidewidthそれはあなたが探しているものです。

\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}

ここに画像の説明を入力してください

関連情報