LaTeX で `tabularray` を使用して、幅がテキスト幅よりも大きい表を中央揃えにできますか?

LaTeX で `tabularray` を使用して、幅がテキスト幅よりも大きい表を中央揃えにできますか?

幅がテキストの幅よりも広い表を作成したため、表が紙の右側に配置されてしまいました。中央に移動するにはどうすればよいでしょうか? たとえば、次のようになります。

\documentclass{article}
\usepackage{tabularray}
\usepackage{tabularx}
\begin{document}
\begin{table}
\begin{talltblr}[caption={hello}]{
        colspec={X[c]},width=3cm+\textwidth
    }
    \hline
    hello
\end{talltblr}
\end{table}
\end{document}

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

答え1

scrextendオファーパッケージと同様の機能changepage。マクロ付き

\begin{adjustwidth}{left margin}{right margin}

または

\begin{adjustwidth*}{}{outer margin}

テキストの余白をローカルに変更します。詳細な説明はパッケージのドキュメントに記載されています。あなたの場合、MWE を次のように変更する必要があります:

\documentclass{article}
\usepackage{tabularray}
\usepackage[strict]{changepage}

\usepackage{lipsum}

\begin{document}
\lipsum[66]
    \begin{table}[ht]
\begin{adjustwidth}{-15mm}{-15mm}
\begin{talltblr}[
caption = {hello},
  label = {tab:??}]{hlines, vlines, % that width of table is clearly seen
                 colspec={X[c]}
                }
    Hello world!
\end{talltblr}
\end{adjustwidth}
    \end{table}
\lipsum[66]
\end{document}

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

答え2

\centerline{material}例から を使用します:

\centerline{%
   \begin{talltblr}[caption={hello}]{
           colspec={X[c]},width=3cm+\textwidth
       }
       \hline
       hello
   \end{talltblr}%
}

答え3

\makeboxそれを次のように入れます[c]:

\documentclass{article}
\usepackage{tabularray}
\usepackage{tabularx}
\begin{document}
\begin{table}
\makebox[\textwidth][c]{\begin{talltblr}[caption={hello}]{
        colspec={X[c]},width=3cm+\textwidth
    }
    \hline
    hello
\end{talltblr}}
\end{table}
\end{document}

注記:これは、ページの境界を越えないコンテンツでのみ可能です。たとえば、 では不可能ですlongtblr

答え4

次のコードを使用して、テーブルの余白を変更してみてください。

\documentclass{article}
\usepackage{scrextend}
\usepackage{,showframe,lipsum}% for demo only!
\begin{document}
    \lipsum[1]\\
    
    \begin{addmargin}[-1.5cm]{-1.5cm}% 1.5cm left, 1.5cm right
                
            \lipsum[2]\\
            
    \end{addmargin}
    \lipsum[1]
    \begin{addmargin}[1em]{2em}% 1em left, 2em right
        \lipsum[2]\\
        
        \lipsum[3]\\
    \end{addmargin}

    \lipsum[3]
\end{document}

テーブルをここに配置できます:

        \begin{addmargin}[-1.5cm]{-1.5cm}% 1.5cm left, 1.5cm right
                    
                \lipsum[2]\\
                
        \end{addmargin}

編集:

\documentclass{article}
\usepackage{tabularray}
\usepackage[strict]{changepage}

\usepackage{lipsum}

\begin{document}
    \lipsum[66]
    \begin{table}[ht]
        \begin{adjustwidth}{-15mm}{-15mm}
            \begin{talltblr}[
                caption = {hello},
                label = {tab:hello}]{hlines, colspec={X[l]}
                }
                \lipsum[1-2]
            \end{talltblr}
        \end{adjustwidth}
    \end{table}\\
    See the table \ref{tab:hello}.\\
    \lipsum[66]
\end{document}

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

関連情報