当在 中使用 PsPicture 时tabular
,使用 将图片与顶部对齐可以正常工作,\raisebox{}
如表格 1 所示。我使用 在图片下方获得了额外的空间\vspace
。(有没有更好的方法???)
现在,我想将公式与左侧单元格内的底部对齐,而 PsPicture 位于右侧单元格。如表格 2、行 1 所示,它工作正常。但我打算\vspace
再次使用 在 PsPicture 上方添加一个小空间。不幸的是,底部的文本对齐不再起作用。我怎样才能获得图片上方所需的空间和将公式对齐到底部吗?
\documentclass[a4paper,DIV=15,oneside,12pt]{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{ragged2e}
\usepackage{graphicx}
\usepackage{array}
\usepackage{calc}
\usepackage{setspace}
\usepackage{pst-all}
\usepackage{auto-pst-pdf}
\newcolumntype{D}[1]{>{\Centering}p{#1}}
\begin{document}
\onehalfspacing
\begin{tabular}{|p{0.47\textwidth}|D{0.47\textwidth}|}
\hline
Formula &
\raisebox{-\height+0.5\baselineskip}{
\begin{pspicture}
\psframe(0,0,)(6,5)
\end{pspicture}}\vspace{0.1cm}\\\hline
\end{tabular}
\vspace{\baselineskip}
\begin{tabular}{|b{0.47\textwidth}|D{0.47\textwidth}|}
\hline
Formula &
\begin{pspicture}
\psframe(0,0,)(6,5)
\end{pspicture}\\\hline
Formula & \vspace*{0.1cm}
\begin{pspicture}
\psframe(0,0,)(6,5)
\end{pspicture}\\\hline
\end{tabular}
\end{document}
答案1
两种解决方案:
- 使用
booktabs
和no vertical rules
:booktabs 的规则周围有一些垂直(可调整)填充。表格看起来更专业; - 用来
\raisebox{0pt}[\dimexpr\height+some length]
欺骗 LaTeX,使其相信图形高度略大于其自然高度。
以下是两种解决方案的示例:
\documentclass[a4paper,DIV=15,oneside,12pt]{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{booktabs}
\usepackage{ragged2e}
\usepackage{graphicx}
\usepackage{array}
\usepackage{setspace}
\usepackage{pst-all}
\usepackage{auto-pst-pdf}
\newcolumntype{D}[1]{>{\Centering}p{#1}}
\begin{document}
\onehalfspacing
\begin{tabular}{b{0.47\textwidth}D{0.47\textwidth}}
\toprule
Formula &
\raisebox{0pt}[\dimexpr\height+5pt]{\begin{pspicture}
\psframe(0,0,)(6,5)
\end{pspicture}}\\\midrule
Formula &
\raisebox{0pt}[\dimexpr\height+5pt]{\begin{pspicture}
\psframe(0,0,)(6,5)
\end{pspicture}}\\\bottomrule
\end{tabular}
\vspace{\baselineskip}
\begin{tabular}{|b{0.47\textwidth}|D{0.47\textwidth}|}
\hline
Formula &
\raisebox{0pt}[\dimexpr\height+5pt]{\begin{pspicture}
\psframe(0,0,)(6,5)
\end{pspicture}}\\\hline
Formula &
\raisebox{0pt}[\dimexpr\height+5pt]{\begin{pspicture}
\psframe(0,0,)(6,5)
\end{pspicture}}\\\hline
\end{tabular}
\end{document}
答案2
使用坐标!如果您需要负坐标,则使用将其向上移动的pspicture
选项。shift
\documentclass[a4paper,DIV=15,oneside,12pt]{scrartcl}
\usepackage{booktabs}
\usepackage{ragged2e}
\usepackage{array}
\usepackage{pst-all}
\newcolumntype{D}[1]{>{\Centering}p{#1}}
\begin{document}
\begin{tabular}{b{0.47\textwidth}D{0.47\textwidth}}\toprule
Formula & \begin{pspicture}(6,5.1) \psframe(6,5)\end{pspicture}\\\midrule
Formula & \begin{pspicture}(6,5.1) \psframe(6,5)\end{pspicture}\\\bottomrule
\end{tabular}
\bigskip
\begin{tabular}{|b{0.47\textwidth}|D{0.47\textwidth}|}\hline
Formula & \begin{pspicture}(6,5.2)\psframe(6,5)\end{pspicture}\\\hline
Formula & \begin{pspicture}(6,5.2)\psframe(6,5)\end{pspicture}\\\hline
\end{tabular}
\end{document}