Differences between revisions 3 and 4
Revision 3 as of 2006-04-28 15:20:34
Size: 1732
Editor: MTL-HSE-ppp181513
Comment: Corrected small typo
Revision 4 as of 2009-09-20 23:52:45
Size: 1732
Editor: localhost
Comment: converted to 1.6 markup
No differences found!

Google's Summer of Code Project Proposal: Implementing auto table layout

This page is the draft of a project proposal that could be made at Google's Summer of Code. The goal is to gather the key points, the main issues and to sketch a timeline for the project.


The project is to implement the auto table layout in Apache Fop. Other features may be added to the list depending on the time estimates.

Work to be done

  • determining ideal column widths based on the inline element lists for the whole table.
  • determining if the column widths are to be redetermined for each page (if that's requested). FOP cannot currently do that because it determines page breaks on a number of pages at the same time (total fit algorithm instead of first fit (Knuth terminology)). This would cause extensive changes to the whole layout engine but enable other features that are currently not possible, for example changing available IPD between pages.

Proposed goals

Primary goals

  • basic implementation of the auto table layout (i.e. single column layout for the whole table, not for individual pages)
  • Wiki page describing the general approach to the above.

Secondary goals

  • extensive changes to the whole layout engine to enable first fit page breaking (in addition to the current total fit page breaking) in order to achieve the following point.
  • Auto table layout implementation which recalculates optimum column widths for each page.


  1. Documentation phase: 4 weeks
    • FOP source code
    • XSL-FO specification
  2. Basic auto table layout implementation : 3 weeks
  3. Extensive changes to the whole layout engine : 7 weeks

GoogleSummerOfCode2006/ImplementingAutoTableLayout (last edited 2009-09-20 23:52:45 by localhost)