2011/12/8 Zdenek Wagner <[email protected]>: > No, I do not agree. I can only agree that the LaTeX user > documentatioin is incomplete. ... > Without knowledge of the > modes you cannot understand why the table behaves differently in the > footnote. It is documented in the TeXbook.
Then if that is the current state of the platform, as a LaTeX/XeLaTeX user it is not reasonable for me to make the demands on the system such as I originally sought (e.g. keeping text completely within the text area); that is, absolute precision is beyond the reach of one who only codes at the LaTeX/XeLaTeX level, and is only within the reach of one who codes at the TeX level. This is not a complaint, it is only an observation. I actually have a copy of the TeX Book, I just need to open it. ^___^ Thank you for the clarification, Dan 2011/12/8 Zdenek Wagner <[email protected]>: > 2011/12/8 Daniel Greenhoe <[email protected]>: >> Hello Heiko, >> ... >> In my mind (and maybe in my mind only) if I code something (e.g. a >> tabular in a footnote) in accordance with documented syntax and then >> the result of that code violates a parameter (e.g. a lower text area >> boundary) defined in the same documentation, then that by definition >> is a bug. Secondly, if a 32 line section of code is required to >> prevent my correctly coded (as defined by documented syntax) code from >> violating such a parameter, then such a violation is by definition a >> bug and the 32 lines of additional code is by definition a "patch". >> > No, I do not agree. I can only agree that the LaTeX user > documentatioin is incomplete. Consider the expression "my text". You > would certainly be disapointed if the word "text" were verticaly > aligned so that its baseline matched with the bottom of "y". That's > why boxes have height and depth and are aligned to baselines, not to > bottom. The truth is that the documentation of tabular is incomplete. > It does not say that it has zero width and the whole table extends > below baseline. Thus in your original sample file you aske LaTeX to > put the table below the baseline and LaTeX did exactly what you asked > for. Incomplete documentation is unfortunately a feature of LaTeX. > Normal users do not know that \vspace is expanded to \vskip in the > vertical mode but to \vadjust{...} in the horizontal mode and the > starred variant is esentially \vglue. I am afraid that the LaTeX > documentation does not even mention the 5 modes so that the vertical > and horizontal modes may be strange for you. Without knowledge of the > modes you cannot understand why the table behaves differently in the > footnote. It is documented in the TeXbook. > >> Having said that, let me make these additional comments: >> 1. I am embarrassed by my own lack of knowledge with respect to TeX coding. >> 2. I realize that I take a lot from this email list but contribute >> nothing or next to nothing >> 3. I very much appreciate all the help that I have and do receive >> from this mailing list >> 4. I know that beggars can't be choosers. >> 5. TeX and it's derivatives has to be one of the greatest >> developments of all time --- like unto the Gutenberg Press --- many >> many thanks to everyone who has and continues to work so hard to >> develop it. >> >> Dan >> >> >> On Wed, Dec 7, 2011 at 7:51 AM, Heiko Oberdiek >> <[email protected]> wrote: >>> On Wed, Dec 07, 2011 at 06:30:39AM +0800, Daniel Greenhoe wrote: >>> >>>> On Wed, Dec 7, 2011 at 5:46 AM, Heiko Oberdiek >>>> <[email protected]> wrote: >>>> > You have to compile twice at least. >>>> >>>> I compiled at least 8 times using "xelatex Heiko.tex". I still get the >>>> same error: the text extends below the text area (see attachment). You >>>> don't get this result on your system? >>> >>> And I had written: >>> >>> | The following example addresses calculates the shift to align >>> | the baseline of the footnote line with the first line of >>> | the tabular. No time for looking at the problem with the overfull \vbox. >>> >>> I have seen two problems with your example and one of them solved, >>> the other remained unsolved. No more, no less. >>> >>> Taking more time, I see now, that the overfull \vbox is caused >>> by something different: The header is set to zero (see options >>> for geometry), but the page number is printed causing the >>> overfull \vbox. Changing the options of geometry or \pagestyle{empty} >>> solves the problem. >>> >>> The exceeding part of the second footnote text is correct behaviour: >>> TeX tries to align the top and bottom lines of a page in order to >>> get the baselines at the same position: >>> * At the top vertical space is added up to \topskip unless >>> the height of the first element is larger than \topskip. >>> * At the bottom the bottom element might have a depth up to >>> \maxdepth. The default for \maxdepth with \documentclass[12pt]{book} >>> is .5\topskip = 8pt. \maxdepth=0pt doesn't allow the bottom element >>> to exceed the textarea. Aligning the last line of the tabular with the >>> bottom of the textarea is much more tricky. >>> >>> The following assumes that the last line of the tabular contains >>> normal text without large depths: >>> >>> \documentclass[12pt]{book} >>> \usepackage{array} >>> \usepackage[ >>> a4paper,noheadfoot,nomarginpar,margin=20mm,showframe >>> ]{geometry} >>> \usepackage{zref-savepos} >>> \pagestyle{empty} >>> >>> %\maxdepth=0pt >>> >>> \makeatletter >>> \newsavebox\tl@box >>> \newcount\c@tlcount >>> \setcounter{tlcount}{0} >>> \def\thetlcount{\the\c@tlcount} >>> \newenvironment*{tltabular}[1]{% >>> \stepcounter{tlcount}% >>> \begin{lrbox}{\tl@box}% >>> \begin{tabular}[t]{|#1|}% >>> \hline >>> \zref@savepos >>> \zref@labelbyprops{tl@b\thetlcount}{posy}% >>> \xdef\g@dp@arstrutbox{% >>> \the\dimexpr\dp\@arstrutbox+\arrayrulewidth >>> }% >>> \ignorespaces >>> }{% >>> \hline >>> \end{tabular}% >>> \end{lrbox}% >>> \zref@refused{tl@a\thetlcount}% >>> \zref@refused{tl@b\thetlcount}% >>> \dimen@=\dimexpr >>> \zposy{tl@a\thetlcount}sp-\zposy{tl@b\thetlcount}sp% >>> \relax >>> \raisebox{\dimen@}{% >>> \zref@savepos >>> \zref@labelbyprops{tl@a\thetlcount}{posy}% >>> \box\tl@box >>> }\\*[-\g@dp@arstrutbox]% >>> \hbox{\vrule width 0pt depth\g@dp@arstrutbox}% >>> } >>> >>> \begin{document}% >>> xyz\footnote{% >>> \begin{tltabular}{l} >>> abc\\ >>> def\\ >>> ghj\\ >>> klm\\ >>> \end{tltabular}%\\ >>> } >>> xyz\footnote{% >>> \begin{tltabular}{l} >>> abc\\ >>> def\\ >>> ghj\\ >>> klm\\ >>> \end{tltabular}%\\ >>> } >>> \end{document}% >>> >>> Yours sincerely >>> Heiko Oberdiek >>> >>> >>> -------------------------------------------------- >>> Subscriptions, Archive, and List information, etc.: >>> http://tug.org/mailman/listinfo/xetex >> >> >> >> -------------------------------------------------- >> Subscriptions, Archive, and List information, etc.: >> http://tug.org/mailman/listinfo/xetex >> > > > > -- > Zdeněk Wagner > http://hroch486.icpf.cas.cz/wagner/ > http://icebearsoft.euweb.cz > > > > -------------------------------------------------- > Subscriptions, Archive, and List information, etc.: > http://tug.org/mailman/listinfo/xetex -------------------------------------------------- Subscriptions, Archive, and List information, etc.: http://tug.org/mailman/listinfo/xetex
