FOP 0.20.4 Standards Compliance Progress Report on Standard Features Implemented

One of FOP's design goals is conformance to the W3C XSL-FO 1.0 standard, which specifies three levels of "conformance": basic, extended, and complete. Although FOP does not currently conform to any of these levels, it is nevertheless a useful work-in-progress for many applications. The information presented here demonstrates FOP's progress toward the goal of conformance, which progress consists of implementation of specific objects and properties in the standard. The information presented is useful not only to the developers as a sort of "to do" list, but also for setting proper expectations for users and potential users.

In the tables below, blue indicates support at the specified level of conformance, and red indicates a lack of support.

The following is a summary of FOP's current support for the standard XSL-FO objects.

Only works for table of contents without any problems. The case where the page number doesn't fit on a line isn't handled, and any text on the same line and after the page-number might not appear exactly where you want it to. you must explicitly specify column widths must contain block-level FOs (cannot contain straight character data) both internal and external supported

The following is a summary of FOP's current support for the standard XSL-FO properties. Please note that a number of properties and categories of properties are not supported because they do not apply to documents in visual formats.

only "solid" works only "solid" works only "solid" works only "solid" works only "solid" works only "solid" works only "solid" works only "solid" works only one value allowed only implemented for blocks can't be used to make extra space (use indents + spaces instead) can be used to control how much the background-color extends beyond the content rectangle same limitations as padding-before same limitations as padding-before same limitations as padding-before same limitations as padding-before same limitations as padding-before same limitations as padding-before same limitations as padding-before font-family lists are not suppported, use a single font-family name only on pages and regions only on pages and regions only on pages and regions only on pages and regions space-before.optimum supported space-after.optimum supported works only in table rows works only in table rows works only in table rows Workaround for page-orientation (portrait vs. landscape) is to swap the page-width and page-height properties. Workaround for block-container is to use SVG. not value "page" not value "use-content" leader-length.minimum is not used at all "last" isn't implemented! "percentage" not implemented. Workaround is to use the XSL-FO "proportional-column-width" function. only one value allowed only "solid" works only on pages and regions only one value allowed only implemented for blocks can't be used to make extra space (use indents + spaces instead) can be used to control how much the background-color extends beyond the content rectangle "inherit" not handled