Loading ...
Sorry, an error occurred while loading the content.

Re: [XSL-FO] color till the end of the page

Expand Messages
  • G. Ken Holman
    ... A caveat with the above is that any use of space-before= on your blocks will reveal the region background colour *above* the text as well as below the last
    Message 1 of 6 , Jun 10, 2005
    • 0 Attachment
      At 2005-06-10 16:58 +0300, Igor Istomin wrote:
      > > I have a text that runs half of the page and the rest of the page is
      > > empty. Instead of leaving it blank, i would like to color the empty
      > > half of the page, Is it possible to do?? and how do we do it?
      >
      >You can specify "background-color" property for region-body to fill
      >the page body with some color.

      A caveat with the above is that any use of space-before= on your blocks
      will reveal the region background colour *above* the text as well as below
      the last line of text. This is illustrated with the striped rendering of
      the following:

      ===8<---
      <region-body region-name="frame-body" background-color="silver"/>
      </simple-page-master>
      </layout-master-set>

      <page-sequence master-reference="frame">

      <flow xmlns="http://www.w3.org/1999/XSL/Format" flow-name="frame-body"
      font-family="Times" font-size="20pt">

      <block space-before="2in" background-color="white">This is a test</block>
      <block space-before="2in" background-color="white">This is a test</block>
      <block space-before="2in" background-color="white">This is a test</block>
      <block space-before="2in" background-color="white">This is a test</block>
      <block space-before="2in" background-color="white">This is a test</block>
      ===8<---

      I haven't figured out why this problem with revealing backgrounds is not a
      problem when putting such blocks inside of a block container. Both AX and
      XEP will obscure the block-container background with white in the
      space-before= used in the following example, but not obscure the
      region-body background with white in the space-before= used in preceding
      example:

      ===8<---
      <flow flow-name="frame-body" font-family="Times" font-size="20pt">
      <block-container block-progression-dimension="100%"
      background-color="silver">
      <block background-color="white">
      <block space-before="10pt">test block filler at top</block>
      <block space-before="10pt">test block filler at top</block>
      <block space-before="10pt">test block filler at top</block>
      <block space-before="10pt">test block filler at top</block>
      <block space-before="10pt">test block filler at top</block>
      <block space-before="10pt">test block filler at top</block>
      </block>
      </block-container>
      <block>second page starts here</block>
      </flow>
      ===8<---


      My understanding of space-before= was that the parent area's background was
      exposed, and that clearly isn't the interpretation of both AX and XEP when
      the background is the parent block-container.

      So I'm lost as to what is going on ... can anyone offer an explanation of
      the differences in the visibility between text lines of the background
      silver colour in the above two examples?

      Thanks!

      . . . . . . Ken

      --
      World-wide on-site corporate, govt. & user group XML/XSL training.
      G. Ken Holman mailto:gkholman@...
      Crane Softwrights Ltd. http://www.CraneSoftwrights.com/f/
      Box 266, Kars, Ontario CANADA K0A-2E0 +1(613)489-0999 (F:-0995)
      Male Breast Cancer Awareness http://www.CraneSoftwrights.com/f/bc
      Legal business disclaimers: http://www.CraneSoftwrights.com/legal
    • Eliot Kimber
      ... This works in both XEP and XSL Formatter 3.2 and will work for any multi-page flow:
      Message 2 of 6 , Jun 10, 2005
      • 0 Attachment
        geethanandh wrote:
        > I have a text that runs half of the page and the rest of the page is
        > empty. Instead of leaving it blank, i would like to color the empty
        > half of the page, Is it possible to do?? and how do we do it?

        This works in both XEP and XSL Formatter 3.2 and will work for any
        multi-page flow:

        <fo:flow flow-name="xsl-region-body" font-family="sans-serif">
        <fo:block space-before="1em"
        >This is content at the start of the page in a normal
        block</fo:block>
        <fo:block space-before="1em"
        >This is content at the start of the page in a normal
        block</fo:block>
        <fo:block space-before="1em"
        >This is content at the start of the page in a normal
        block</fo:block>
        <fo:block space-before="1em"
        >This is content at the start of the page in a normal
        block</fo:block>
        <fo:block space-before="1em"
        >This is content at the start of the page in a normal
        block</fo:block>
        <fo:block space-before="1em"
        >This is content at the start of the page in a normal
        block</fo:block>
        <fo:block space-before="1em"
        >This is content at the start of the page in a normal
        block</fo:block>
        <fo:block-container
        keep-with-previous.within-page="always"
        keep-together.within-page="always"
        block-progression-dimension="auto"
        inline-progression-dimension="100%"
        >
        <fo:block-container
        keep-with-previous.within-page="always"
        block-progression-dimension="100%"
        inline-progression-dimension="100%"
        background-color="red"
        overflow="hide"
        >
        <fo:block>A block container with a
        block-progression-dimension equal to the
        the BPD of the region-body. overflow="hide", which should
        cause the
        block-container to be clipped to the after edge of the
        region-body.</fo:block>
        </fo:block-container>
        </fo:block-container>
        </fo:flow>

        --
        W. Eliot Kimber
        Professional Services
        Innodata Isogen
        9390 Research Blvd, #410
        Austin, TX 78759
        (512) 372-8155

        ekimber@...
        www.innodata-isogen.com
      Your message has been successfully submitted and would be delivered to recipients shortly.