![如何创建一个用于组合图形和表格的框?](https://linux22.com/image/465689/%E5%A6%82%E4%BD%95%E5%88%9B%E5%BB%BA%E4%B8%80%E4%B8%AA%E7%94%A8%E4%BA%8E%E7%BB%84%E5%90%88%E5%9B%BE%E5%BD%A2%E5%92%8C%E8%A1%A8%E6%A0%BC%E7%9A%84%E6%A1%86%EF%BC%9F.png)
如何创建一个用于组合图形和表格的框?
\documentclass[paper=b5]{scrartcl}
\usepackage{tabularray}
\usepackage{graphicx}
\newsavebox\SomeNumbers
\sbox\SomeNumbers{\begin{tblr}{hlines, vlines}1 & 2 & 3\end{tblr} \\
\vspace{1cm}
\includegraphics[]{example-image-a} }
\begin{document}
\begin{tblr}{colspec={X[l, h]X[l, h]} , hlines, vlines}
{Fill \\ some \\ more \\ boxes} & \usebox\SomeNumbers
\end{tblr}
\end{document}
代码改编自这。这是上面代码的输出:
然而,我期望输出应该是这样的:
答案1
如果您\usebox\SomeNumbers
在 之外tblr
,您会发现您仍然会得到不想要的输出。问题是 TeX 将所有内容都置于水平模式。我们可以通过将内容放入\parbox
具有适当对齐方式的 中来解决这个问题。(而且\vspace
发生得太晚了,所以你可以把它换成\\[1cm]
。)尽管存在 github 问题,你仍然可以将 parbox 放入tlbr
。
\documentclass[paper=b5]{scrartcl}
\usepackage{tabularray}
\usepackage{graphicx}
\newsavebox\SomeNumbers
\sbox\SomeNumbers{\parbox[t]{2in}{\begin{tblr}{hlines, vlines}1 & 2 & 3\end{tblr} \\[1cm]
\includegraphics[width=1.5in]{example-image-a}}}
\begin{document}
\begin{tblr}{colspec={X[l, h]X[l, h]} , hlines, vlines}
{Fill \\ some \\ more \\ boxes} & \usebox\SomeNumbers
\end{tblr}
\begin{tblr}{colspec={X[l, h]X[l, h]} , hlines, vlines}
{Fill \\ some \\ more \\ boxes} &
\parbox[t]{1.7in}{\begin{tblr}{hlines, vlines}1 & 2 & 3\end{tblr} \\[1cm]
\includegraphics[width=1.5in]{example-image-a}}
\end{tblr}
\end{document}