[英]LaTeX: vertical alignement in a table containing a listing
在LaTeX中,我使用listings
包來顯示表中的一些代碼片段。 但似乎在使用這個包時,細胞的垂直對齊正在發生變化。
這是一些代碼:
\documentclass[a4paper,11pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern,textcomp}
\usepackage[frenchb]{babel}
\usepackage{listings}
\begin{document}
\begin{tabular}{ll}
\hline Méthode & Exemple d'utilisation\\
\hline isLetter()&
\begin{lstlisting}
QChar MyChar('x');
bool IsLetter = MyChar.isLetter();
// IsLetter vaut vrai
// bla bla bla
\end{lstlisting}\\
\hline
\end{tabular}
\end{document}
這是我得到的(注意第一列的居中垂直對齊):
http://img820.imageshack.us/img820/8509/image4l.png 。
如果我避免在表格中使用listings
包,則垂直對齊是不同的(居中):
\begin{tabular}{lp{5cm}}
\hline Méthode & Exemple d'utilisation\\
\hline isLetter()&
QChar MyChar('x');
bool IsLetter = MyChar.isLetter();
// IsLetter vaut vrai
// bla bla bla
\\
\hline
\end{tabular}
http://img691.imageshack.us/img691/8585/image5gy.png 。
我想要的是將一些代碼放在表格中, 但保持垂直對齊為單元格的頂部。
通過選項boxpos
告訴latex使其在文本行的基線頂部對齊。
\begin{lstlisting}[boxpos=t]
QChar MyChar('x');
bool IsLetter = MyChar.isLetter();
// IsLetter vaut vrai
// bla bla bla
\end{lstlisting}
其他盒子也會出現問題
\parbox[t]{3cm}{Hello\\World\\Peace}
\parbox[t]{3cm}{Goodbye}
如果省略位置參數t
,它將使兩個框相對於彼此對齊。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.