[Xy-pic] What are the default entry modifiers in xygraph, xymatrix,
and xymatrix@1?
Ross Moore
ross@ics.mq.edu.au
Sat, 24 Aug 2002 19:38:14 +1000 (EST)
Hi Alex,
> When you process
>
> \xymatrix{A \ar[r] & B}
>
> you discover that Xy-pic places nice margins around "A" and "B" so
> that the arrows do not get too close to the objects. Similarly, using
> \xygraph{...}, you get those same margins. If you instead use
Each use of + or - increments/decrements by the value stored in
the \objectmargin@ internal.
You can adjust this amount using \objectmargin=<dimen>
This applies at the kernel level, so also within \xygraph
and \xymatrix .
> \xymatrix@1{A \ar[r] & B} then the margins will be smaller.
This is using \everyentry@ , which can be adjusted
directly using \everyentry={....} to place (La)TeX code
as part of each cell.
^^^^^^^^^^
For @1 the code placed is: \vphantom( which effectively adds depth
to every uppercase and lowercase letter that doesn't have a natural
descender, and adds height to the shorter lowercase letters.
Does this explain the apparent extra margins that you observe ?
Note that there is also \entrymodifiers@ , which can be adjusted
directly using \entrymodifiers={....} , for specifying Xy-pic
modifiers for the contents of each cell (including the \everyentry@).
These two apply only within \xymatrix .
> Sometimes one wishes to build more complicated entries, which
> sometimes requires escaping to Xy-pic kernel code. But I would like
> to maintain the precise same margins as would have been used above!
> So my question is simply: what modifiers do the job?
\entrymodifiers= .... sets modifiers for all cells
\objectmargin=..... determines a unit-step for margins
\everyentry={....} adds content within the object for each cell.
All 3 do quite different things, though the resulting visual effect
may appear to be similar in some cases.
> In my experiments, it seems that the "+" modifier gives the same
> margins as \xymatrix and \xygraph, but I'm not certain. In other
> words, *+{A} seems to produce the same "A" as the code above does.
Yes; that should be the case.
> But in addition to getting confirmation, I wonder, what modifiers
> precisely mimic the behavior of \xymatrix@1{...}?
It's not modifiers. It is actual (invisible) content, using \vphantom.
>
> Thanks.
Hope this helps,
Ross
>
>
> __________________________________________________
> Do You Yahoo!?
> Yahoo! Finance - Get real-time stock quotes
> http://finance.yahoo.com
> _______________________________________________
> Xy-pic mailing list
> http://tug.org/mailman/listinfo/xy-pic