[Xy-pic] Modifying one dimension of a box

Michael Abbott michael@araneidae.co.uk
Sat, 19 Oct 2002 17:01:32 +0000 (GMT)


I cannot figure out how to do the following.  I wish to increase the
depth, but only the depth, of a box to match the depth of another box.


\documentclass{article}
\usepackage[matrix,all]{xy}
\newcommand{\male}{*=<3ex>[F-]{ }}
\newcommand{\female}{*=<4ex>[o][F-]{}}
\newcommand{\who}[2]{%
    \save+D*++!U{\parbox{1in}{\centering#1\\%
    \footnotesize\textsc{#2}}}\restore}

\begin{document}
\xymatrix{
\male\who{Male\\Name}{dob} &
\female\who{Female\\Name}{dob}}
\end{document}


Notice how the male and female names do *not* line up vertically.  This is
because the male symbol is smaller than the female one, which given their
shapes is visually correct.
    Apart from having separate \whom and \whof macros (which I'm going to
have to do, but which is very nasty), I cannot find a way to fix this.
My best idea was to stretch the lower extent of the male symbol, but I
can't figure out how to do this (the xymatrix context makes life harder,
also).
    Note that the sides and top must be left as framed so that
geanealogical lines to the side and the top meet the symbol correctly.