Apache™ FOP Compliance Page
W3C XSL-FO 1.1 Standard
One of Apache™ FOP's design goals is conformance to the W3C XSL-FO 1.1 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.
The following table shows the legend used for the tables below:
yes | indicates conformance |
partial | indicates partial conformance |
no | indicates a lack of conformance |
na | indicates that the item is "not applicable" to FOP usually because FOP supports only visual media |
XSL-FO Object Support Table (§6)
The following is a summary of FOP's current support for the standard XSL-FO objects.
Citation | Object Name | XSL-FO Conformance Level | FOP 1.0 | FOP 1.1 | FOP 2.0 | FOP 2.3 | FOP 2.4 to 2.8 | FOP 2.9 to 2.10 | FOP dev | Comments |
---|---|---|---|---|---|---|---|---|---|---|
§6.4 | Declarations and Pagination and Layout Formatting Objects | { #fo-object-decl-section} | ||||||||
§6.4.2 | root | Basic | yes | yes | yes | yes | yes | yes | yes | |
§6.4.3 | declarations | Basic | yes | yes | yes | yes | yes | yes | yes | |
§6.4.4 | color-profile | Extended | yes | yes | yes | yes | yes | yes | yes | |
§6.4.5 | page-sequence | Basic | yes | yes | yes | yes | yes | yes | yes | |
§6.4.6 | page-sequence-wrapper | Basic | no | no | no | no | no | no | no | |
§6.4.7 | layout-master-set | Basic | yes | yes | yes | yes | yes | yes | yes | |
§6.4.8 | page-sequence-master | Basic | yes | yes | yes | yes | yes | yes | yes | |
§6.4.9 | single-page-master-reference | Basic | yes | yes | yes | yes | yes | yes | yes | |
§6.4.10 | repeatable-page-master-reference | Basic | yes | yes | yes | yes | yes | yes | yes | |
§6.4.11 | repeatable-page-master-alternatives | Extended | yes | yes | yes | yes | yes | yes | yes | |
§6.4.12 | conditional-page-master-reference | Extended | yes | yes | yes | yes | yes | yes | yes | |
§6.4.13 | simple-page-master | Basic | partial | partial | partial | partial | partial | partial | partial | The page width may not change among pages of the same page-sequence unless a forced break is inserted. |
§6.4.14 | region-body | Basic | yes | yes | yes | yes | yes | yes | yes | |
§6.4.15 | region-before | Extended | yes | yes | yes | yes | yes | yes | yes | |
§6.4.16 | region-after | Extended | yes | yes | yes | yes | yes | yes | yes | |
§6.4.17 | region-start | Extended | yes | yes | yes | yes | yes | yes | yes | |
§6.4.18 | region-end | Extended | yes | yes | yes | yes | yes | yes | yes | |
§6.4.19 | flow | Basic | yes | yes | yes | yes | yes | yes | yes | |
§6.4.20 | static-content | Extended | yes | yes | yes | yes | yes | yes | yes | |
§6.4.21 | title | Extended | yes | yes | yes | yes | yes | yes | yes | |
§6.4.22 | flow-map | Extended | no | no | no | no | no | no | no | |
§6.4.23 | flow-assignment | Extended | no | no | no | no | no | no | no | |
§6.4.24 | flow-source-list | Extended | no | no | no | no | no | no | no | |
§6.4.25 | flow-name-specifier | Extended | no | no | no | no | no | no | no | |
§6.4.26 | flow-target-list | Extended | no | no | no | no | no | no | no | |
§6.4.27 | region-name-specifier | Extended | no | no | no | no | no | no | no | |
§6.5 | Block Formatting Objects | { #fo-object-block-section} | ||||||||
§6.5.2 | block | Basic | yes | yes | yes | yes | yes | yes | yes | |
§6.5.3 | block-container | Extended | partial | partial | partial | partial | partial | partial | partial | |
§6.6 | Inline Formatting Objects | { #fo-object-inline-section} | ||||||||
§6.6.2 | bidi-override | Extended | no | yes | yes | yes | yes | yes | yes | |
§6.6.3 | character | Basic | yes | yes | yes | yes | yes | yes | yes | |
§6.6.4 | initial-property-set | Extended | no | no | no | no | no | no | no | |
§6.6.5 | external-graphic | Basic | yes | yes | yes | yes | yes | yes | yes | |
§6.6.6 | instream-foreign-object | Extended | yes | yes | yes | yes | yes | yes | yes | Built-in support for SVG only, additional namespaces through optional extensions. |
§6.6.7 | inline | Basic | yes | yes | yes | yes | yes | yes | yes | |
§6.6.8 | inline-container | Extended | no | no | partial | partial | partial | partial | partial | [FOP 2.0] initial support: not all properties are implemented. See FOP-1524 |
§6.6.9 | leader | Basic | yes | yes | yes | yes | yes | yes | yes | |
§6.6.10 | page-number | Basic | yes | yes | yes | yes | yes | yes | yes | |
§6.6.11 | page-number-citation | Extended | partial | partial | partial | partial | partial | partial | partial | After the page number is known, no relayout is performed. The appearance may be suboptimal depending on the use case. |
§6.6.12 | page-number-citation-last | Extended | partial | partial | partial | partial | partial | partial | partial | Works only for page-sequence so far. After the page number is known, no relayout is performed. The appearance may be suboptimal depending on the use case. |
§6.6.13 | folio-prefix | Extended | no | no | no | no | no | no | no | |
§6.6.14 | folio-suffix | Extended | no | no | no | no | no | no | no | |
§6.6.15 | scaling-value-citation | Extended | no | no | no | no | no | no | no | |
§6.7 | Table Formatting Objects | { #fo-object-table-section} | ||||||||
§6.7.2 | table-and-caption | Basic | no | no | no | no | no | no | no | |
§6.7.3 | table | Basic | partial | partial | partial | partial | partial | partial | partial | No support for auto layout yet |
§6.7.4 | table-column | Basic | yes | yes | yes | yes | yes | yes | yes | |
§6.7.5 | table-caption | Extended | no | no | no | no | no | no | no | |
§6.7.6 | table-header | Basic | yes | yes | yes | yes | yes | yes | yes | |
§6.7.7 | table-footer | Extended | yes | yes | yes | yes | yes | yes | yes | |
§6.7.8 | table-body | Basic | yes | yes | yes | yes | yes | yes | yes | |
§6.7.9 | table-row | Basic | yes | yes | yes | yes | yes | yes | yes | |
§6.7.10 | table-cell | Basic | yes | yes | yes | yes | yes | yes | yes | |
§6.8 | List Formatting Objects | { #fo-object-list-section} | ||||||||
§6.8.2 | list-block | Basic | yes | yes | yes | yes | yes | yes | yes | |
§6.8.3 | list-item | Basic | yes | yes | yes | yes | yes | yes | yes | |
§6.8.4 | list-item-body | Basic | yes | yes | yes | yes | yes | yes | yes | |
§6.8.5 | list-item-label | Extended | yes | yes | yes | yes | yes | yes | yes | |
§6.9 | Link and Multi Formatting Objects | { #fo-object-link-section} | ||||||||
§6.9.2 | basic-link | Extended | yes | yes | yes | yes | yes | yes | yes | both internal and external supported |
§6.9.3 | multi-switch | Extended | no | no | partial | partial | partial | partial | partial | [FOP 2.0] initial support: used with fox:auto-toggle extension |
§6.9.4 | multi-case | Basic | no | no | partial | partial | partial | partial | partial | [FOP 2.0] initial support: space attributes not currently supported; dynamic content inside a table cell does not work |
§6.9.5 | multi-toggle | Extended | no | no | no | no | no | no | no | |
§6.9.6 | multi-properties | Extended | no | no | no | no | no | no | no | |
§6.9.7 | multi-property-set | Extended | no | no | no | no | no | no | no | |
§6.10 | Formatting Objects for Indexing | { #fo-object-indexing-section} | ||||||||
§6.10.2 | index-page-number-prefix | Extended | no | no | no | no | no | no | no | |
§6.10.3 | index-page-number-suffix | Extended | no | no | no | no | no | no | no | |
§6.10.4 | index-range-begin | Extended | no | no | no | no | no | no | no | |
§6.10.5 | index-range-end | Extended | no | no | no | no | no | no | no | |
§6.10.6 | index-key-reference | Extended | no | no | no | no | no | no | no | |
§6.10.7 | index-page-citation-list | Extended | no | no | no | no | no | no | no | |
§6.10.8 | index-page-citation-list-separator | Extended | no | no | no | no | no | no | no | |
§6.10.9 | index-page-citation-range-separator | Extended | no | no | no | no | no | no | no | |
§6.11 | Formatting Objects for Bookmarks | { #fo-object-bookmarks-section} | ||||||||
§6.11.1 | bookmark-tree | Extended | yes | yes | yes | yes | yes | yes | yes | |
§6.11.2 | bookmark | Extended | partial | partial | partial | partial | partial | partial | partial | external-destination is not yet supported. |
§6.11.3 | bookmark-title | Extended | partial | partial | partial | partial | partial | partial | partial | color, font-style and font-weight are not supported, yet. |
§6.12 | Out-of-line Formatting Objects | { #fo-object-outofline-section} | ||||||||
§6.12.2 | float | Extended | no | no | partial | partial | partial | partial | partial | See restrictions |
§6.12.3 | footnote | Extended | partial | partial | partial | partial | partial | partial | partial | Restrictions with multi-column documents. |
§6.12.4 | footnote-body | Extended | yes | yes | yes | yes | yes | yes | yes | |
§6.13 | Other Formatting Objects | { #fo-object-other-section} | ||||||||
§6.13.2 | change-bar-begin | Extended | no | no | no | no | yes | yes | yes | |
§6.13.3 | change-bar-end | Extended | no | no | no | no | yes | yes | yes | |
§6.13.4 | wrapper | Basic | yes | yes | yes | yes | yes | yes | yes | Only works as expected with inline-level content. |
§6.13.5 | marker | Extended | yes | yes | yes | yes | yes | yes | yes | |
§6.13.6 | retrieve-marker | Extended | yes | yes | yes | yes | yes | yes | yes | |
§6.13.7 | retrieve-table-marker | Extended | no | no | partial | partial | partial | partial | partial | [FOP 2.0] initial support: marker element needs to be an element that does not change the BPD of the containing cell. |
XSL-FO Property Support Table (§7)
The following is a summary of FOP's current support for the standard XSL-FO properties.
Citation | Property Name | XSL-FO Conformance Level | FOP 1.0 | FOP 1.1 | FOP 2.0 | FOP 2.3 | FOP 2.4 to 2.8 | FOP 2.9 to 2.10 | FOP dev | Comments |
---|---|---|---|---|---|---|---|---|---|---|
§7.5 | Common Accessibility Properties | { #fo-property-commonaccess-section} | ||||||||
§7.5.1 | source-document | Basic | no | no | no | no | no | no | no | |
§7.5.2 | role | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.6 | Common Absolute Position Properties | { #fo-property-commonabspos-section} | ||||||||
§7.6.1 | absolute-position | Complete | yes | yes | yes | yes | yes | yes | yes | |
§7.6.2 | top | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.6.3 | right | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.6.4 | bottom | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.6.5 | left | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.7 | Common Aural Properties | { #fo-property-commonaural-section} | ||||||||
§7.7.1 | azimuth | Basic | na | na | na | na | na | na | na | |
§7.7.2 | cue-after | Basic | na | na | na | na | na | na | na | |
§7.7.3 | cue-before | Basic | na | na | na | na | na | na | na | |
§7.7.4 | elevation | Basic | na | na | na | na | na | na | na | |
§7.7.5 | pause-after | Basic | na | na | na | na | na | na | na | |
§7.7.6 | pause-before | Basic | na | na | na | na | na | na | na | |
§7.7.7 | pitch | Basic | na | na | na | na | na | na | na | |
§7.7.8 | pitch-range | Basic | na | na | na | na | na | na | na | |
§7.7.9 | play-during | Basic | na | na | na | na | na | na | na | |
§7.7.10 | richness | Basic | na | na | na | na | na | na | na | |
§7.7.11 | speak | Basic | na | na | na | na | na | na | na | |
§7.7.12 | speak-header | Basic | na | na | na | na | na | na | na | |
§7.7.13 | speak-numeral | Basic | na | na | na | na | na | na | na | |
§7.7.14 | speak-punctuation | Basic | na | na | na | na | na | na | na | |
§7.7.15 | speech-rate | Basic | na | na | na | na | na | na | na | |
§7.7.16 | stress | Basic | na | na | na | na | na | na | na | |
§7.7.17 | voice-family | Basic | na | na | na | na | na | na | na | |
§7.7.18 | volume | Basic | na | na | na | na | na | na | na | |
§7.8 | Common Border, Padding, and Background Properties | { #fo-property-commonenv-section} | ||||||||
§7.8.1 | background-attachment | Extended | no | no | no | no | no | no | no | |
§7.8.2 | background-color | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.3 | background-image | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.8.4 | background-repeat | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.8.5 | background-position-horizontal | Extended | partial | partial | partial | partial | partial | partial | partial | Ignored when background-repeat set to "repeat" or "repeat-x" |
§7.8.6 | background-position-vertical | Extended | partial | partial | partial | partial | partial | partial | partial | Ignored when background-repeat set to "repeat" or "repeat-y" |
§7.8.7 | border-before-color | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.8 | border-before-style | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.9 | border-before-width | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.10 | border-after-color | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.11 | border-after-style | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.12 | border-after-width | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.13 | border-start-color | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.14 | border-start-style | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.15 | border-start-width | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.16 | border-end-color | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.17 | border-end-style | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.18 | border-end-width | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.19 | border-top-color | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.20 | border-top-style | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.21 | border-top-width | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.22 | border-bottom-color | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.23 | border-bottom-style | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.24 | border-bottom-width | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.25 | border-left-color | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.26 | border-left-style | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.27 | border-left-width | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.28 | border-right-color | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.29 | border-right-style | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.30 | border-right-width | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.31 | padding-before | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.32 | padding-after | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.33 | padding-start | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.34 | padding-end | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.35 | padding-top | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.36 | padding-bottom | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.37 | padding-left | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.8.38 | padding-right | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.9 | Common Font Properties | { #fo-property-commonfont-section} | ||||||||
§7.9.2 | font-family | Basic | partial | partial | partial | partial | partial | yes | yes | |
§7.9.3 | font-selection-strategy | Complete | no | no | no | no | no | yes | yes | |
§7.9.4 | font-size | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.9.5 | font-stretch | Extended | no | no | no | no | no | no | no | |
§7.9.6 | font-size-adjust | Extended | no | no | no | no | no | no | no | |
§7.9.7 | font-style | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.9.8 | font-variant | Basic | no | no | no | no | no | no | no | |
§7.9.9 | font-weight | Basic | partial | partial | partial | partial | partial | partial | partial | TODO <relative> font weights |
§7.10 | Common Hyphenation Properties | { #fo-property-commonhyphen-section} | ||||||||
§7.10.1 | country | Extended | yes | yes | yes | yes | yes | yes | yes | For PDF output: Only 2-letter codes from ISO 3166 are supported properly to identify the natural language! |
§7.10.2 | language | Extended | yes | yes | yes | yes | yes | yes | yes | For PDF output: Only 2-letter codes from ISO 639 are supported properly to identify the natural language! Also used with complex scripts features. |
§7.10.3 | script | Extended | no | yes | yes | yes | yes | yes | yes | Used with complex scripts features to override default script heuristics. |
§7.10.4 | hyphenate | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.10.5 | hyphenation-character | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.10.6 | hyphenation-push-character-count | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.10.7 | hyphenation-remain-character-count | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.11 | Common Margin Properties - Block | { #fo-property-commonmarginblock-section} | ||||||||
§7.11.1 | margin-top | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.11.2 | margin-bottom | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.11.3 | margin-left | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.11.4 | margin-right | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.11.5 | space-before | Basic | partial | partial | partial | partial | partial | partial | partial | Space adjustment may not fully work everywhere, yet. |
§7.11.6 | space-after | Basic | partial | partial | partial | partial | partial | partial | partial | Space adjustment may not fully work everywhere, yet. |
§7.11.7 | start-indent | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.11.8 | end-indent | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.12 | Common Margin Properties - Inline | { #fo-property-commonmargininline-section} | ||||||||
§7.12.1 | margin-top | Basic | no | no | no | no | no | no | no | |
§7.12.2 | margin-bottom | Basic | no | no | no | no | no | no | no | |
§7.12.3 | margin-left | Basic | no | no | no | no | no | no | no | |
§7.12.4 | margin-right | Basic | no | no | no | no | no | no | no | |
§7.12.5 | space-end | Basic | no | no | no | no | no | no | no | |
§7.12.6 | space-start | Basic | no | no | no | no | no | no | no | |
§7.13 | Common Relative Position Properties | { #fo-property-commonrelpos-section} | ||||||||
§7.13.1 | top | Extended | no | no | no | no | no | no | no | |
§7.13.2 | right | Extended | no | no | no | no | no | no | no | |
§7.13.3 | bottom | Extended | no | no | no | no | no | no | no | |
§7.13.4 | left | Extended | no | no | no | no | no | no | no | |
§7.13.5 | relative-position | Extended | no | no | no | no | no | no | no | |
§7.14 | Area Alignment Properties | { #fo-property-areaalign-section} | ||||||||
§7.14.1 | alignment-adjust | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.14.2 | alignment-baseline | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.14.3 | baseline-shift | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.14.4 | display-align | Extended | partial | partial | partial | partial | partial | partial | partial | TODO Check e-g, i-f-o. |
§7.14.5 | dominant-baseline | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.14.6 | relative-align | Extended | no | no | no | no | no | no | no | |
§7.15 | Area Dimension Properties | { #fo-property-areadim-section} | ||||||||
§7.15.1 | allowed-height-scale | Extended | no | no | no | no | no | no | no | |
§7.15.2 | allowed-width-scale | Extended | no | no | no | no | no | no | no | |
§7.15.3 | block-progression-dimension | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.15.4 | content-height | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.15.5 | content-width | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.15.6 | height | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.15.7 | inline-progression-dimension | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.15.8 | max-height | Complete | yes | yes | yes | yes | yes | yes | yes | |
§7.15.9 | max-width | Complete | yes | yes | yes | yes | yes | yes | yes | |
§7.15.10 | min-height | Complete | yes | yes | yes | yes | yes | yes | yes | |
§7.15.11 | min-width | Complete | yes | yes | yes | yes | yes | yes | yes | |
§7.15.12 | scaling | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.15.13 | scaling-method | Extended | no | no | no | no | no | no | no | |
§7.15.14 | width | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.16 | Block and Line-related Properties | { #fo-property-blockandline-section} | ||||||||
§7.16.1 | hyphenation-keep | Extended | no | no | no | no | no | no | no | |
§7.16.2 | hyphenation-ladder-count | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.16.3 | last-line-end-indent | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.16.4 | line-height | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.16.5 | line-height-shift-adjustment | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.16.6 | line-stacking-strategy | Basic | partial | partial | partial | partial | partial | partial | partial | value "line-height" not supported |
§7.16.7 | linefeed-treatment | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.16.8 | white-space-treatment | Extended | partial | partial | partial | partial | partial | partial | partial | inline elements may interfere with correct handling of this property in some cases |
§7.16.9 | text-align | Basic | partial | partial | partial | partial | partial | partial | partial | Only start, end, center and justify are supported |
§7.16.10 | text-align-last | Extended | partial | partial | partial | partial | partial | partial | partial | Only start, end, center and justify are supported |
§7.16.11 | text-indent | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.16.12 | white-space-collapse | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.16.13 | wrap-option | Basic | partial | partial | partial | partial | partial | partial | partial | Only supported on fo:block. |
§7.17 | Character Properties | { #fo-property-char-section} | ||||||||
§7.17.1 | character | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.17.2 | letter-spacing | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.17.3 | suppress-at-line-break | Extended | no | no | no | no | no | no | no | |
§7.17.4 | text-decoration | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.17.5 | text-shadow | Extended | no | no | no | no | no | no | no | |
§7.17.6 | text-transform | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.17.7 | treat-as-word-space | Extended | no | no | no | no | no | no | no | |
§7.17.8 | word-spacing | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.18 | Color-related Properties | { #fo-property-color-section} | ||||||||
§7.18.1 | color | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.18.2 | color-profile-name | Extended | no | no | no | no | no | no | no | |
§7.18.3 | rendering-intent | Extended | no | no | no | no | no | no | no | |
§7.19 | Float-related Properties | { #fo-property-float-section} | ||||||||
§7.19.1 | clear | Extended | no | no | no | no | no | no | no | |
§7.19.2 | float | Extended | no | no | no | no | no | no | no | |
§7.19.3 | intrusion-displace | Extended | no | no | no | no | no | no | no | |
§7.20 | Keeps and Breaks Properties | { #fo-property-keepsbreaks-section} | ||||||||
§7.20.1 | break-after | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.20.2 | break-before | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.20.3 | keep-together | Extended | partial | partial | partial | partial | partial | partial | partial | [1.0 and later] minimal support for <integer> value. |
§7.20.4 | keep-with-next | Basic | partial | partial | partial | partial | partial | partial | partial | Works on all implemented block-level FOs, but not on inline-level FOs. Minimal support for <integer> value. |
§7.20.5 | keep-with-previous | Basic | partial | partial | partial | partial | partial | partial | partial | works on all implemented block-level FOs, but not on inline-level FOs. Minimal support for <integer> value. |
§7.20.6 | orphans | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.20.7 | widows | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.21 | Layout-related Properties | { #fo-property-layout-section} | ||||||||
§7.21.1 | clip | Extended | no | no | no | no | no | no | no | |
§7.21.2 | overflow | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.21.3 | reference-orientation | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.21.4 | span | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.22 | Leader and Rule Properties | { #fo-property-leader-section} | ||||||||
§7.22.1 | leader-alignment | Extended | no | no | no | no | no | no | no | Not supported |
§7.22.2 | leader-pattern | Basic | yes | yes | yes | yes | yes | yes | yes | Value "use-content" does not work in all circumstances. |
§7.22.3 | leader-pattern-width | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.22.4 | leader-length | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.22.5 | rule-style | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.22.6 | rule-thickness | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.23 | Properties for Dynamic Effects Formatting Objects | { #fo-property-dynamiceffects-section} | ||||||||
§7.23.1 | active-state | Extended | no | no | no | no | no | no | no | |
§7.23.2 | auto-restore | Extended | no | no | no | no | no | no | no | |
§7.23.3 | case-name | Extended | no | no | no | no | no | no | no | |
§7.23.4 | case-title | Extended | no | no | no | no | no | no | no | |
§7.23.5 | destination-placement-offset | Extended | no | no | no | no | no | no | no | |
§7.23.6 | external-destination | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.23.7 | indicate-destination | Extended | no | no | no | no | no | no | no | |
§7.23.8 | internal-destination | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.23.9 | show-destination | Extended | partial | partial | partial | partial | partial | partial | partial | [1.0 and later] only has effect in PDF output, for external PDF destinations (links pointing to destinations in another PDF), and only works reliably when the PDF is viewed in a standalone PDF viewer. Adobe's browser plugin, for example, ignores the |
§7.23.10 | starting-state | Extended | partial | partial | partial | partial | partial | partial | partial | support for starting-state on fo:bookmark |
§7.23.11 | switch-to | Extended | no | no | no | no | no | no | no | |
§7.23.12 | target-presentation-context | Extended | no | no | no | no | no | no | no | |
§7.23.13 | target-processing-context | Extended | no | no | no | no | no | no | no | |
§7.23.14 | target-stylesheet | Extended | no | no | no | no | no | no | no | |
§7.24 | Properties for Indexing | { #fo-property-indexing-section} | ||||||||
§7.24.1 | index-class | Extended | no | no | no | no | no | no | no | |
§7.24.2 | index-key | Extended | no | no | no | no | no | no | no | |
§7.24.3 | page-number-treatment | Extended | no | no | no | no | no | no | no | |
§7.24.4 | merge-ranges-across-index-key-references | Extended | no | no | no | no | no | no | no | |
§7.24.5 | merge-sequential-page-numbers | Extended | no | no | no | no | no | no | no | |
§7.24.6 | merge-pages-across-index-key-references | Extended | no | no | no | no | no | no | no | |
§7.24.7 | ref-index-key | Extended | no | no | no | no | no | no | no | |
§7.25 | Properties for Markers | { #fo-property-markers-section} | ||||||||
§7.25.1 | marker-class-name | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.25.2 | retrieve-boundary-within-table | Extended | no | no | no | no | no | no | no | |
§7.25.3 | retrieve-class-name | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.53.4 | retrieve-position | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.25.5 | retrieve-boundary | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.25.6 | retrieve-position-within-table | Extended | no | no | no | no | no | no | no | |
§7.26 | Properties for Number to String Conversion | { #fo-property-numberstring-section} | ||||||||
§7.26.1 | format | Basic | partial | yes | yes | yes | yes | yes | yes | [1.0 and earlier] only values '0*1', 'a', 'A', 'i', 'I' supported |
§7.26.2 | grouping-separator | Extended | no | yes | yes | yes | yes | yes | yes | |
§7.26.3 | grouping-size | Extended | no | yes | yes | yes | yes | yes | yes | |
§7.26.4 | letter-value | Basic | no | yes | yes | yes | yes | yes | yes | |
§7.27 | Pagination and Layout Properties | { #fo-property-pagination-section} | ||||||||
§7.27.1 | blank-or-not-blank | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.27.2 | column-count | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.27.3 | column-gap | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.27.4 | extent | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.27.5 | flow-name | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.27.6 | force-page-count | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.27.7 | initial-page-number | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.27.8 | master-name | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.27.9 | master-reference | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.27.10 | maximum-repeats | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.27.11 | media-usage | Extended | no | no | no | no | no | no | no | |
§7.27.12 | odd-or-even | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.27.13 | page-height | Basic | partial | partial | partial | partial | partial | partial | partial | value "indefinite" not yet supported |
§7.27.14 | page-position | Extended | yes | yes | yes | yes | yes | yes | yes | value "only" not supported |
§7.27.15 | page-width | Basic | partial | partial | partial | partial | partial | partial | partial | value "indefinite" not yet supported |
§7.27.16 | precedence | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.27.17 | region-name | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.27.18 | flow-map-name | Extended | no | no | no | no | no | no | no | |
§7.27.19 | flow-map-reference | Extended | no | no | no | no | no | no | no | |
§7.27.20 | flow-name-reference | Extended | no | no | no | no | no | no | no | |
§7.27.21 | region-name-reference | Extended | no | no | no | no | no | no | no | |
§7.28 | Table Properties | { #fo-property-table-section} | ||||||||
§7.28.1 | border-after-precedence | Basic | no | no | no | no | no | no | no | |
§7.28.2 | border-before-precedence | Basic | no | no | no | no | no | no | no | |
§7.28.3 | border-collapse | Extended | partial | partial | partial | partial | partial | partial | partial | value "collapse-with-precedence" not yet supported |
§7.28.4 | border-end-precedence | Basic | no | no | no | no | no | no | no | |
§7.28.5 | border-separation | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.28.6 | border-start-precedence | Basic | no | no | no | no | no | no | no | |
§7.28.7 | caption-side | Complete | no | no | no | no | no | no | no | |
§7.28.8 | column-number | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.28.9 | column-width | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.28.10 | empty-cells | Extended | no | no | no | no | no | no | no | |
§7.28.11 | ends-row | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.28.12 | number-columns-repeated | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.28.13 | number-columns-spanned | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.28.14 | number-rows-spanned | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.28.15 | starts-row | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.28.16 | table-layout | Extended | no | no | no | no | no | no | no | |
§7.28.17 | table-omit-footer-at-break | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.28.18 | table-omit-header-at-break | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.29 | Writing-mode-related Properties | { #fo-property-writingmode-section} | ||||||||
§7.29.1 | direction | Basic | no | no | no | no | no | no | no | |
§7.29.2 | glyph-orientation-horizontal | Extended | no | no | no | no | no | no | no | |
§7.29.3 | glyph-orientation-vertical | Extended | no | no | no | no | no | no | no | |
§7.29.4 | text-altitude | Extended | no | no | no | no | no | no | no | |
§7.29.5 | text-depth | Extended | no | no | no | no | no | no | no | |
§7.29.6 | unicode-bidi | Extended | no | no | no | no | no | no | no | |
§7.29.7 | writing-mode | Basic | no | partial | partial | partial | partial | partial | partial | [1.1 and later] only horizontal left-to-right and right-to-left modes |
§7.30 | Miscellaneous Properties | { #fo-property-misc-section} | ||||||||
§7.30.1 | change-bar-class | Extended | no | no | no | no | yes | yes | yes | |
§7.30.2 | change-bar-color | Extended | no | no | no | no | yes | yes | yes | |
§7.30.3 | change-bar-offset | Extended | no | no | no | no | yes | yes | yes | |
§7.30.4 | change-bar-placement | Extended | no | no | no | no | yes | yes | yes | |
§7.30.5 | change-bar-style | Extended | no | no | no | no | yes | yes | yes | |
§7.30.6 | change-bar-width | Extended | no | no | no | no | yes | yes | yes | |
§7.30.7 | content-type | Extended | no | no | no | no | no | no | no | |
§7.30.8 | id | Basic | partial | partial | partial | partial | partial | partial | partial | IDs on table-header, table-footer, table-body, table-row, table-and-caption, table-caption, inline-container and bidi-override are not available, yet. |
§7.30.9 | intrinsic-scale-value | Extended | no | no | no | no | no | no | no | |
§7.30.10 | page-citation-strategy | Extended | no | no | no | no | no | no | no | |
§7.30.11 | provisional-label-separation | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.30.12 | provisional-distance-between-starts | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.30.13 | ref-id | Extended | yes | yes | yes | yes | yes | yes | yes | |
§7.30.14 | scale-option | Extended | no | no | no | no | no | no | no | |
§7.30.15 | score-spaces | Extended | no | no | no | no | no | no | no | |
§7.30.16 | src | Basic | yes | yes | yes | yes | yes | yes | yes | |
§7.30.17 | visibility | Extended | no | no | no | no | no | no | no | |
§7.30.18 | z-index | Extended | no | no | no | no | no | no | no | |
§7.31 | Shorthand Properties | { #fo-property-shorthand-section} | ||||||||
§7.31.1 | background | Complete | no | no | no | no | no | no | no | |
§7.31.2 | background-position | Complete | yes | yes | yes | yes | yes | yes | yes | |
§7.31.3 | border | Complete | yes | yes | yes | yes | yes | yes | yes | |
§7.31.4 | border-bottom | Complete | yes | yes | yes | yes | yes | yes | yes | |
§7.31.5 | border-color | Complete | yes | yes | yes | yes | yes | yes | yes | |
§7.31.6 | border-left | Complete | yes | yes | yes | yes | yes | yes | yes | |
§7.31.7 | border-right | Complete | yes | yes | yes | yes | yes | yes | yes | |
§7.31.8 | border-style | Complete | yes | yes | yes | yes | yes | yes | yes | |
§7.31.9 | border-spacing | Complete | yes | yes | yes | yes | yes | yes | yes | |
§7.31.10 | border-top | Complete | yes | yes | yes | yes | yes | yes | yes | |
§7.31.11 | border-width | Complete | yes | yes | yes | yes | yes | yes | yes | |
§7.31.12 | cue | Complete | na | na | na | na | na | na | na | |
§7.31.13 | font | Complete | partial | partial | partial | partial | partial | partial | partial | Enum values other than "inherit" not yet supported. |
§7.31.14 | margin | Complete | yes | yes | yes | yes | yes | yes | yes | |
§7.31.15 | padding | Complete | yes | yes | yes | yes | yes | yes | yes | |
§7.31.16 | page-break-after | Complete | yes | yes | yes | yes | yes | yes | yes | |
§7.31.17 | page-break-before | Complete | yes | yes | yes | yes | yes | yes | yes | |
§7.31.18 | page-break-inside | Complete | yes | yes | yes | yes | yes | yes | yes | |
§7.31.19 | pause | Complete | na | na | na | na | na | na | na | |
§7.31.20 | position | Complete | yes | yes | yes | yes | yes | yes | yes | |
§7.31.21 | size | Complete | no | no | no | no | no | no | no | |
§7.31.22 | vertical-align | Complete | partial | partial | partial | partial | partial | partial | partial | Percentages are not supported, yet. |
§7.31.23 | white-space | Complete | yes | yes | yes | yes | yes | yes | yes | |
§7.31.24 | xml:lang | Complete | yes | yes | yes | yes | yes | yes | yes | Very basic parsing; no validation of the specified value. |
XSL-FO Core Function Library Support Table (§5.10)
The following is a summary of FOP's current support for the XSL-FO Core Function Library.
Citation | Function Name | XSL-FO Conformance Level | FOP 1.0 | FOP 1.1 | FOP 2.0 | FOP 2.3 | FOP 2.4 to 2.8 | FOP 2.9 to 2.10 | FOP dev | Comments |
---|---|---|---|---|---|---|---|---|---|---|
§5.10.1 | Number Functions | { #fo-function-number-section} | ||||||||
§5.10.1 | floor | Basic | yes | yes | yes | yes | yes | yes | yes | |
§5.10.1 | ceiling | Basic | yes | yes | yes | yes | yes | yes | yes | |
§5.10.1 | round | Basic | yes | yes | yes | yes | yes | yes | yes | |
§5.10.1 | min | Basic | yes | yes | yes | yes | yes | yes | yes | |
§5.10.1 | max | Basic | yes | yes | yes | yes | yes | yes | yes | |
§5.10.1 | abs | Basic | yes | yes | yes | yes | yes | yes | yes | |
§5.10.2 | Color Functions | { #fo-function-color-section} | ||||||||
§5.10.2 | rgb | Basic | yes | yes | yes | yes | yes | yes | yes | |
§5.10.2 | rgb-icc | Basic | yes | yes | yes | yes | yes | yes | yes | |
§5.10.2 | system-color | Basic | yes | yes | yes | yes | yes | yes | yes | |
§5.10.3 | Font Functions | { #fo-function-font-section} | ||||||||
§5.10.3 | system-font | Basic | no | no | no | no | no | no | no | |
§5.10.4 | Property Value Functions | { #fo-function-property-value-section} | ||||||||
§5.10.4 | inherited-property-value | Basic | yes | yes | yes | yes | yes | yes | yes | |
§5.10.4 | label-end | Basic | yes | yes | yes | yes | yes | yes | yes | |
§5.10.4 | body-start | Basic | yes | yes | yes | yes | yes | yes | yes | |
§5.10.4 | from-parent | Basic | yes | yes | yes | yes | yes | yes | yes | |
§5.10.4 | from-nearest-specified-value | Basic | yes | yes | yes | yes | yes | yes | yes | |
§5.10.4 | from-page-master-region | Basic | no | no | no | no | no | no | no | |
§5.10.4 | from-table-column | Basic | yes | yes | yes | yes | yes | yes | yes | |
§5.10.4 | proportional-column-width | Basic | yes | yes | yes | yes | yes | yes | yes | |
§5.10.4 | merge-property-values | Basic | no | no | no | no | no | no | no |