[xep-support] baseline alignment problem

From: Chris Branch (chris_branch@fscreations.com)
Date: Mon Feb 17 2003 - 12:38:37 PST

  • Next message: David Tolpin: "Re: [xep-support] baseline alignment problem"

    I've recently started evaluating XEP for potential use in a project, and
    so far, it's been a very positive experience. However, I've run into
    one particular (seemingly simple) layout that I am unable to get XEP to
    render the way that I want. The PDF documents that I'll be generating
    consist of numbered lists; each numbered item will contain arbitrary
    content (mixed fonts/sizes, images, tables, etc.) Example:

    1. (arbitrary content for item #1)
    2. (arbitrary content for item #2).

    I'd like the numbers to be right justified and outdented. Example:

      1. content for item #1...content content content content
         content content content content
      2. content for item #2...content content content content
         content content content content
    123. content for item #123...content content content content
         content content content content

    To construct this document in Microsoft Word, I would set the first line
    indent to -.5" set a right tab stop at -.125", then type:

    Attempt #1:
    Since tab stops are not possible with XSL-FO, my first attempt was to
    use a two-column table. This gives me the desired layout, EXCEPT that
    the baselines in the first/second columns do not line up if the content
    in the second column contains mixed font sizes. If I read the XLS
    specification correctly, it looks like I should be able to solve this
    problem with:

            <fo:table-cell relative-align="baseline">

    but XEP apparently does not support relative-align (according to
    documentation on the RenderX website).

    Attempt #2
    Next, I tried using a <fo:list-block>, but this produces the same
    baseline alignment problem. Specifically, XEP does not adjust the
    baseline of <fo:list-item-label> to match the content in
    <fo:list-item-body>, so the end result is the same as the table example.

    The XSL spec doesn't seem to say much about vertical alignment for list
    item label vs. body, so I'm unsure whether the XEP behaviour is
    correct. If this *is* correct per XSL, it seems strange for the default
    alignment to be "top". Is this another case where "relative-align"
    might have solved my problem?

    Attempt #3
    As a last attempt, it seemed like I should be able to simulate the
    layout I want by using one or more <fo:inline> elements if I could
    specify an exact width for the inline element. Example:

    <fo:inline width=".5in" text-align="right">1.</fo:inline>content...

    However, XEP seems to ignore the 'width' attribute. Again, the XSL spec
    seems to suggest this should work, but I'm not 100% sure my
    interpretation is correct.

    Is there any way to accomplish the layout I want using XEP?

    (*) To unsubscribe, send a message with words 'unsubscribe xep-support'
    in the body of the message to majordomo@renderx.com from the address
    you are subscribed from.
    (*) By using the Service, you expressly agree to these Terms of Service http://www.renderx.com/tos.html

    This archive was generated by hypermail 2.1.5 : Mon Feb 17 2003 - 12:31:38 PST