As a result of the work on lists and floats we can improve current support for lists when there is a change in IPD across pages. I have committed a small change to do that to this branch even though it is not really float related. An example is attached.
On Tue, Nov 25, 2014 at 1:53 PM, Luis Bernardo <lmpmberna...@gmail.com> wrote: > A new example that shows floats and footnotes in the same page. > > On Fri, Nov 14, 2014 at 9:34 AM, Luis Bernardo <lmpmberna...@gmail.com> > wrote: > >> A more complex example that has a float inside a list. >> >> On Fri, Nov 7, 2014 at 4:41 PM, Luis Bernardo <lmpmberna...@gmail.com> >> wrote: >> >>> A new example that involves a list that starts after a float starts (and >>> before it ends). >>> >>> On Mon, Oct 20, 2014 at 10:33 AM, Luis Bernardo <lmpmberna...@gmail.com> >>> wrote: >>> >>>> >>>> FYI, I have created a new branch where I placed a new approach to side >>>> floats. The idea behind the approach is that if we can handle a change in >>>> IPD from one page to the next we can also do the same in the middle of a >>>> page (where a float causes the change in IPD). This also means that the >>>> implementation suffers, right now, from the same limitations that the >>>> handling of an IPD change across pages has. >>>> >>>> So, in summary: >>>> >>>> Left and right floats are supported in the most simple cases, including >>>> in multi-column layouts. Below are listed the known limitations: >>>> >>>> -- the "clear" fo:float attribute is ignored; only the float attribute >>>> (left or right) is used >>>> -- overlapping of floats in the Y is not handled (even in the case >>>> there would not be overlap in the X direction) >>>> -- floats that extend beyond the body region are not properly handled >>>> and will overflow past the edge of the region >>>> -- floats next to a table or a list are not supported unless the start >>>> and end of the table or list happen in between the start and end of the >>>> float >>>> -- a list can extend past the end of a float but only in situations >>>> where the list item at the end of the (bottom of the) float does not need >>>> to be wrapped; but wrapping before or after the bottom edge of the float is >>>> supported >>>> >>>> Attached is an example and the output (a similar two column example is >>>> in the layout tests). >>>> >>>> Comments, suggestion and bugs are welcome. I would like to commit this >>>> to trunk in a few weeks but meanwhile I will investigate alternative >>>> approaches to some of the current limitations. >>>> >>>> >>> >> >
list-change-ipd-across-pages.pdf
Description: Adobe PDF document
<?xml version="1.0" encoding="UTF-8"?> <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> <fo:layout-master-set> <fo:simple-page-master master-name="narrow" page-height="200pt" page-width="400pt" margin="50pt"> <fo:region-body background-color="#F0F0F0"/> </fo:simple-page-master> <fo:simple-page-master master-name="wide" page-height="200pt" page-width="600pt" margin="50pt"> <fo:region-body background-color="#F0F0F0"/> </fo:simple-page-master> <fo:page-sequence-master master-name="pages"> <fo:single-page-master-reference master-reference="narrow"/> <fo:repeatable-page-master-reference master-reference="wide"/> </fo:page-sequence-master> <fo:page-sequence-master master-name="alternate"> <fo:repeatable-page-master-alternatives> <fo:conditional-page-master-reference odd-or-even="odd" master-reference="wide"/> <fo:conditional-page-master-reference odd-or-even="even" master-reference="narrow"/> </fo:repeatable-page-master-alternatives> </fo:page-sequence-master> </fo:layout-master-set> <fo:page-sequence master-reference="alternate"> <fo:flow flow-name="xsl-region-body"> <fo:block widows="1" orphans="1"> <fo:list-block> <fo:list-item> <fo:list-item-label end-indent="label-end()"> <fo:block>(a)</fo:block> </fo:list-item-label> <fo:list-item-body start-indent="body-start()"> <fo:block> In olden times when wishing still helped one, there lived a king whose daughters were all beautiful, but the youngest was so beautiful that the sun itself, which has seen so much, was astonished whenever it shone in her face. </fo:block> </fo:list-item-body> </fo:list-item> <fo:list-item> <fo:list-item-label end-indent="label-end()"> <fo:block>(a)</fo:block> </fo:list-item-label> <fo:list-item-body start-indent="body-start()"> <fo:block> In olden times when wishing still helped one, there lived a king whose daughters were all beautiful, but the youngest was so beautiful that the sun itself, which has seen so much, was astonished whenever it shone in her face. </fo:block> </fo:list-item-body> </fo:list-item> <fo:list-item> <fo:list-item-label end-indent="label-end()"> <fo:block>(a)</fo:block> </fo:list-item-label> <fo:list-item-body start-indent="body-start()"> <fo:block> In olden times when wishing still helped one, there lived a king whose daughters were all beautiful, but the youngest was so beautiful that the sun itself, which has seen so much, was astonished whenever it shone in her face. </fo:block> </fo:list-item-body> </fo:list-item> <fo:list-item> <fo:list-item-label end-indent="label-end()"> <fo:block>(a)</fo:block> </fo:list-item-label> <fo:list-item-body start-indent="body-start()"> <fo:block> In olden times when wishing still helped one, there lived a king whose daughters were all beautiful, but the youngest was so beautiful that the sun itself, which has seen so much, was astonished whenever it shone in her face. </fo:block> </fo:list-item-body> </fo:list-item> <fo:list-item> <fo:list-item-label end-indent="label-end()"> <fo:block>(a)</fo:block> </fo:list-item-label> <fo:list-item-body start-indent="body-start()"> <fo:block> In olden times when wishing still helped one, there lived a king whose daughters were all beautiful, but the youngest was so beautiful that the sun itself, which has seen so much, was astonished whenever it shone in her face. </fo:block> </fo:list-item-body> </fo:list-item> <fo:list-item> <fo:list-item-label end-indent="label-end()"> <fo:block>(a)</fo:block> </fo:list-item-label> <fo:list-item-body start-indent="body-start()"> <fo:block> In olden times when wishing still helped one, there lived a king whose daughters were all beautiful, but the youngest was so beautiful that the sun itself, which has seen so much, was astonished whenever it shone in her face. </fo:block> </fo:list-item-body> </fo:list-item> <fo:list-item> <fo:list-item-label end-indent="label-end()"> <fo:block>(a)</fo:block> </fo:list-item-label> <fo:list-item-body start-indent="body-start()"> <fo:block> In olden times when wishing still helped one, there lived a king whose daughters were all beautiful, but the youngest was so beautiful that the sun itself, which has seen so much, was astonished whenever it shone in her face. </fo:block> </fo:list-item-body> </fo:list-item> <fo:list-item> <fo:list-item-label end-indent="label-end()"> <fo:block>(a)</fo:block> </fo:list-item-label> <fo:list-item-body start-indent="body-start()"> <fo:block> In olden times when wishing still helped one, there lived a king whose daughters were all beautiful, but the youngest was so beautiful that the sun itself, which has seen so much, was astonished whenever it shone in her face. </fo:block> </fo:list-item-body> </fo:list-item> </fo:list-block> </fo:block> </fo:flow> </fo:page-sequence> </fo:root>