[TOC] # [fo:root](https://www.w3.org/TR/xsl/#fo_root) ``` (layout-master-set,declarations?,bookmark-tree?,(page-sequence|page-sequence-wrapper)+) ``` * 一個`fo:layout-master-set` * 零或一個`fo:declarations` * 零或一個`fo:bookmark-tree` * 一或多個`fo:page-sequence`或`fo:page-sequence-wrapper` | Property | Value | Initial | Inherited | Percentages | Media | | - | - | - | - | - | - | | `source-document` | <uri-specification> [<uri-specification>]*或`none`或`inherit` | `none` | ❌ | N/A | all | | `role` | <string>或<uri-specification>或`none`或`inherit` | `none` | ❌ | N/A | all | | `id` | <id> | | ❌ | N/A | all | | `index-class` | <string> | "" | ❌ | N/A | all | | `index-key` | <string> | none | ❌ | N/A | all | | `media-usage` | `auto`或`paginate`或`bounded-in-one-dimension`或`unbounded` | `auto` | ❌ | N/A | visual | ## [fo:layout-master-set](https://www.w3.org/TR/xsl/#fo_layout-master-set) ``` (simple-page-master|page-sequence-master|flow-map)+ ``` * 一或多個`fo:simple-page-master`或`fo:page-sequence-master`或`fo:flow-map` ### [fo:simple-page-master](https://www.w3.org/TR/xsl/#fo_simple-page-master) ``` (region-body+,region-before?,region-after?,region-start?,region-end?) ``` | Property | Value | Initial | Inherited | Percentages | Media | | - | - | - | - | - | - | | `margin-top` | <margin-width>或`inherit` | `0pt` | ❌ | refer to width of containing block | visual | | `margin-bottom` | <margin-width>或`inherit` | `0pt` | ❌ | refer to width of containing block | visual | | `margin-left` | <margin-width>或`inherit` | `0pt` | ❌ | refer to width of containing block | visual | | `margin-right` | <margin-width>或`inherit` | `0pt` | ❌ | refer to width of containing block | visual | | `space-before` | <space>或`inherit` | space.minimum=0pt, .optimum=0pt, .maximum=0pt, .conditionality=discard, .precedence=0 | ❌ | N/A | visual | | `space-after` | <space>或`inherit` | space.minimum=0pt, .optimum=0pt, .maximum=0pt, .conditionality=discard, .precedence=0 | ❌ | N/A | visual | | `start-indent` | <length>或<percentage>或`inherit` | `0pt` | ✅ | refer to inline-progression-dimension of containing reference-area | visual | | `end-indent` | <length>或<percentage>或`inherit` | `0pt` | ✅ | refer to inline-progression-dimension of containing reference-area | visual | | `master-name` | <name> | an empty name | ❌ | N/A | visual | | `page-height` | `auto`或`indefinite`或<length>或`inherit` | `auto` | ❌ | N/A | visual | | `page-width` | `auto`或`indefinite`或<length>或`inherit` | `auto` | ❌ | N/A | visual | | `reference-orientation` | `0`或`90`或`180`或`270`或`-90`或`-180`或`-270`或`inherit` | `0` | ❌ | N/A | visual | | `writing-mode` | `inherit`或其它 | `lr-tb` | ✅ | N/A | visual | #### `fo:region-body+` #### `fo:region-before?` #### `fo:region-after?` #### `fo:region-start?` #### `fo:region-end?` ### [fo:page-sequence-master](https://www.w3.org/TR/xsl/#fo_page-sequence-master) #### `fo:single-page-master-reference` #### `fo:repeatable-page-master-reference` #### `fo:repeatable-page-master-alternatives` ### ~~`fo:flow-map`~~ * The `fo:flow-map` is used to specify the assignment of flows to regions. * The `fo:flow-map` formatting object generates no area directly. It is used by the `fo:page-sequence` formatting object to assign flows to regions. Each `fo:flow-assignment` child of the `fo:flow-map` defines a source list and a target list. The source list is a sequence of **flow-names** whose corresponding fo:flow objects (in the referring `fo:page-sequence`) are treated as a single `fo:flow` for composition purposes. The target list is a sequence of **region-names** which identify the region or regions on each page which are used for the source content. > Note: This is independent of the actual sequence of pages, which is generated as it has always been generated using the `fo:simple-page-master`, and `fo:page-sequence-master` objects referred to by the `master-reference` property of the `fo:page-sequence`. * For each `fo:flow-assignment` child of the `fo:flow-map`, having an `fo:flow-source-list` child **S** and an `fo:flow-target-list` child **T**, we say that the `fo:flow-map` assigns each of the flows referenced by the `fo:flow-name-specifier` children of **S** to the regions referenced by the `fo:region-name-specifier` children of **T**. #### ~~`fo:flow-assignment`~~ * The `fo:flow-assignment` is used to specify the assignment of one sequence of flows to a sequence of regions. * The `fo:flow-assignment` formatting object generates no area directly. It is used by the fo:page-sequence formatting object to assign flows to regions. * The children of the `fo:flow-assignment` are a source-list and target-list containing constraints for assigning one sequence of flows to a sequence of regions. ##### ~~`fo:flow-source-list`~~ * The fo:flow-source-list is used to specify the sequence of flows to assign in a particular fo:flow-assignment. * The fo:flow-source-list formatting object generates no area directly. It is used by the fo:page-sequence formatting object to assign flows to regions. * The children of the fo:flow-source-list are a sequence of flow-name-specifiers identifying flows of the sequence. These flows must be either all fo:flow formatting objects or all fo:static-content formatting objects. It is an error if they are a mixture. ###### ~~`fo:flow-name-specifier`~~ * The fo:flow-name-specifier is used to specify one flow in a source-list. * The fo:flow-name-specifier formatting object generates no area directly. It is used by the fo:page-sequence formatting object to assign flows to regions. * The flow-name-reference property specifies the name of a flow in the source sequence. ##### ~~`fo:flow-target-list`~~ * The `fo:flow-target-list` is used to specify the sequence of regions to which flows are assigned in a particular `fo:flow-assignment`. * The `fo:flow-target-list` formatting object generates no area directly. It is used by the `fo:page-sequence` formatting object to assign flows to regions. * The children of the `fo:flow-target-list` are a sequence of `fo:region-name-specifiers` identifying regions in the sequence. ###### ~~`fo:region-name-specifier`~~ * The `fo:region-name-specifier` is used to specify one region in a `target-list`. * The `fo:region-name-specifier` formatting object generates no area directly. It is used by the `fo:page-sequence` formatting object to assign flows to regions. * The `region-name-reference` property specifies the name of a region in the target sequence. ## fo:declarations ``` (color-profile)* ``` * 零或多個`fo:color-profile` ### fo:color-profile | Property | Value | Initial | Inherited | Percentages | Media | | - | - | - | - | - | - | | `src` | <uri-specification>或`inherit` | `none` | ❌ | N/A | visual | ## `fo:bookmark-tree` ## `fo:page-sequence` ## `fo:page-sequence-wrapper` ###### tags: `fop` `xsl` `fo`