XSL/CSS Extensions

AH Formatter V6.3 provides you with numerous XSL proprietary extension elements and properties.
When you use the extension elements or properties, please be sure to specify the namespace URL http://www.antennahouse.com/names/XSL/Extensions.

AH Formatter V6.3 also provides a lot of CSS extension. In this document, CSS2.1 or CSS3 properties with restrictions are written together with XSL properties. See also " XSL/CSS Properties List". Although many of CSS3 specifications are included, many of them are in the state before Recommendation. It is safer for these properties of CSS3 specifications to use by adding the -ah- prefix. It is written as (-ah-) in this document. Although the property without adding -ah- will work with AH Formatter V6.3, the specification may change in the future. It is not necessary to add -ah- to the property of Recommendation (or Candidate Recommendation, Proposed Recommendation) such as CSS2.1.
See also Property Value Syntax for more details.

CAUTION:

The AH Formatter V6.3 implementation does not always conform to the CSS3 specification.

Extended Functions

Available to use rgba() function in CSS3 RGBA color values both with CSS and FO. 4 arguments can be given like rgba(<R>,<G>,<B>,<A>). RGBA color values can be expressed by the formats followed by hexadecimal number of 8 digits or 4 digits like #RRGGBBAA or #RGBA.

cmyk()

Available to use cmyk() function. 4 arguments can be given like cmyk(<C>,<M>,<Y>,<K>). cmyk(<C>,<M>,<Y>,<K>) is equivalent to rgb-icc(#CMYK,<C>,<M>,<Y>,<K>).
V6.3

cmyka()

Available to use cmyka() function. 5 arguments can be given like cmyka(<C>,<M>,<Y>,<K>,<A>).
V6.3

Unit of em in the root element. It cannot be used for the value of the font-size property in the root element.

ch

Unit of the length expressing the width of character 0(U+0030) to be 1. When the glyph is not in the font, it becomes 0.5em.

wch

Unit of the length expressing the width of character U+3000 to be 1. When the glyph is not in the font, it becomes 1em.

lh

Unit of the length expressing the line-height to be 1. Even if line-height="2" is specified, for example, lh is converted into the absolute value. It cannot be used for the value of the line-height property.

rlh

Unit of lh in the root element. It cannot be used for the value of the line-height property in the root element.

Other Extensions

In the XSL Specification, the description order of fo:region-* is defined as follows:

(region-body+,region-before?,region-after?,region-start?,region-end?)

However its rendering order is not defined. For this reason, if a part of region overlaps, it's important to determine which region should appear first. (With z-index, the order between region-* cannot be controlled). AH Formatter V6.3 handles the fo:region-* elements in any description order and renders them exactly in that order. If you describe region-body last of all, then the content can be rendered upper than the other region-*.

V6.3

In the XSL Specification, the width of the padding or the border specified to fo:region-body or fo:region-before, etc. should be zero. AH Formatter V6.3 can accept and process values other than zero. The following is sample code.

Document Information for PDF Output

This section describes how to embed document information into PDF file.

<axf:document-info> / HTML <meta>

Document information such as an author and title can be embedded in the PDF.
AH Formatter V6.3 generates document information automatically by adding the following extended elements.
The information that was embedded into PDF can be seen by Adobe Acrobat or Reader.

In HTML, the setting equivalent to axf:document-info can be specified with the <meta> tag.
The setting of <meta name="document-title"> will take precedence over the setting of <title>.

The axf:document-info extension property can be placed as a child of fo:declarations, or as the first child
element of fo:page-sequence (effective only for PDF output in multi separate volume).
Its properties are "name" and "value", both are indispensable.
The value of 'name' must be one of the followings:
The information with * will be outputted either to the first document or all documents generated by multi-volume output by specifying the axf:document-info-include property.
Other information will be always outputted to all documents generated by multi-volume output.

document-title

Specifies the title of the document.

subject

Specifies the subtitle of the document.

author

Specifies the author of the document.

author-titleno-LT

Specifies the title or some keywords of the author.

description-writerno-LT

Specifies the author of the document description.

keywords

Enumerates the comma-deliminated keyword.

copyright-statusno-LT

Specifies the status of the copyright using either of the following.

Unknown

Copyrighted

PublicDomain

Effective with PDF 1.4 or later.

copyright-noticeno-LT

Specifies the information of the copyright.
Effective with PDF 1.4 or later.

copyright-info-urlno-LT

Specifies the URL of the copyright information. This URL is treated just as a character string and the program does not access this URL.
Effective with PDF 1.4 or later.

xmpno-LT

Specifies the URL of XMP. This URL follows <uri-specification> in the XSL specification. See also URI. The following settings become invalid when XMP is specified.

author-title

description-writer

copyright-status

copyright-notice

copyright-info-url

The validity of a XMP file is checked simply whether it is well-formed or not. The contents are not detected. When contradictory or incorrect contents are included, the effect is not guaranteed.
Effective with PDF 1.4 or later.

pagemode*

Specifies the method of the display when the document is opened. The following one can be specified.

UseNone
Neither document outline nor thumbnail images visible

UseOutlines
Document outline visible

UseThumbs
Thumbnail images visible

FullScreen
Full-screen mode, with no menu bar, window
controls, or any other window visible

UseOC
Optional content group panel visible

UseOC can be specified for PDF1.5 or later. The default is UseOutlines when the outline exists.

"document outline" is expressed as "bookmark" in Adobe Acrobat or Reader.

pagelayout*

Specifies the page layout when a document is opened. You can specify either of the followings.

SinglePage
Display one page at a time

OneColumn
Display the pages in one column

TwoColumnLeft
Display the pages in two columns, with odd-numbered pages on the left

TwoColumnRight
Display the pages in two columns, with odd-numbered pages on the right

TwoPageLeft
Display the pages two at a time, with
odd-numbered pages on the left

TwoPageRight
Display the pages two at a time, with
odd-numbered pages on the right

TwoPageLeft and TwoPageRight can be specified for PDF1.5 or later. The default value is SinglePage.

hidetoolbar*

Specifies whether to hide a tool bar or not when a document is opened with the value of true or false. The default value is false.

hidemenubar*

Specifies whether to hide a menu bar or not when a document is opened with the value of true or false. The default value is false.

hidewindowui*

Specifies whether to hide user interface elements (a scroll bar, the control for navigation, etc.)
or not when a document is opened with the value of true or false. The default value is false.

fitwindow*

Specifies whether to change the size of a document window to fit the page size or not when a document is opened with the value of true or false. The default value is false.

centerwindow*

Specifies whether to arrange a document window in the center of a screen or not when a document is opened with the value of true or false. The default value is false.

displaydoctitle*

Specifies whether to display the title of a document or not when a document is opened with the value of true or false. The default value is false. Effective with PDF 1.4 or later.

openaction*

Specifies the address displayed when the document is opened or the action executed. The value similar to <number-with-fragment> of internal-destination can be described here. Refer to Making Link too.
Action with a name and JavaScript can also be specified at this time.

value="#Named=Print"The print dialog will be displayed when the document is opened.

value="#Named=LastPage"The last page is displayed when the document is opened.

# Named coming right after or JavaScript are case insensitive. Actions which can be specified to Named correspond to the menu name of a viewer. The operation in the case where an unknown name is specified to Named, or in the case where the wrong program is specified to JavaScript are not guaranteed.
JavaScript cannot be specified with PDF/A

axf:document-info as a child of fo:page-sequence is effective only for PDF output in multi separate volume.
axf:document-info as a child of fo:page-sequence overwrites axf:document-info as a child of fo:root and is utilized for an information of the document when outputting in separate volume. Therefore the same document information is embedded in all the separate volumes unless axf:document-info is specified to fo:page-sequence.

"openaction" and "pagemode" cannot be specified for the multi separate volume. Only the specification of the right under of fo:root is effective. When the separate volume is outputted, it is specified for the first separate volume.

Effective only when outputting to files. It's not available for printing or stream output.
At that time the file name should be given by GUI, command line parameter or etc.
The file names of separate volumes are given automatically based on the output file names. This process is done by inputting the strings formatted by the format property right before the file extension of the output file name.
In the above example, when document.pdf is given to the file name, PAGE-SEQUENCE-1 and PAGE-SEQUENCE-2 are outputted to document-2.pdf, PAGE-SEQUENCE-3 is outputted to document-3.pdf.

The numeric value applied to the format property can be given by the axf:initial-volume-number property as the initial value.
The format property is the same as "7.26.1. format" in the XSL-FO specification.

Adds each bookmark to each separate volume. Bookmarks are added to the volume where axf:outline-level="1" appears. The bookmark that goes across the volume is added to the previous volume. For that reason, the external link to the other volume may be included even though axf:bookmark-include="separate" is specified.

This property is not available with AH Formatter V6.3 Lite.

axf:document-info-include

Specifies how to include document information in multi separate volume.
no-LT

Value:

first | all

Initial:

first

Applies to:

axf:output-volume-info

Inherited:

no

Percentages:

N/A

Values have the following meanings.

first

Adds document information to the first separate volume.

all

Adds document information to all the separate volumes.

Please refer to <axf:document-info>.
This property is not available with AH Formatter V6.3 Lite.

axf:initial-volume-number

Specifies the initial volume number in multi separate volume.
no-LT

Value:

<number>

Initial:

1

Applies to:

axf:output-volume-info

Inherited:

no

Percentages:

N/A

This value is applied for the format property and utilized for the PDF file name to output. In the following example, the file name of the separate volume is document-2.pdf, document-3.pdf, document-4.pdf,...

<axf:output-volume-info
initial-volume-number="2"
format="-1"
/>

This property is not available with AH Formatter V6.3 Lite.

axf:output-volume-break

Separates the file in multi volume.
no-LT

Value:

true | false

Initial:

false

Applies to:

fo:page-sequence

Inherited:

no

Percentages:

N/A

Values have the following meanings.

true

Separates the volume newly from this fo:page-sequence.

false

Do not separates the volume newly from this fo:page-sequence.

Specifies axf:output-volume-break="true" to fo:page-sequence where you want to start separating the volume. The document number increases one by one.
When separating the volume, axf:output-volume-break="true" is regarded as always being specified to the first fo:page-sequence.
If axf:output-volume-break="false" is specified explicitly, it is ignored.

This property is not available with AH Formatter V6.3 Lite.

axf:output-volume-filename

Specifies the document file name in multi separate volume.
no-LT

Value:

<string>

Initial:

empty string

Applies to:

fo:page-sequence

Inherited:

no

Percentages:

N/A

If nothing specified, the automatic file name using the format property is adopted. If this property is specified, the specified name is adopted. This property is effective only with the top fo:page-sequence or with the fo:page-sequence where axf:output-volume-break="true" is specified.

In the following example, suppose that if document.pdf is specified as the file name of the PDF output, the separated file names will be document-2.pdf, chapterX.pdf, document-4.pdf,...

The original PDF file name cannot be omitted even though axf:output-volume-filename is specified to all the fo:page-sequence.
This property is not available with AH Formatter V6.3 Lite.

Bookmark and Link in PDF Output

This section describes how to create bookmark and link within the PDF file.

Making Bookmark

A PDF document has a function called bookmarks. Bookmarks in Adobe Acrobat or Reader consist of a tree-structured hierarchy which serve as a "visual table of contents," allowing the user to navigate to the target place
by clicking on items.

CAUTION:

A similar function is provided in XSL1.1. Please use fo:bookmark.
However, please use axf:outline-* instead of fo:bookmark when you output PDF in Multi Separate Volume.

AH Formatter V6.3 generates bookmarks automatically by adding the extended properties to the objects to have bookmarks.

The following sample illustrates how to create the bookmark of the above picture.

axf:outline-expand / CSS -ah-outline-expand

The axf:outline-expand specifies whether to display the lower hierarchy of bookmark items or not.

Value:

true | false

Initial:

true

Applies to:

block-level formatting objects

Inherited:

no

Percentages:

N/A

True specifies to display the lower hierarchy in the expanded state. False specifies to display in the collapsed state.
In CSS, (-ah-)bookmark-state is also available.

axf:outline-group / CSS -ah-outline-group

The axf:outline-group groups bookmark items, and outputs them collectively.

Value:

<string>

Initial:

empty string

Applies to:

block-level formatting objects

Inherited:

no

Percentages:

N/A

If this property is omitted or specifies empty string, bookmark items are not grouped.
If this specifies any string, the string is used as the name of group.
The group with the same name is outputted collectively.
The non-grouped bookmark is outputted as the group without the group name.

axf:outline-level / CSS -ah-outline-level

The axf:outline-level indicates the hierarchy level of bookmark items.

Value:

<number>

Initial:

0

Applies to:

block-level formatting objects

Inherited:

no

Percentages:

N/A

The <number> must be a non-negative integer.
Initial value is 0 and it means that bookmarks should not be created.
The highest level of bookmarks is 1 and it becomes 2 or more according to the hierarchy level of the bookmarks.
In CSS, (-ah-)bookmark-level is also available.

axf:outline-title / CSS -ah-outline-title

The axf:outline-title specifies the string which appears as a title of bookmarks.

Value:

<string>

Initial:

empty string

Applies to:

block-level formatting objects

Inherited:

no

Percentages:

N/A

If this property is omitted or has an empty string, the text of the object to which the property is added will become the title.
In other words, the following two samples create the same bookmark.

axf:outline-color / CSS -ah-outline-color

The axf:outline-color specifies the color which appears as a title of bookmarks.
no-LT

Value:

<color>

Initial:

the value of the 'color' property

Applies to:

block-level formatting objects

Inherited:

no

Percentages:

N/A

This property is effective with PDF 1.4 or later.
This property is not available with AH Formatter V6.3 Lite.

axf:outline-font-style / CSS -ah-outline-font-style

The axf:outline-font-style specifies the font style which appears as a title of bookmarks.
no-LT

Value:

normal | italic

Initial:

normal

Applies to:

block-level formatting objects

Inherited:

no

Percentages:

N/A

Values have the following meanings.

normal

Specifies normal style.

italic

Specifies italic.

This property is effective with PDF 1.4 or later.
This property is not available with AH Formatter V6.3 Lite.

axf:outline-font-weight / CSS -ah-outline-font-weight

The axf:outline-font-weight specifies the font weight which appears as a title of bookmarks.
no-LT

Value:

normal | bold

Initial:

normal

Applies to:

block-level formatting objects

Inherited:

no

Percentages:

N/A

Values have the following meanings.

normal

Specifies normal weight.

bold

Specifies bold weight.

This property is effective with PDF 1.4 or later.
This property is not available with AH Formatter V6.3 Lite.

Remarks

These properties have to be created in block areas or inline areas. (fo:block, fo:inline ...) If you specify them in an fo:wrapper, for example, they are not effective.

When the language is not supported in Acrobat and the font that belongs to the unsupported language is specified for the bookmark, there may be a possibility of the font displaying incorrectly in Adobe Acrobat or Reader.

Making Link

In FO, PDF links can be created easily by using fo:basic-link.
In HTML, <a> is used to create links.

PDF links are classified either as an internal link to a specified position in the PDF document, or as an external link to an external document. The internal-destination property of fo:basic-link indicates a link to a position in the same document. The external-destination property indicates a link to an external document. Below are the examples of both.

The external link specified by the local file is transformed into either 'Open the file' or 'World Wide Web link' by the use-launch-for-local-file property in PDF Output Settings. The external link specified by the non-local file
is always transformed into 'World Wide Web link'.

Furthermore, it's possible to specify professional links as follows. For further understanding see also "PDF Reference" by Adobe Systems Incorporated.
The professional links are not available with AH Formatter V6.3 Lite.

Specifies the following actions for the external link explicitly.

Moves the destination inside PDF (GoToR)

Opens the file (Launch)

World Wide Web link (URI)

Possible to specify ID (named destination) for an external link to another PDF.

Possible to specify ID (named destination) for an internal link.

Possible to specify the page number for the external link in PDF.

Possible to specify the page number for the internal link.

Possible to specify the type of destination for the external link.

Possible to specify the type of destination for the internal link.

Possible to specify the external link in the bookmark.

Possible to specify the internal link in the bookmark.

The setting of external-destination for the external link in PDF conforms to the following specification of PDF parameters. Not all the parameters are effective with AH Formatter V6.3. The invalid parameters are ignored.

Only the following parameters are effective with AH Formatter V6.3. The case sensitivity is ignored.

nameddest

page

zoom

view

viewrect

For example, it's invalid to specify fitH, fitR and fitBH for the external link. These are effective only with the internal link. If the required values for the PDF parameters are omitted in fitH, etc., the values are accounted as 0.

With the external link for PDF, it's possible to specify whether to open a new window by the show-destination property. A link destination except PDF is invalid. If show-destination="new" is specified, a new window will be opened and PDF will be displayed on the window. If show-destination="replace" is specified, a new window will not be opened but PDF will be displayed in the current window. When nothing is specified, it depends on the operation of the PDF viewer application. Although it is defined as "replace" in the XSL-FO specification when the property is omitted, AH Formatter V6.3 complies with the specification a little differently.
show-destination property is invalid under the following conditions.

Other than the case that axf:action-type is specified as "gotor" or as "launch" when the link destination is PDF.

In the internal link. There may be a case that an internal link is embedded as an external link when separating the volume. show-destination specified to the internal link is effective only in that case.

AH Formatter V6.3 provides the following extension properties for the professional link.

Opens the link destination by the "GoToR" action as PDF. The URI of the destination is regarded as PDF.

launch

Opens the link destination by the "Launch" action as the file.

uri

Opens the link destination by the "URI" action as URI (World Wide Web).

When the link destination is not a local file, such as http:, the action type is "URI" at any time.
When axf:action-type="auto" specified,
the external link specified by the local file is transformed into either 'Open the file' or 'World Wide Web link' by the use-launch-for-local-file property in PDF Output Settings. The external link specified by the non-local file is always transformed into 'World Wide Web link'.

Specifies the page number of the link destination. This string is simple numeric characters or the following string that combines numeric characters and a fragment with #.
Refer to Making Link for the fragment.

123#zoom=50

The page number also can be specified in the fragment.

#page=123&zoom=50

When the page number is not specified, it is usually regarded as the 1st page. However, when the top position is specified, it is regarded as the head of the page of a block where axf:outline-internal-destination is contained. For example, it is specified as follows.

#view=fit
#view=fith
#zoom=,,0

This property is not available with AH Formatter V6.3 Lite.

ID in the External Link

A link destination is created when axf:destination-type is set and the ID of the destination is specified in the "id" property.

<fo:block id="Chapter6" axf:destination-type="xyz-top">

The ID is specified as nameddest to external-destination when the link destination is referred to from an external link in a different PDF.

ID in the Internal Link

A link destination is created when axf:destination-type is set and the ID of the destination is specified in the "id" property.

<fo:block id="Chapter6" axf:destination-type="xyz-top">

The ID is specified in internal-destination when creating an internal link.

<fo:basic-link internal-destination="Chapter6">

Page Number in the External Link

The page number can be accounted by the page parameter in the URI. If both page and nameddest are specified, nameddest takes priority.
When specifying the page number, the destination information cannot be set to the link destination. Therefore the type of the destination is given by reading the parameter in the URI. The unreadable parameter is discarded.

At that time, this bookmark becomes independent of the block such as fo:block, etc., which the bookmark belongs to.

Remarks

Specify either internal-destination or external-destination.

There may be a case that an internal link is accounted as an external link when separating the multi volume.
At that time, the action type of the link is accounted as axf:action-type="gotor".

When an unintended link is created, please confirm the setting of your PDF viewer application first. For example, in Adobe Reader or Adobe Acrobat, the feature of "Create links from URLs" may create a link automatically.

Annotation in PDF Output

Annotations can be added to PDF with AH Formatter V6.3. See also "PDF Reference" for more details. Annotations which can be specified here are a part of those defined in "PDF Reference".
This function is not available with AH Formatter V6.3 Lite.

axf:annotation-type / CSS -ah-annotation-type

Specifies the type of the annotation.
no-LT

Value:

<string>

Initial:

empty string

Applies to:

all block-level and inline-level formatting objects

Inherited:

no

Percentages:

N/A

Any of the following types of the annotation can be specified.

Empty string

No annotations.

"Text"

Text annotation.

"FreeText"

Free text annotation.

"Stamp"

Rubber stamp annotation.

"FileAttachment"

File attachment annotation.

Character strings are case insensitive.

This property is not available with AH Formatter V6.3 Lite.

axf:annotation-author / CSS -ah-annotation-author

Specifies the author of the annotation.
V6.2MR2no-LT

Value:

<string>

Initial:

empty string

Applies to:

all block-level and inline-level formatting objects

Inherited:

no

Percentages:

N/A

This property is not available with AH Formatter V6.3 Lite.

axf:annotation-title / CSS -ah-annotation-title

Specifies the title of the annotation.
no-LT

Value:

<string>

Initial:

empty string

Applies to:

all block-level and inline-level formatting objects

Inherited:

no

Percentages:

N/A

This property is effective with PDF 1.5 or later.
This property is not available with AH Formatter V6.3 Lite.

axf:annotation-contents / CSS -ah-annotation-contents

Specifies the content of the annotation.
no-LT

Value:

<string>

Initial:

empty string

Applies to:

all block-level and inline-level formatting objects

Inherited:

no

Percentages:

N/A

Specifies the character strings to be displayed when any of the following types of the annotations (axf:annotation-type) is specified.

"Text"

"FreeText"

"Stamp"

"FileAttachment"

This property is not available with AH Formatter V6.3 Lite.

axf:annotation-color / CSS -ah-annotation-color

Specifies the color used for the background of the annotation.
no-LT

Value:

<color> | none

Initial:

none

Applies to:

all block-level and inline-level formatting objects

Inherited:

no

Percentages:

N/A

This property is not available with AH Formatter V6.3 Lite.

axf:annotation-flags / CSS -ah-annotation-flags

Specifies the flag of the annotation.
no-LT

Value:

<string>

Initial:

empty string

Applies to:

all block-level and inline-level formatting objects

Inherited:

no

Percentages:

N/A

Specifies the following character sequences by enumerating using the white space. They are case insensitive.

axf:annotation-open / CSS -ah-annotation-open

Specifies whether it is displayed in the open state when the type of the annotation (axf:annotation-type) is as follows.

"Text"

Values have the following meanings.

true

Displays the annotation in the open state.

false

Displays the annotation in the closed state.

This property is not available with AH Formatter V6.3 Lite.

axf:annotation-icon-name / CSS -ah-annotation-icon-name

Specifies the name of the icon used for displaying the annotation.
no-LT

Value:

<string>

Initial:

empty string

Applies to:

all block-level and inline-level formatting objects

Inherited:

no

Percentages:

N/A

Although arbitrary name can be specified for the icon used for the display of annotations, whether it can be displayed or not depends on the viewer application of a document. The annotation type (axf:annotation-type) shows the standard name which can be specified.

The position specified is the distance from the top edge of the region and is used for the position of pop-up or icons and the position of rubber stamp annotations.

This property is not available with AH Formatter V6.3 Lite.

axf:annotation-width / CSS -ah-annotation-width

Specifies the width of the annotation.
no-LT

Value:

<length> | auto

Initial:

auto

Applies to:

all block-level and inline-level formatting objects

Inherited:

no

Percentages:

N/A

This property is used for the width of pop-up and the width of rubber stamp annotations.

This property is not available with AH Formatter V6.3 Lite.

axf:annotation-height / CSS -ah-annotation-height

Specifies the height of the annotation.
no-LT

Value:

<length> | auto

Initial:

auto

Applies to:

all block-level and inline-level formatting objects

Inherited:

no

Percentages:

N/A

This property is used for the height of pop-up and the height of rubber stamp annotations.

This property is not available with AH Formatter V6.3 Lite.

axf:annotation-font-family / CSS -ah-annotation-font-family

Specifies the font family of the free text annotation.
no-LT

Value:

<string>

Initial:

depends on user agent

Applies to:

all block-level and inline-level formatting objects

Inherited:

no

Percentages:

N/A

This property is not available with AH Formatter V6.3 Lite.

axf:annotation-font-size / CSS -ah-annotation-font-size

Specifies the font size of the free text annotation.
no-LT

Value:

<absolute-size> | <relative-size> | <length> | <percentage>

Initial:

depends on user agent

Applies to:

all block-level and inline-level formatting objects

Inherited:

no

Percentages:

refer to the font size

This property is not available with AH Formatter V6.3 Lite.

axf:annotation-font-weight / CSS -ah-annotation-font-weight

Specifies the font weight of the free text annotation.
no-LT

Value:

normal | bold

Initial:

normal

Applies to:

all block-level and inline-level formatting objects

Inherited:

no

Percentages:

N/A

This property is not available with AH Formatter V6.3 Lite.

axf:annotation-font-style / CSS -ah-annotation-font-style

Specifies whether to make the font of the free text annotation italic.
no-LT

Value:

normal | italic

Initial:

normal

Applies to:

all block-level and inline-level formatting objects

Inherited:

no

Percentages:

N/A

This property is not available with AH Formatter V6.3 Lite.

axf:annotation-text-color / CSS -ah-annotation-text-color

Specifies the color of the free text annotation.
no-LT

Value:

<color>

Initial:

depends on user agent

Applies to:

all block-level and inline-level formatting objects

Inherited:

no

Percentages:

N/A

This property is not available with AH Formatter V6.3 Lite.

axf:annotation-text-align / CSS -ah-annotation-text-align

Specifies the alignment of the free text annotation.
no-LT

Value:

left | center | right

Initial:

left

Applies to:

all block-level and inline-level formatting objects

Inherited:

no

Percentages:

N/A

This property is not available with AH Formatter V6.3 Lite.

axf:annotation-file-attachment / CSS -ah-annotation-file-attachment

Specifies the file with which file attachment annotation is related.
no-LT

Value:

<uri-specification>

Initial:

empty string

Applies to:

all block-level and inline-level formatting objects

Inherited:

no

Percentages:

N/A

This property is not available with AH Formatter V6.3 Lite.

Acroform in PDF Output

It's possible to create PDF forms with AH Formatter V6.3. Forms consist of the field to fill in the text and buttons, etc. Moreover, the action can be specified.
These features are not available in CSS.

When <axf:form-field> is not inside of <axf:form> and action-type is "submit" or "reset", these do not function. <axf:form-field> other than these will work fine regardless of <axf:form>.
This function is not available with AH Formatter V6.3 Lite.

axf:field-description

The string that was specified here as a value is shown as a tooltip with Acrobat etc.

axf:field-value

Specifies the value used when submitting a form field, etc.
no-LT

Value:

<string>

Initial:

empty string

Applies to:

axf:form-field

Inherited:

no

Percentages:

N/A

axf:field-flags

Specifies the flag of the field.
V6.3no-LT

Value:

<string>

Initial:

empty string

Applies to:

axf:form-field

Inherited:

no

Percentages:

N/A

Specifies the following character sequences by enumerating using the white space. They are case insensitive.

ReadOnly : Makes it a read-only field.

Required : Makes it a input-required field.

Hidden : Makes it a hidden field.

This property is not available with AH Formatter V6.3 Lite.

axf:field-default-text

Specifies the text entered into the text field from the beginning.
no-LT

Value:

<string>

Initial:

empty string

Applies to:

axf:form-field

Inherited:

no

Percentages:

N/A

axf:field-multiline

Specifies whether the text field is a single-line enterable field or a multi-line enterable field.
no-LT

Value:

false | true

Initial:

false

Applies to:

axf:form-field

Inherited:

no

Percentages:

N/A

Values have the following meanings.

false

The text field is a single-line enterable field.

true

The text field is a multi-line enterable field.

axf:field-scroll

Specifies whether the text field is scrollable or not.
no-LT

Value:

false | true

Initial:

false

Applies to:

axf:form-field

Inherited:

no

Percentages:

N/A

Values have the following meanings.

false

The text field is not scrollable.

true

The text field is scrollable.

axf:field-password

Specifies whether the text field requires the password or not.
no-LT

Value:

false | true

Initial:

false

Applies to:

axf:form-field

Inherited:

no

Percentages:

N/A

Values have the following meanings.

false

The text field does not require the password.

true

The text field requires the password. Entered characters are shown as *, etc.

axf:field-maxlen

Specifies the maximum number of characters which can be entered into the text field.
no-LT

Value:

<number>

Initial:

0

Applies to:

axf:form-field

Inherited:

no

Percentages:

N/A

When 0 or less is specified, the number of characters is not limited.

CAUTION:

When the maximum number of characters is specified and the number of characters set as initial value of the text field in axf:field-default-text
exceeds the specified maximum number, the initial value will be discarded.

axf:field-format

The setting of the format will differ depending on the type of formats specified by axf:field-format-category. When auto is specified, the default is adopted to all values. In other cases, values of axf:field-format-category can be specified as follows:

number

Values can be specified with a maximum of 5 as follows:

axf:field-format="2 0 1 '$ ' true"

These values have the following meanings in sequence.

The number of digits after the decimal point. (default: 2)

When the inputted value has many digit numbers after the decimal point, it is displayed by rounding off.

How to display numbers with different separators. One of the following values can be specified. (default: 0)

0.

1,234.56

1.

1234.56

2.

1.234,56

3.

1234,56

4.

1'234.56

How to display negative numbers. (default: 0)

0.

No processing.

1.

Display in red.

2.

Display with parentheses.

3.

Display in red with parentheses.

Currency symbol. Any character strings can be specified. (default: empty)

When putting a currency symbol before numbers, it's better to put a white space after the currency symbol like "$ ". When putting it after numbers, put a white space before the currency symbol.

Position of a currency symbol. If true is specified, it is displayed before numbers, if false is specified, it is displayed after numbers. (default: true)

percentage

Values can be specified with a maximum of 2 as follows:

axf:field-format="2 0"

Values have the same meaning as number.

date

Specifies the format by the numerical value or character strings. One of the following numerical values can be specified. (default: 0)

0.

m/d

1.

m/d/yy

2.

mm/dd/yy

3.

mm/yy

4.

d-mmm

5.

d-mmm-yy

6.

dd-mmm-yy

7.

yy-mm-dd

8.

mmm-yy

9.

mmmm-yy

10.

mmm d, yyyy

11.

mmmm d, yyyy

12.

m/d/yy h:MM tt

13.

m/d/yy HH:MM

The following 2 settings have the same meaning.

axf:field-format="2"axf:field-format="'mm/dd/yy'"

Although an arbitrary format can be specified in the character string, the operation when specifying the mistaken format will not be guaranteed. Please refer to the specifications of JavaScript, etc. to learn the meaning of the character in the format.

time

Specifies the format by the numerical value or character strings. One of the following numerical values can be specified. (default: 0)

0.

HH:MM

1.

h:MM tt

2.

HH:MM:ss

3.

h:MM:ss tt

The following 2 settings have the same meaning.

axf:field-format="0"axf:field-format="'HH:MM'"

Although an arbitrary format can be specified in the character string, the operation when specifying the mistaken format will not be guaranteed. Please refer to the specifications of JavaScript, etc. to learn the meaning of the character in the format.

CAUTION:

The specified format might be invalid depending on the version of Acrobat.

axf:field-button-layout

Specifies the positioning between the caption and icon displayed in the push button field.
no-LT

axf:field-button-icon-down

axf:field-button-face-rollover

Specifies the caption displayed when rolling over the push button.
no-LT

Value:

<string>

Initial:

empty string

Applies to:

axf:form-field

Inherited:

no

Percentages:

N/A

axf:field-button-icon-rollover

Specifies the icon displayed when rolling over the push button.
no-LT

Value:

<uri-specification>

Initial:

empty string

Applies to:

axf:form-field

Inherited:

no

Percentages:

N/A

axf:field-checked

Specifies the initial state of the check box and the radio button.
no-LT

Value:

false | true

Initial:

false

Applies to:

axf:form-field

Inherited:

no

Percentages:

N/A

Values have the following meanings.

false

The initial state is unchecked.

true

The initial state is checked.

axf:field-checked-style

Specifies the style of the check box and the radio button.
no-LT

Value:

checkmark | circle | square | cross | star

Initial:

checkmark

Applies to:

axf:form-field

Inherited:

no

Percentages:

N/A

axf:field-top-index

Specifies the first selected item in the list box, combo box.
no-LT

Value:

<number>

Initial:

1

Applies to:

axf:form-field

Inherited:

no

Percentages:

N/A

The specified value indicates what number of <axf:form-field-option> it is. The beginning number is 1. When less than 1 is specified or the specified number exceeds the number of elements contained, the value is regarded as 1.

axf:field-multiple

Specifies whether multiple items can be chosen in the list box.
no-LT

Value:

false | true

Initial:

false

Applies to:

axf:form-field

Inherited:

no

Percentages:

N/A

Values have the following meanings.

false

Multiple items cannot be chosen.

true

Multiple items can be chosen.

axf:field-editable

Specifies whether the value can be edited with the combo box.
no-LT

Value:

false | true

Initial:

false

Applies to:

axf:form-field

Inherited:

no

Percentages:

N/A

Values have the following meanings.

false

The value cannot be edited.

true

The value can be edited.

axf:field-submit-method

Specifies the way to send the information when submitting a form field.
no-LT

Value:

get | post

Initial:

get

Applies to:

axf:form

Inherited:

no

Percentages:

N/A

Values have the following meanings.

get

Sends out a form as GET request.

post

Sends out a form as POST request.

axf:field-submit-coordinates

Specifies whether to send out the coordinates of the mouse when submitting a form field.
no-LT

Value:

false | true

Initial:

false

Applies to:

axf:form

Inherited:

no

Percentages:

N/A

Values have the following meanings.

false

Does not send out the coordinates.

true

Sends out the coordinates.

Form Fields

These are all expressed by the <axf:form-field> extension element. <axf:form-field> is an inline element. Although many common extension properties can be specified to <axf:form-field>, the effective property differs depending on the field type. The size of the field can be specified with the width and the height properties. When omitted, a suitable size will be applied. Below shows the example of the setting for each form field.

Text field

Text field can be specified by field-type="text". The contents are empty. Whether it is a single line or not depends on the setting of field-multiline.

Radio buttons are usually arranged in groups of two or more. The group is identified as a radio button with the same field-name. Users can select only one of the radio buttons. Even if checked="true" is set multiply, only one button in a group is checked.

The status of field-checked="true" is not displayed in GUI.

List Box field

List Box field can be specified by field-type="listbox". <axf:form-field-option> is required for the contents. It should not be empty.
<axf:form-field-option> expresses the contents of the list and these are lined up in the appearance order in the list. Neither the value of field-value nor the content text in <axf:form-field-option> should be empty or white-space characters.

Combo Box field

Combo Box field can be specified by field-type="combobox". <axf:form-field-option> is required for the contents. The contents should not be empty.
<axf:form-field-option> is the same as that of the list box.

Form Actions

Form actions are realized by specifying the event to be triggered and the action corresponding to the event to each field. In AH Formatter V6.3, the action can be specified to the field which is included in <axf:form>. The contents of <axf:form> are arbitrary and generate a block area. Usually, <axf:form-field> is included in <axf:form>.
The form actions include the followings:

Submit

Submit sends out the information by using HTTP. The contents of each field are sent out as GET or the POST request of HTTP. That is, the information is submitted using the same HTTP method of HTML.
The action is generated by releasing the button.

Link

Link cannot be specified to <axf:form> but directly specified to the Button field. The method is the same as that of <fo:basic-link>. The internal link can be specified as follows.
Nothing is specified to action-type.
The action is generated by releasing the button.

<axf:form-field field-type="button" internal-destination="URI" .../>

The external link can be specified as follows. You can specify any one of gotor, launch or uri to action-type.

Multiple layers can be defined by comma-separated items.
<layer-name>, the name which identifies a layer is indispensable with the definition of the layer. Others are omissible. on|off specify the default state of a layer. When omitted, it is considered as on. It is also possible to specify the default state of on/off for every feature of view, print, and export. When locked is specified the layer will be locked. lang specifies the language.

Extension for European Rule

AH Formatter V6.3 provides the extension for adjusting the amount of space before and after the punctuation in European Typography.
Although these features cannot be used as a style in CSS, the setting of <space-end-punctuation> etc. in Option Setting File is effective.

<axf:space-end-punctuation>

Specifies the amount of space end the punctuation.

<axf:space-start-punctuation>

Specifies the amount of space start the punctuation.

<axf:space-between-digit-and-punctuation>

Specifies the amount of space between the digit and the punctuation.

<axf:space-between-punctuation-and-digit>

Specifies the amount of space between the punctuation and the digit.

These extension elements are all empty element and can be put on the right under <fo:declarations>. The area is not generated.
The following properties can be specified.

language

Specifies the language code (RFC3066). It is not possible to omit it.

Value:

<language>

Initial:

N/A

Inherited:

no

Percentages:

N/A

space

Specifies the amount of space. Specification is invalid when 0 or less.

A font specified by <axf:font-face> / @font-face is always embedded. A font with embedding prohibition information cannot be specified.

The following properties can be specified to <axf:font-face> / @font-face.

src

Specifies the font resource.

Value:

[ <uri-specification> [format(<string>)]? | <font-face-name> ]#

Initial:

N/A

Inherited:

no

Percentages:

N/A

URI can be specified to <uri-specification> with the file name of the font, or the url() function.
Also data scheme can be specified to url().
The type of fonts can be specified by the format() function. When omitted, it will be recognized by the extension of the font resource or the media type (content-type) in the data scheme.
Available types are as follows:

The axf:formatter-config extension element can be set as many as you want right under fo:declarations.

The src property can optionally specify the external Option Setting File. It's an additional setting to the original settings and effective only in this FO. It becomes base-uri for the relative path. A part of the element which is the same as %axs-settings under the specified file is evaluated.

Contents:

%axs-settings; is an element which belongs to the name space http://www.antennahouse.com/names/XSL/Settings. The properties in the Option Setting File are included in the name space, however currently only the following elements can be described. The other elements will be disregarded.

In this example, an additional option setting file, add-settings.xml is specified, and then PDF setting is added.

Remarks

Usually, the additional setting by <axf:formatter-config> never influences the formatting process of the following document. However, when the following settings are done by GUI, the additional settings will be reflected on the default settings, then reflected on the formatting of the following document.

The addition option setting information by <axf:formatter-config> is not reflected in the area tree.

Printer Marks

AH Formatter V6.3 can draw printer marks in PDF etc. Since printer marks are drawn outside of the actual page size (trim size) specified with the page-width and page-height properties, they have no effect on the contents of the document.
This function is not available with AH Formatter V6.3 Lite.

Specifies the distance from the physical end to the trim size of the output medium.
no-LT

Value:

<length>

Initial:

0pt

Applies to:

fo:simple-page-master / CSS @page

Inherited:

no

Percentages:

N/A

The trim size is specified by the page-width and page-height properties (CSS size property). crop-offset is for specifying how much the space is taken outside the trim size. In order to specify the same values vertically and horizontally, axf:crop-offset can be used. In order to specify individual values, axf:crop-offset-top, axf:crop-offset-bottom, axf:crop-offset-left, and axf:crop-offset-right can be used. When axf:crop-offset and others are specified simultaneously, individual axf:crop-offset-* properties take priority.

These properties are not available with AH Formatter V6.3 Lite.

axf:crop-area-visibility / CSS -ah-crop-area-visibility

Specifies whether to display the area that is extended beyond the finished page size.
no-LT

Value:

hidden | visible

Initial:

hidden

Applies to:

fo:simple-page-master / CSS @page

Inherited:

no

Percentages:

N/A

Specifies whether the area that overflows on the margin specified with axf:crop-offset is clipped with the finished page size or the extended area is displayed.

The region of the bleed is taken outside the trim size. In order to specify the same values vertically and horizontally, axf:bleed can be used. In order to specify individual values, axf:bleed-top, axf:bleed-bottom, axf:bleed-left, and axf:bleed-right can be used. When axf:bleed and others are specified simultaneously, individual axf:bleed-* properties take priority.

Original printer marks, color bars, etc. can be outputted by specifying images, such as SVG. two or more URIs can be specified.

Crop marks becomes what unites the inner printer marks (crop marks) and the outside printer marks (bleed marks) when there is specification of axf:bleed.

This property is not available with AH Formatter V6.3 Lite.

axf:printer-marks-line-color / CSS -ah-printer-marks-line-color

Specifies the line color of printer marks.
no-LT

Value:

<color> | auto

Initial:

auto

Applies to:

fo:simple-page-master / CSS @page

Inherited:

no

Percentages:

N/A

When the value is auto, the color is regarded as the registration color.

This property is not available with AH Formatter V6.3 Lite.

axf:printer-marks-line-length / CSS -ah-printer-marks-line-length

Specifies the line length of printer marks.
no-LT

Value:

<length> | auto

Initial:

auto

Applies to:

fo:simple-page-master / CSS @page

Inherited:

no

Percentages:

N/A

When the value is auto, the length depends on the system setting.
The default length of a printer mark is 10mm, it can be adjusted in the Option Setting File.

This property is not available with AH Formatter V6.3 Lite.

axf:printer-marks-line-width / CSS -ah-printer-marks-line-width

Specifies the line width of printer marks.
no-LT

Value:

<length> | auto

Initial:

auto

Applies to:

fo:simple-page-master / CSS @page

Inherited:

no

Percentages:

N/A

When the value is auto, the width depends on the system setting.
The default width of a printer mark is 0.24pt, it can be adjusted in the Option Setting File.

This property is not available with AH Formatter V6.3 Lite.

axf:printer-marks-zero-margin / CSS -ah-printer-marks-zero-margin

Specifies the margin between the page and the printer marks when
bleed is 0.
no-LT

Value:

<length> | auto

Initial:

auto

Applies to:

fo:simple-page-master / CSS @page

Inherited:

no

Percentages:

N/A

When the value is auto, the margin depends on the system setting.
The default margin is 3mm, it can be adjusted in the Option Setting File.

This property is not available with AH Formatter V6.3 Lite.

axf:printer-marks-spine-width / CSS -ah-printer-marks-spine-width

Specifies the spine width of the facing page.
no-LT

Value:

<length>

Initial:

0pt

Applies to:

fo:simple-page-master / CSS @page

Inherited:

no

Percentages:

N/A

When a value greater than 0pt is specified, the printing image is assumed to be constructed as facing pages, the center mark of the spine will be outputted as a spine-width printer mark.

This property is not available with AH Formatter V6.3 Lite.

Printing Control

axf:printer-bin-selection / CSS -ah-printer-bin-selection

Selects the printer tray.
no-LT

Value:

<string> | <integer>

Initial:

Depends on the environment

Applies to:

fo:page-sequence / CSS :root element

Inherited:

no

Percentages:

N/A

Effective only with the Windows version and functions when outputting to a printer. Whether it is effective also depends on a printer. What can be specified by the character string is the tray name which comes out in each printer setting dialog. This is the tray name acquired from a printer driver. The specified name which does not match to the tray name acquired from a printer driver is invalid. The specified integer needs to match to the tray number acquired from a printer driver.

This property is not available with AH Formatter V6.3 Lite.

axf:printer-duplex / CSS -ah-printer-duplex

Specifies to print in duplex mode.
no-LT

Value:

<integer>

Initial:

Depends on the environment

Applies to:

fo:page-sequence / CSS :root element

Inherited:

no

Percentages:

N/A

Effective only with the Windows version and functions when outputting to a printer. Whether it is effective also depends on a printer. Specify the value which is specified by the printer driver. Most printers support following integer values.

Simplex Printing.

Duplex Printing. Flip on Long Edge.

Duplex Printing. Flip on Short Edge.

See also SeparatePrinterDuplexJob in the Option Setting File.
This property is not available with AH Formatter V6.3 Lite.

axf:overprint / CSS -ah-overprint

Specifies the overprint.
V6.2MR2no-LT

Value:

auto | <overprint>#

Initial:

auto

Applies to:

all formatting objects

Inherited:

yes

Percentages:

N/A

<overprint>

=

<opcolor> [[stroke || paint || [full | nonzero]] | none]?

<opcolor>

=

<color> | k100 | separation | all

Values have the following meanings.

auto

The setting of the overprint in the Option Setting File is adopted.
If you specify overprint="k100" in the Option Setting File, even if nothing is specified in FO, black overprinting will be done on all pages.

<color>

Specifies a color you want to apply the overprint. A color with alpha value cannot be specified.

k100

Applies the overprint to rgb-icc(#CMYK,0,0,0,1).

separation

Applies the overprint to the separation color shown rgb-icc (#Separation). The registration color is not included.

all

Applies the overprint to all colors except for a color with alpha value.

stroke

Applies the overprint for the line stroke.

paint

Applies the overprint for the paint.

full

nonzero

Specifies the operation in case the color ingredient is 0 when applying the overprint. When full is specified, the color ingredient is set to 0, when nonzero is specified, the color ingredient is not changed. (It is considered as no color).
This setting is effective only with CMYK.

none

The overprint is not applied.

If you specify only the color as follows;

axf:overprint="<color>"

it is considered as follows;

axf:overprint="<color> stroke paint nonzero"

In addition, when neither stroke nor paint is specified, it is considered that stroke and paint are specified. Please specify none to remove them from the overprint.

axf:overprint="k100, rgb-icc(#CMYK,0,0,0,1) stroke full, all paint"

As specified above, when a certain color can be interpreted as multiple settings, the settings will be investigated in the following order and the first matched setting will be adopted.

<color>

k100

separation

all

The effect of the overprint varies by the actual printing environment, in relation between the background color and the foreground color with overprint specified. The effect of the typical overprint by the color space is shown below.
When rgb-conversion="cmyk" is specified in the Option Setting File, RGB serves as CMYK.

The overprint is effective only with the PDF output. It is invalid when printing to paper directly. Also it is not applied to shading and the form field.

CAUTION:

The setting does not affect on the embedded PDF. Please create PDF by specifying the overprint before embedding it.

This property is not available with AH Formatter V6.3 Lite.

Page Control Extensions

axf:repeat-page-sequence-master

The axf:repeat-page-sequence-master specifies the repetition of the page sequence.
no-LT

Value:

true | false

Initial:

false

Applies to:

fo:page-sequence-master

Inherited:

no

Percentages:

N/A

When the value is true, if the page output reaches in the end of fo:page-sequence-master and the page which should still be outputted remains, page output repeats from the start of fo:page-sequence-master.

This property is not available with AH Formatter V6.3 Lite.

axf:reverse-page / CSS -ah-reverse-page

Outputs pages in reverse order.
no-LT

Value:

true | false

Initial:

false

Applies to:

fo:page-sequence

Inherited:

no

Percentages:

N/A

Values have the following meanings.

true

Outputs pages in reverse order.

false

Outputs pages in order.

Specifies whether to output pages within fo:page-sequence in reverse order. This setting does not cover all the output destinations. Effective only with PDF output. PDF output in multi separate volume is not available.
In case of CSS, this setting can be specified for the <html> element only.

This property is not available with AH Formatter V6.3 Lite.

Block Extensions

axf:suppress-if-first-on-page / CSS -ah-suppress-if-first-on-page

axf:suppress-if-first-on-page specifies whether to suppress the block at the beginning of a page.
no-LT

Value:

false | true

Initial:

false

Applies to:

fo:block, fo:block-container

Inherited:

no

Percentages:

N/A

Values have the following meanings.

false

Does nothing.

true

Suppresses a block when it comes at the beginning of a page. Since it is actually not deleted but exists without display as a block of size zero, it's effective to refer to ID, etc.

Clears the baseline grid and the content will not align with a baseline grid.

new

Sets a new baseline grid. The new baseline grid is established by using the font and the line-height settings of this element.

root

Sets the baseline grid defined by the root element. The root baseline grid is defined by using the font and the line-height settings of the root element.

Inside the area line that a baseline grid is set, the lines are aligned with baselines on the baseline grid. Half-leading is not added before the first line and after the last line so that the em-box edges are aligned with the before and after edges of the content box.

The baseline grid is not available in the area with display-align other than auto.

CJK Nonstarter characters (prolonged sound mark, small hiragana
letters, small katakana letters, and iteration marks) defined in
JIS X 4051:2004 are not treated as Nonstarter characters.
Characters marked with [NS] in the following list are processed.

strict

CJK Nonstarter character is treated.
Characters marked with [NS] and [JIS] in the following list are processed.

The characters included in <string> can be appended to the non-starter-characters. If the specified characters are
also specified in axf:except-non-starter-characters as well in the same tag, the effect could be wrong.
White spaces are disregarded even though they are specified.
Closing parentheses and punctuation marks are automatically treated as except-non-starter characters without adding them.
The initial value of non-starter-characters can be set by append-non-starter-characters in the Option Setting File.

The characters included in <string> can be eliminated from the non-starter-characters. If the specified characters are also specified to axf:append-non-starter-characters in the same tag as well, the effect is not guaranteed.
White spaces are disregarded even though they are specified.
The initial value of non-starter-characters can be set by append-non-starter-characters in the Option Setting File.

The characters included in <string> can be appended to the non-end-of-line-characters. If the specified characters are also specified to axf:except-non-end-of-line-characters as well in the same tag, the effect could be wrong.
White spaces are disregarded even though they are specified.
Opening parentheses etc. are automatically treated as except-non-end-of-line characters without adding them.
The initial value of non-end-of-line-characters can be set by append-non-end-of-line-characters in the Option Setting File.

The characters included in <string> can be eliminated from the non-end-of-line-characters. If the specified characters are also specified to axf:append-non-end-of-line-characters in the same tag as well, the effect is not guaranteed.
White spaces are disregarded even though they are specified.
The initial value of non-end-of-line-characters can be set by append-non-end-of-line-characters in the Option Setting File.

axf:abbreviation-character-count controls the line break of the abbreviation delimited by U+002F or /. In general, the line break occurs with km/h or w/o, etc. because the position right after / is the target for the line break and it's not desirable. In UAX#14: Line Breaking Properties, it is written to avoid splitting in such cases. In AH Formatter V6.3, when the number of characters of the word right after / is less than or equal the specified number with axf:abbreviation-character-count, the word is considered as the abbreviation and the line does not break. The same behavior is also applied to the hyphenation. Only when the string is one of the following scripts, it is considered as an abbreviation.

Latn

Cyrl

Grek

Zyyy

The axf:abbreviation-character-count must be an integer number of 0 or more. 0 does not control over the abbreviation. In addition, when the line overflows without finding the line break position, the line break may forcibly occur right after /.

The axf:hyphenation-info extension element can be set as many as you want right under fo:declarations.

The language property is indispensable to indicate which language this element is associated with. It is not available to do hyphenation if the specified language is originally not hyphenated. This setting is invalid for Thai.

The src property can optionally specify the exception dictionary. It's an additional setting to the original dictionary and effective only in this FO. There is no language dependency constraint for the file name unlike the original dictionary. It is a relative base-uri for the relative path. It's not a relative path to the environment valuable of the hyphenation dictionary. <exceptions> in the specified dictionary is evaluated. When multiple words of the same spelling are registered, the information on the last registered word becomes effective.

Contents:

%axs-settings; is an element which belongs to the name space http://www.antennahouse.com/names/XSL/Hyphenations. The elements in the Hyphenation Exception Dictionary are included in the name space, however currently only <exceptions> (and its child element, <hyphen>) can be described.

In this example, an additional exception dictionary, en-add.xml is specified for English language, and then the exception hyphenation is specified for the word spelled abcdefg.

CAUTION:

In the example above, do not use the following setting. (<hyphen/> is disregarded).

abc<hyphen/>defg

Instead, please make sure to specify

abc<axh:hyphen/>defg

Output Glyph by SOFT HYPHEN

Generally SOFT HYPHEN (U+00AD) is displayed only when the line breaks and is not displayed when the line does not break. However in this processing, it is often the case that the glyph assigned to U+00AD may not be printed when the fonts such as pictographic characters are used.

AH Formatter V6.3 implements the extension property axf:soft-hyphen-treatment which makes it possible to eliminate this problem.

Punctuation characters (open parenthesis etc.) at start of line are trimmed.

start-except-first

Same as the start value except for a start line of a paragraph or a line right after the forced line break.

end

When text-align="right" or text-align="justify" (or text-align-last="justify") is specified and full width punctuation marks (closing parenthesis etc.) come to the end of the sentence, the character is treated as half width forcibly.

allow-end

When text-align="right" or text-align="justify" (or text-align-last="justify") is specified and full width punctuation marks (closing parenthesis etc.) come to the end of the sentence, characters are treated as full width if text fits into one line, characters are treated as half width if text does not fit into one line.

end-except-fullstop

Behaves as the same as the end value except for the following two characters.

U+3002

IDEOGRAPHIC FULL STOP

。

U+FF0E

FULLWIDTH FULL STOP

．

adjacent

The space between a full width punctuation and a full width character in Japanese is trimmed.

Between full width close parenthesis and full width open parenthesis.

Between full width close parenthesis and full width close parenthesis.

Between full width close parenthesis and full width middle dots.

Between full width close parenthesis and full width space.

Between full width close parenthesis and full width non punctuation characters.

Between full width open parenthesis and full width open parenthesis.

Between full width middle dots and full width open parenthesis.

Between full width space and full width open parenthesis.

Between full width non punctuation character and full width open parenthesis.

Full width punctuation characters are treated the same as full width close parenthesis. The adjacent value is equivalent to axf:kerning-mode="contextual" with XSL Formatter V4.

all

Trim all parentheses, middle dots, and punctuations of full width and treat them as half width.

<string>

Behave the same as all, but only the character included in the character strings specified here is treated as a half width. Other than parentheses, middle dots, and punctuations of full width are disregarded.

auto

Dependent on the system setting.
It is regarded as "none" or "start end adjacent" by punctuation-trim in the Option Setting File.

Full width punctuation open parenthesis processed by axf:punctuation-trim are:

U+2018

LEFT SINGLE QUOTATION MARK

‘

U+201C

LEFT DOUBLE QUOTATION MARK

“

U+3008

LEFT ANGLE BRACKET

〈

U+300A

LEFT DOUBLE ANGLE BRACKET

《

U+300C

LEFT CORNER BRACKET

「

U+300E

LEFT WHITE CORNER BRACKET

『

U+3010

LEFT BLACK LENTICULAR BRACKET

【

U+3014

LEFT TORTOISE SHELL BRACKET

〔

U+3016

LEFT WHITE LENTICULAR BRACKET

〖

U+3018

LEFT WHITE TORTOISE SHELL BRACKET

〘

U+301A

LEFT WHITE SQUARE BRACKET

〚

U+301D

REVERSED DOUBLE PRIME QUOTATION MARK

〝

U+FF08

FULLWIDTH LEFT PARENTHESIS

（

U+FF3B

FULLWIDTH LEFT SQUARE BRACKET

［

U+FF5B

FULLWIDTH LEFT CURLY BRACKET

｛

U+FF5F

FULLWIDTH LEFT WHITE PARENTHESIS

Full width punctuation close parenthesis processed by axf:punctuation-trim are:

U+2019

RIGHT SINGLE QUOTATION MARK

’

U+201D

RIGHT DOUBLE QUOTATION MARK

”

U+3009

RIGHT ANGLE BRACKET

〉

U+300B

RIGHT DOUBLE ANGLE BRACKET

》

U+300D

RIGHT CORNER BRACKET

」

U+300F

RIGHT WHITE CORNER BRACKET

』

U+3011

RIGHT BLACK LENTICULAR BRACKET

】

U+3015

RIGHT TORTOISE SHELL BRACKET

〕

U+3017

RIGHT WHITE LENTICULAR BRACKET

〗

U+3019

RIGHT WHITE TORTOISE SHELL BRACKET

〙

U+301B

RIGHT WHITE SQUARE BRACKET

〛

U+301E

DOUBLE PRIME QUOTATION MARK

〞

U+301F

LOW DOUBLE PRIME QUOTATION MARK

〟

U+FF09

FULLWIDTH RIGHT PARENTHESIS

）

U+FF3D

FULLWIDTH RIGHT SQUARE BRACKET

］

U+FF5D

FULLWIDTH RIGHT CURLY BRACKET

｝

U+FF60

FULLWIDTH RIGHT WHITE PARENTHESIS

Full width punctuations processed by axf:punctuation-trim are:

U+3001

IDEOGRAPHIC COMMA

、

U+3002

IDEOGRAPHIC FULL STOP

。

U+FF0C

FULLWIDTH COMMA

，

U+FF0E

FULLWIDTH FULL STOP

．

Full width middle dots processed by axf:punctuation-trim are:

U+30FB

KATAKANA MIDDLE DOT

・

U+FF1A

FULLWIDTH COLON

：

U+FF1B

FULLWIDTH SEMICOLON

；

CAUTION:

To make the behavior of axf:punctuation-trim="both" in XSL Formatter V4 the same, please specify axf:punctuation-trim="start end" or axf:punctuation-trim="start allow-end" in AH Formatter V6.3. In addition, if you use this extension together with axf:kerning-mode="contextual", please specify axf:punctuation-trim="start end adjacent" etc. with AH Formatter V6.3.

Uses the best text justification method for the script. For instance, in case of Japanese Kanji, Hiragana and Katakana, spaces between letters are expanded. In case of Arabic scripts, Kashida is used while spaces between words are expanded for the other scripts.

Hangs punctuations at the start of the line. If the target character for hanging comes to the start of the line, the character is hanged forcibly.

first

Behaves as the same as the start value only with the start line of a paragraph.

force-end

Hangs punctuations at the end of the line. When text-align="right" or text-align="justify" (or text-align-last="justify") is specified and a target character for hanging comes to the end of the sentence, the character is hanged forcibly. When anything else is specified to text-align, the character is hanged naturally.

allow-end

Hangs punctuations at the end of the line. When text-align="right" or text-align="justify" (or text-align-last="justify") is specified and a target character for hanging comes to the end of the sentence, the character is not hanged if text fits into one line, the character is hanged if text does not fit into one line. When anything else is specified to text-align, the character is hanged naturally.

last

Behaves the same as the force-end value only with the end of the line of a paragraph.

The target punctuation marks is as follows.

force-end, allow-end
Japanese or Simplified Chinese

U+3001

IDEOGRAPHIC COMMA

、

U+3002

IDEOGRAPHIC FULL STOP

。

U+FF0C

FULLWIDTH COMMA

，

U+FF0E

FULLWIDTH FULL STOP

．

Traditional Chinese

U+FE50

SMALL COMMA

﹐

U+FE51

SMALL IDEOGRAPHIC

﹑

U+FE52

SMALL FULL STOP

﹒

U+FF64

HALFWIDTH IDEOGRAPHIC COMMA

､

Other languages

Same as the last value.

last
quotation marks, closing parentheses, period, comma and hyphen

start, first
quotation marks, closing parentheses and bullet

axf:avoid-widow-words / CSS -ah-avoid-widow-words

The axf:avoid-widow-words specifies spacing behavior between words or characters so that the last line of the paragraph does not have only one word left (one character for CJK).

Value:

true | false

Initial:

false

Applies to:

fo:block

Inherited:

yes

Percentages:

N/A

Values have the following meanings.

true

Adjusts the spacing so that the last line of the paragraph does not have only one word left (one character for CJK) when the spacing behavior is available by trimming the space between Japanese characters or Western words. When axf:text-justify-trim="auto" is specified, it is regarded as "ideograph inter-word" is specified.

false

Does nothing.

If the width of columns (length of the line) is short, it is not so effective because there is not enough space to run on. In addition, in case there is no room for a word to be placed at the end of the line, axf:avoid-widow-words has no effect. Please note that there may have no more space to trim by setting axf:punctuation-trim or axf:text-justify-trim.
With non-CJK languages, adjusting by sending a character to the next will not be done.

Space is added between ideograph character and non-ideographic number character. Non-ideographic number character mentioned here indicates the character
of Nd classified by Unicode and the non-full-width character.

ideograph-alpha

Space is added between ideograph character and non-ideographic alphabet character. Non-ideographic alphabet character mentioned here indicates the character of Lu, Ll, Lt and Lm classified by Unicode.

ideograph-parenthesis

Space is added between ideograph character and non-ideographic parenthesis character. However space is not added between ideograph character and non-ideographic closing parenthesis or between non-ideographic opening parenthesis and ideograph character.

auto

Dependent on the system setting. It's regarded as "none" or "ideograph-numeric ideograph-alpha" according to the setting.

axf:letter-spacing-side / CSS -ah-letter-spacing-side

Specifies on which side of the character the space by letter-spacing is distributed.

Value:

both | start | end

Initial:

both

Applies to:

inline-level formatting objects

Inherited:

yes

Percentages:

N/A

Values have the following meanings.

both

Half the amount of space is distributed on both side of the character for each.

start

The space is distributed only on the start side of the character.

end

The space is distributed only on the end side of the character.

axf:auto-letter-spacing / CSS -ah-auto-letter-spacing

Changes letter-spacing depending on the number of characters.
no-LT

Value:

[ none | <length> | <percentage> ]*

Initial:

none

Applies to:

inline-level formatting objects

Inherited:

no

Percentages:

refer to the font size

Values have the following meanings.

none

Does not specify letter-spacing.

Values can be enumerated corresponding to the number of characters of 2 or more. For example, if specified as follows;

axf:auto-letter-spacing="2em 1em 0.5em 0.25em"

when the number of characters in this FO is 2, then letter-spacing="2em" is applied. When 3 characters, then letter-spacing="1em" is applied. When 4 characters, then letter-spacing="0.5em" is applied. When 5 characters, then letter-spacing="0.25em" is applied. Nothing is done with the other numbers of characters. Only the characters included in the first in-line element is counted.

This property is defined mainly assuming the chapter in CJK. In the following case,

Although the specification of <string> to fo:table-cell aligns the character position of decimal point, etc., there is no definition for the alignment of the whole character string. At a default, AH Formatter V6.3 displayed it right aligned according to the illustration of 17.5.4 Horizontal alignment in a column. AH Formatter V6.3 extends the alignment and makes it possible to align left or align center

Indicates the percentage of white space and Kashida. If the value is 0%, Kashida is not inserted and only the white space expands as well as the normal justification. If the value is 100%, Kashida is inserted as much as possible. The value should be from 0% to 100%.

auto

Dependent on the system setting.

The initial value of the percentage can be set by text-kashida-space in the Option Setting File.

axf:justify-nbsp / CSS -ah-justify-nbsp

Specifies whether to justify NON-BREAKING SPACE or not.

Value:

true | false

Initial:

true

Applies to:

all formatting objects

Inherited:

yes

Percentages:

N/A

Values have the following meanings.

true

NON-BREAKING SPACE is included for justification.

false

NON-BREAKING SPACE is not included for justification.

Generally, NON-BREAKING SPACE (U+00A0) is intended for justification. The axf:justify-nbsp property can be used when you want to check off U+00A0 form justification.

axf:indent-here / CSS -ah-indent-here

Aligns the indent position to the region position when a line break occurs.
no-LT

Value:

none | <length>

Initial:

none

Applies to:

fo:inline

Inherited:

no

Percentages:

N/A

Values have the following meanings.

none

Nothing is done.

<length>

Aligns the indent position to the shifted position by <length> from the beginning of the specified line area.

In order to indent lines, specify <fo:inline> which contains this property as follows. The start position of <fo:inline> becomes the standard of indentation.

Tab

In case of FO, the tab character (U+0009) will be normalized to the white space (U+0020); therefore, the character normally has a meaning of just a white space. However, there are a lot of document structures that the tab character aligns the text, such as JIS X 4051:2004. AH Formatter V6.3 provides the extension that enables to express the tab structure.

CAUTION:

A line which contains a tab will be forced to text-align="start".

CAUTION:

We cannot guarantee the best result of a tab processing in case a text requires the BIDI processing.

<axf:tab>

Common Usage:

Places a white space up to a tab stop position.
Please specify the tab stop position with axf:tab-stops.
V6.3no-LT

Areas:

Generates and returns
a single normal inline-area.

Contents:

EMPTY

This element is not equivalent to <fo:character character="&#9;/>. For <fo:character>, all the properties related to a white space such as white-space-collapse and white-space-treatment are applied.

This element is not available with AH Formatter V6.3 Lite.

axf:tab-align

Specifies the tab alignment at the tab stop position.
V6.3no-LT

Value:

auto | start | center | end | left | right | decimal | <string>

Initial:

auto

Applies to:

axf:tab

Inherited:

no

Percentages:

N/A

Values have the following meanings.

auto

The alignment of the tab stop position is regarded as what is specified in axf:tab-stops.

start

Aligns the start of the string to the tab stop position.

center

Aligns the center of the string to the tab stop position.

end

Aligns the end of the string to the tab stop position.

left

Aligns the left side of the string (the top of the string in case of vertical writing) to the tab stop position. Same as start above in case of writing-mode="lr-tb" and "tb-rl".

right

Aligns the right side of the string (the bottom of the string in case of vertical writing) to the tab stop position. Same as end above in case of writing-mode="lr-tb" and "tb-rl".

decimal

Regarded that “.” is specified.

<string>

Aligns the start of the string to the tab stop position as specified. For instance, when axf:tab-align="." is specified, alignment will be made as below:

1

.

2345

123

.

45

12345

.

12345

This property is not available with AH Formatter V6.3 Lite.

axf:tab-stops

Specifies the tab stop.
V6.3no-LT

Value:

[ [ <tab-align>? [ <length> | <number> ] ]* [ <tab-align>? eol ]? ]!

Initial:

8

Applies to:

all block-level formatting objects

Inherited:

yes

Percentages:

N/A

<tab-align>

=

start | center | end | left | right | decimal | <string>

Values have the following meanings.

<tab-align>

Specifies the alignment of the tab stop position. When omitted, it will be regarded that this alignment is same as that of the previous tab stop position. When omitted at the start of the line, the value will be regarded as start. For details, please refer to axf:tab-align.

<length>

Specifies the tab length.

<number>

Regards the specified number of the white space characters (U+0020) as the tab length.

eol

Regards that the tab stop position is placed at the end of the line. However, when the previous tab specification already exceeded the end of the line, it will be regarded that the tab stop position is always placed at the end of the line.

The tab length to be specified will be the distance added from the start of the reference area. You cannot specify a negative value.
When eol is not specified, it will be regarded that the tab length is repeatedly specified until the last value reaches the end of the line. However, when this value is 0, the tab will be ignored.
For instance, specify as below:

axf:tab-stops="80pt decimal 40pt end 8 eol"

In case of CSS, tab-size:8 is equivalent to axf:tab-stops="8".

This property is not available with AH Formatter V6.3 Lite.

axf:tab-treatment

Specifies the method to treat the tab character (U+0009).
V6.3no-LT

Value:

<number> | preserve

Initial:

4

Applies to:

fo:block, fo:character

Inherited:

yes

Percentages:

N/A

Values have the following meanings.

<number>

Treated as the specified number of the white space characters (U+0020). You cannot specify a negative value.
This white space is subject to processing of white-space-treatment and white-space-collapse, etc.

The underline is placed on the automatically adjusted position. The specification of axf:vertical-underline-side in vertical writing mode is effective.

before-edge

The underline is placed on the before-edge. When <percentage> or <length> is not specified, the upper end of the height of an underline is placed on the before-edge. When <percentage> or <length> is specified, the center of the height of an underline is placed on the before-edge.

alphabetic

The underline is placed on the position of the baseline. When <percentage> or <length> is not specified, the upper end of the height of an underline is placed on the baseline. When <percentage> or <length> is specified, the center of the height of an underline is placed on the baseline.

after-edge

The underline is placed on the after-edge. When <percentage> or <length> is not specified, the upper end of the height of an underline is placed on the after-edge. When <percentage> or <length> is specified, the center of the height of an underline is placed on the after-edge.

<percentage>

<length>

The underline position is shifted by the specified amount. When the underline is placed on the right side by axf:vertical-underline-side, it is moved to the opposite direction of the left side.

axf:vertical-underline-side / CSS -ah-vertical-underline-side

The axf:vertical-underline-side specifies on which side of the text to put underline in vertical writing-mode.

Value:

left | right | depend-on-language | auto

Initial:

auto

Applies to:

all block-level and inline-level formatting objects

Inherited:

yes

Percentages:

N/A

Values have the following meanings.

left

The underline is placed on the left side.

right

The underline is placed on the right side.

depend-on-language

The underline is placed on the right side when the language property is Japanese(jpn) or Korean(kor). The underline is placed on the left side when the language property is other than Japanese(jpn) or Korean(kor).

When axf:vertical-underline-side="auto" is specified and the initial value of the system is also auto, the underline is placed on the right side when the language property is Japanese(jpn) or Korean(kor). The underline is placed on the left side when the language property is other than Japanese(jpn) or Korean(kor). If there is no language properties specified, it depends on the Default CJK language setting.

axf:text-combine-horizontal is applied before axf:text-orientation or text-transform, etc. The removable white space placed before and after the character string targeted for horizontal-in-vertical composition will be removed.

When digits is specified to axf:text-combine-horizontal and axf:text-orientation="upright" is also specified, the following behaviors are applied to the sequence of numbers targeted for horizontal-in-vertical composition that are shorter than <integer>, that has adjacent decimal point.

U+002E and U+FF65 are regarded as decimal points.

A sequence of numbers targeted for horizontal-in-vertical composition after the decimal point will not be set to horizontal-in-vertical composition. However, the decimal point will be transferred to U+FF65.

When the decimal point comes after a sequence of numbers targeted for horizontal-in-vertical composition, the sequence of numbers will be set to horizontal-in-vertical composition. The decimal point will be transferred to U+FF65.

The figure on the right shows the example of the horizontal-in-vertical composition set to "12.34" automatically.

Automatic horizontal-in-vertical composition is not recommended to use in any other way than axf:text-orientation="upright".

Automatic horizontal-in-vertical composition is invalid in the following cases. Emphasis marks in horizontal-in-vertical composition will be deleted.

In horizontal writing mode (includes the case where the value for axf:text-orientation is sideways in horizontal-in-vertical composition)

When languages other than CJK are specified

Within ruby

Character strings generated dynamically, such as <fo:page-number>

This property is not available with AH Formatter V6.3 Lite.

Emphasis Marks

AH Formatter V6.3 is capable of applying emphasis marks to the character string. However, emphasis marks cannot be applied to an arbitrary script. Only to the following scripts in addition to CJK are available.

Latn

Cyrl

Grek

Zyyy

It's not available to apply emphasis marks to the ruby characters, though it is available to apply to ruby's base characters.

As for the glyph of the emphasis mark in the general font, the size of glyph image is various, you will need to adjust the position and size according to the emphasis mark you use.

axf:text-emphasis-offset / CSS -ah-text-emphasis-offset

Specifies the space between emphasis marks and the base characters.

Value:

<number> | <length> | <percentage>

Initial:

0pt

Applies to:

all elements

Inherited:

yes

Percentages:

refer to the font size

When specified using <number>, the value is what is obtained by multiplying text-emphasis-font-size by the specified <number>. When ruby and emphasis marks are put on the same side, it is adjusted to the larger one of the specified value and the ruby height.

The first <length> is an offset of a horizontal shadow. It becomes a right-side shadow of a region when a positive value is specified. It becomes a left-side shadow of a region when a negative value is specified.

The second <length> is an offset of a vertical shadow. It becomes a bottom-side shadow of a region when a positive value is specified. It becomes a top-side shadow of a region when a negative value is specified.

3rd <length> starts blurring from the position where the region is extended. This setting is ignored with AH Formatter V6.3.

The color of the shadow can be specified by <color>.

This combination can be specified multiply and shadows can be added several times over.
This property is not available with AH Formatter V6.3 Lite.

CAUTION:

With text-shadow, characters are reproduced and drawn several times over. The problem of accessibility may occur with Tagged PDF.

Depends on the value of normalize specified to the Option Setting File.

none

Does not normalize text.

nfc

Performs NFC.

nfkc

Performs NFKC.

nfd

Performs NFD.

nfkd

Performs NFKD.

Specifies whether the normalization defined in UAX#15: Unicode Normalization Forms is performed. The normalization is performed to the character strings described in the text area.
If you use only the normalized code from the start, it is not necessary to specify the normalization. If not, the normalization by NFC will be a good choice for practical use.

The first pair of character strings is replaced by the latter character strings. You have to specify a character string by a pair. It is not replaced when character strings are odd pieces or the first character string is empty. White space characters will be replaced after being processed by white-space-treatment, etc.

When it is simultaneously specified with text-transform or axf:number-transform, axf:text-replace will be evaluated at the end.

Only with the vertical writing, such as writing-mode="tb-rl", axf:number-transform="kansuji" is applied. Nothing is changed when it's not the vertical writing.

<list-style-type>

The same value as list-style-type can be specified. The range of the value that can be converted varies depending on the style.

<string>

When a character string is specified, the behavior is same as when the character string is specified by format.

A number sequence (number) here indicates character strings of the following forms.

number ::= '-'? digits
digits ::= [0-9]+

When it is simultaneously specified with text-transform or axf:text-replace, axf:number-transform is evaluated previously.
When a counter style which was specified with axf:counter-style or symbols() is used, prefix/suffix will not be added.

Japanese Numerals

AH Formatter V6.3 can convert numbers into Japanese numerals using axf:number-transform.
This function is not available with AH Formatter V6.3 Lite.

axf:kansuji-style / CSS -ah-kansuji-style

Specifies the style used for Japanese numerals.
no-LT

Value:

simple | grouping | readable

Initial:

simple

Applies to:

all block-level and inline-level formatting objects

Inherited:

yes

Percentages:

N/A

Values have the following meanings.

simple

Converts a number sequence into Japanese numerals by one to one correspondence.

12340 ⇒ 一二三四〇
6700000 ⇒ 六七〇〇〇〇〇

grouping

In adds to the conversion of one to one correspondence, grouping for "万億兆京垓𥝱穣溝澗正載極" is inserted.

When all the parts below a certain grouping are zero, they are disregarded.

12340 ⇒ 一万二三四〇
6700000 ⇒ 六七〇万

readable

Inserts grouping of "万億兆…" and uses "十百千" additionally so that the character strings becomes readable.

Preceding zero is disregarded.

In the huge numerical value which needs the next grouping of "極", the digits more than "極" are converted by one to one correspondence.

12340 ⇒ 一万二千三百四十
6700000 ⇒ 六百七十万
1000000 ⇒ 百万
000015 ⇒ 十五
0 ⇒ 〇

axf:kansuji-letter / CSS -ah-kansuji-letter

Specifies the character used for Japanese numerals.
no-LT

Value:

kanji | latin | <string>

Initial:

kanji

Applies to:

all block-level and inline-level formatting objects

Inherited:

yes

Percentages:

N/A

Values have the following meanings.

kanji

Use Japanese numerals for numbers. Equivalent to specify axf:kansuji-letter="〇一二三四五六七八九".

〇 : U+3007

一 : U+4E00

二 : U+4E8C

三 : U+4E09

四 : U+56DB

五 : U+4E94

六 : U+516D

七 : U+4E03

八 : U+516B

九 : U+4E5D

latin

Use full width western numerals for numbers. Equivalent to specify axf:kansuji-letter="０１２３４５６７８９".

０ : U+FF10

１ : U+FF11

２ : U+FF12

３ : U+FF13

４ : U+FF14

５ : U+FF15

６ : U+FF16

７ : U+FF17

８ : U+FF18

９ : U+FF19

<string>

Specifies arbitrary characters as numbers you use. For example, if you want to use traditional Japanese numerals, specify axf:kansuji-letter="零壱弐参肆伍陸柒捌玖". If you want to specify traditional Japanese numerals only to "一二三", specify axf:kansuji-letter="〇壱弐参四五六七八九". If you specify only the head part like axf:kansuji-letter="〇壱弐参", it is compensated as axf:kansuji-letter="〇壱弐参四五六七八九".

零 : U+96F6

壱 : U+58F1

弐 : U+5F10

参 : U+53C2

肆 : U+8086

伍 : U+4F0D

陸 : U+9678

柒 : U+67D2

捌 : U+634C

玖 : U+7396

axf:kansuji-grouping-letter / CSS -ah-kansuji-grouping-letter

Specifies the grouping character used for Japanese numerals.
no-LT

Value:

<string>

Initial:

empty string

Applies to:

all block-level and inline-level formatting objects

Inherited:

yes

Percentages:

N/A

The null character sequence is regarded as "十百千万億兆京垓𥝱穣溝澗正載極". Please change and specify only a corresponding character if you want to change "万" to "萬", for example. When you specify only the head part like "拾佰阡萬", it is compensated as "拾佰阡萬億兆京垓𥝱穣溝澗正載極".

十 : U+5341 : 10

百 : U+767E : 100

千 : U+5343 : 1000

万 : U+4E07 : 104

億 : U+5104 : 108

兆 : U+5146 : 1012

京 : U+4EAC : 1016

垓 : U+5793 : 1020

𥝱 : U+25771 : 1024

穣 : U+7A63 : 1028

溝 : U+6E9D : 1032

澗 : U+6F97 : 1036

正 : U+6B63 : 1040

載 : U+8F09 : 1044

極 : U+6975 : 1048

拾 : U+62FE : 10

佰 : U+4F70 : 100

阡 : U+9621 : 1000

萬 : U+842C : 104

<axf:counter-style> / CSS @counter-style

With AH Formatter V6.3, unique counter style can be defined. For details about the CSS specification, please see CSS Counter Styles Level 3.
This function is not available with AH Formatter V6.3 Lite.
V6.3no-LT

A string generated with system="cyclic" is the one that is set with <list-style-type> in the Option Setting File.
Items denoted with * mean that they were added for consistency with the obsolete list-style-type.
kansuji denoted with ** is converted in accordance with axf:kansuji-style.
The counter style that is classified as complex cannot be defined with <axf:counter-style> / @counter-style. On the other hand, it can be extended with extends.

These predefined counter style names are case insensitive while the counter style names that are defined with <axf:counter-style> / @counter-style are case sensitive.

CSS does not have this property. In case of CSS, please specify the name with @counter-style directly.

Although the ligature of Western languages and the ligature of symbols are included in JIS X 0213:2004, these are processed by ligature-mode="latin".

all

latin and kana are considered to be specified.

auto

The ligature of kana is performed.
latin-ligature in the Option Setting File will decide whether to perform the ligature of Western words. This setting can also be done with the Format Option Setting dialog in GUI.

The ligature processed here is the ligature defined in the font itself. The ligature defined in Unicode are not processed. (It is called Canonical Composition)
In order to normalize ligatures defined in Unicode Standard, specify axf:normalize="nfc".
Note that axf:normalize will not be effective with AH Formatter V6.3 Lite.

axf:japanese-glyph / CSS -ah-japanese-glyph

Specifies the glyph of Japanese Kanji. Applied only to the Japanese Kanji that has the substitution function for the specific Open type.

Value:

none | jp78 | jp83 | jp90 | jp04

Initial:

none

Applies to:

all block-level and inline-level formatting objects

Inherited:

yes

Percentages:

N/A

Values have the following meanings.

none

Nothing is done.

jp78

jp78 is applied. Nothing is done when the font does not have jp78.

jp83

Jp83 is applied. Nothing is done when the font does not have jp83.

jp90

Jp90 is applied. Nothing is done when the font does not have jp90.

jp04

Jp04 is applied. Nothing is done when the font does not have jp04.

The glyph of Japanese Kanji is changed more than a little by JIS in which it is being defined. Some of the Open Type font have glyphs that correspond to JIS respectively. The glyphs of such fonts can be specified by the japanese-glyph property.

CAUTION:

AH Formatter V6.3 supports Unicode Variation Sequence. We recommend to use the feature of Variation Sequence as much as possible for Japanese Kanji.

CAUTION:

In AH Formatter V6.3, the specification of <string> is not recommended. Please use font-variant.

axf:alt-glyph / CSS -ah-alt-glyph

Specifies the alternative glyph of a character.

Value:

<number> | <string> <number>?

Initial:

0

Applies to:

all block-level and inline-level formatting objects

Inherited:

yes

Percentages:

N/A

Values have the following meanings.

<number>

Specifies the order of the alternative glyph. 0 is a standard glyph. When the specified order is beyond the number of the glyph which is contained in the font, it is regarded as 0.

<string>

Specifies the tag of OpenType GSUB feature. If omitted, it is regarded as aalt. <number> is required or not required depending on the tag. When <number> is omitted even if it's necessary, it is regarded as 1. The following tags can be specified.

aalt

nalt

CAUTION:

In AH Formatter V6.3, the specification of <string> is not recommended. Please use font-variant="annotation(<number>)" for nalt.

Some of the OpenType fonts have some alternative glyphs against a certain glyph. In such a font, a glyph can be chosen with the alt-glyph property. AH Formatter V6.3 doesn't offer the method to investigate what type and how many glyphs are contained. It is applied only to the script associated with Kanji, Hiragana, Katakana, Latin, Greek, Cyrillic and Number.

URI and Link

axf:base-uri / CSS -ah-base-uri

The axf:base-uri specifies the location which becomes the base of relative URI.

Value:

<uri-specification>

Initial:

empty string

Applies to:

all formatting objects

Inherited:

yes

Percentages:

N/A

The axf:base-uri is applied to all relative URI in a document.
When making links using fo:basic-link and specify relative URI, the location that is specified using axf:base-uri is interpreted to be base URI.
If this property is omitted or this has empty string, the base location is interpreted as current XML file.

Page Number

The axf:suppress-duplicate-page-number specifies to delete the duplicated page numbers.

CAUTION:

A similar function is provided in XSL1.1. Please use merge-*-index-key-reference.

Value:

true | false

Initial:

false

Applies to:

all formatting objects

Inherited:

yes

Percentages:

N/A

When formatting a index, generally several fo:page-number-citation line up for one index item.
In such case, when fo:page-number-citation refers to the same page number of the index, page numbers are output repeatedly using the standard property.

axf:suppress-duplicate-page-number deletes the duplicated page numbers within the same line, but does not delete them when the line break occurs.

axf:page-number-prefix

The axf:page-number-prefix sets the prefix of page number.

CAUTION:

A similar function is provided in XSL1.1. Please use fo:folio-prefix.

Value:

<string>

Initial:

empty string

Applies to:

fo:page-sequence

Inherited:

no

Percentages:

N/A

Specifies the prefix for page numbers. Specified string will be outputted before the page number by fo:page-number and fo:page-number-citation.
Also this string will be used as the page label in the PDF.

Arabic and Hebrew cannot be specified for the value of axf:page-number-prefix.

axf:physical-page-number

The axf:physical-page-number gets physical page number.

Value:

true | false

Initial:

false

Applies to:

fo:page-number, fo:page-number-citation, fo:page-number-citation-last

Inherited:

no

Percentages:

N/A

The value of initial-page-number property is disregarded and the physical page number that is not affected by the page-sequence is obtained.
In order to obtain the total number of pages, ID is given to the last page per the following example:

In order to use this function with CSS, please see counter(). However, this does not apply to AH Formatter V6.3 Lite.

See also fo:page-number-citation-last in XSL1.1.

axf:reverse-page-number

Places page numbers in reverse order.
V6.3no-LT

Value:

true | false

Initial:

false

Applies to:

fo:page-number, fo:page-number-citation, fo:page-number-citation-last

Inherited:

no

Percentages:

N/A

Values have the following meanings.

true

Places page numbers in reverse order.

false

Places page numbers in order.

By specifying axf:reverse-page-number="true", the page number reference in fo:page-sequence is counted from the last page of fo:page-sequence in descending order. Together with axf:reverse-page="true", it is available to put sequential numbers upon outputting PDF.
In order to use this function with CSS, please see counter().

This property is not available with AH Formatter V6.3 Lite.

axf:origin-id

Specifies the origin of the page number.

Value:

<idref>

Initial:

none

Applies to:

fo:page-number, fo:page-number-citation, fo:page-number-citation-last

Inherited:

no

Percentages:

N/A

ID for the origin of the page number can be specified in fo:page-number or fo:page-number-citation. The output page number is as follows:

[ref-id page] - [origin-id page] + 1

If the specified Page is after the ref-id page, the value becomes 0.
In fo:page-number, ref-id is considered to be the position of fo:page-number itself.

axf:assumed-page-number / CSS -ah-assumed-page-number

Specifies the assumed page number.

Value:

<number>

Initial:

N/A

Applies to:

all formatting objects

Inherited:

yes

Percentages:

N/A

When <fo:page-number-citation> appears, the reference area is sometimes undecided. In evaluation of <fo:page-number-citation>, the temporary area is secured first, and when a page number is decided, it is adjusted to the right contents. Since the size of an area may change at this time, the formatted result is sometimes not desirable. For example, when an area becomes narrow, it seems that there is an unnecessary line break, and condition that a character will overflow if an area becomes large appears. axf:assumed-page-number gives the assumed page number at that time.

AH Formatter V6.3 expects the area of at least three-digit page number and formats temporarily. What is necessary will be just to specify axf:assumed-page-number="99" etc., when the page number is clearly less than that.

axf:number-type

The axf:number-type specifies whether to output the page number or to output the column number.

Value:

page | column | page-and-column

Initial:

page

Applies to:

fo:page-number, fo:page-number-citation, fo:page-number-citation-last

Inherited:

no

Percentages:

N/A

Values have the following meanings.

page

Outputs the page number.

column

Outputs the column number.

page-and-column

Outputs both of the page number and the column number.

It can be specified to fo:page-number, etc. and the column number can be outputted instead of the page number. While format property is applied to the format of the page number, axf:column-number-format property is applied to the format of the column number. The column number is not outputted if multiple column is not specified by specifying of column-count="1" or span="all".

axf:column-number-format

The axf:column-number-format specifies the format of column number.

Value:

<string>

Initial:

A

Applies to:

fo:page-sequence

Inherited:

no

Percentages:

N/A

It applies to the format of column number specified by axf:number-type property. It can be specified with the same way as
format property.

axf:suppress-folio-prefix

Invalidates the prefix of page numbers.

Value:

true | false

Initial:

false

Applies to:

fo:page-number, fo:page-number-citation, fo:page-number-citation-last

Inherited:

no

Percentages:

N/A

Specifies whether to invalidate the prefix set by fo:folio-prefix.

Values have the following meanings.

true

Invalidates the prefix.

false

Validates the prefix.

axf:suppress-folio-suffix

Invalidates the suffix of page numbers.

Value:

true | false

Initial:

false

Applies to:

fo:page-number, fo:page-number-citation, fo:page-number-citation-last

Inherited:

no

Percentages:

N/A

Specifies whether to invalidate the suffix set by fo:folio-suffix.

Values have the following meanings.

true

Invalidates the suffix.

false

Validates the suffix.

Line Numbering

Place line numbers as part of the text.
Line numbers can be placed against the line area.
Even though the place looks empty, if there is a line area, line numbers can be placed.
These are not placed in the space or in the margin.
The axf:line-number is not effective inside fo:float or fo:footnote.

CAUTION:

Placing the line numbering for the page formatted complexly with fo:block-container or fo:table, etc. might get unintended consequences. Please apply the line numbering to a simple structural document as much as possible.

This function is not available with AH Formatter V6.3 Lite.

axf:line-number / CSS -ah-line-number

The axf:line-number specifies whether to show line numbers.
no-LT

Value:

none | show | hide

Initial:

none

Applies to:

all block-level formatting objects which are descendants of fo:flow, fo:table-column

Inherited:

yes (except for fo:table-column)

Percentages:

N/A

Values have the following meanings.

none

Line numbers are not generated.

show

Line numbers are shown.

hide

Line numbers are not shown but the numbers of the line are counted.

Line numbers are counted against the lines inside the block where axf:line-number="show" or axf:line-number="hide" is specified.

If axf:line-number is specified to fo:table-column, independent line numbers are added to the column of the table. At this time, the same setting available for fo:page-sequence can be specified. The id reference can be specified to
fo:table-column as axf:line-number-initial="#xxx." The id must be the same as the one specified to the existing fo:table-column. The value specified to that column is adopted as the default value of the line number information. The backward reference is invalid.

force can be specified only to fo:block. On the contrary, other values cannot be specified to fo:block.

This property is not available with AH Formatter V6.3 Lite.

axf:line-number-start / CSS -ah-line-number-start

The axf:line-number-start specifies the starting line number.
no-LT

Value:

<number> | auto

Initial:

auto

Applies to:

fo:page-sequence

Inherited:

no

Percentages:

N/A

Values have the following meanings.

auto

The specification of the previous fo:page-sequence is succeeded. When the previous fo:page-sequence does not exist, it will become 1.

<number>

Sets the line number that begins outputting to the value specified.

Line numbers are shown when the value is greater than or equal to the value specified here.
When
axf:line-number-initial="1",
axf:line-number-start="5"
are specified, the first 4 line numbers are not shown but the 5th line number will be outputted as the beginning number.
When
axf:line-number-initial="5",
axf:line-number-start="6"
are specified, the first line number is not shown but the next line number is outputted as 6.

This property is not available with AH Formatter V6.3 Lite.

axf:line-number-text-align / CSS -ah-line-number-text-align

The axf:line-number-text-align specifies the alignment of line numbers in the line area.
no-LT

Value:

auto | start | center | end | inside | outside | left | right

Initial:

auto

Applies to:

all block-level formatting objects which are descendants of fo:flow, fo:table-column

Inherited:

yes

Percentages:

N/A

Values have the following meanings.

start

center

end

inside

outside

left

right

Same as text-align.

auto

When the position of the line numbers is in the start side, it is regarded as end. When the position of the line numbers is in the end side, it is regarded as start. The position of line numbers is specified by axf:line-number-position.

axf:line-continued-mark-offset / CSS -ah-line-continued-mark-offset

The axf:line-continued-mark-offset specifies the offset of line continued marks.
no-LT

Value:

<length>

Initial:

0pt

Applies to:

all block-level formatting objects which are descendants of fo:flow

Inherited:

yes

Percentages:

N/A

This property is not available with AH Formatter V6.3 Lite.

Revision Bar

AH Formatter V6.3 provides extension properties to layout the revision bars in the documents.
The revision bar is shown above the border or the column rule.
The revision bars and fo:change-bar are invalid in fo:float.

CAUTION:

A similar function is equipped in XSL1.1. Please make use of fo:change-bar-begin and fo:change-bar-end.

axf:revision-bar-color / CSS -ah-revision-bar-color

The axf:revision-bar-color specifies the color of the revision bar.

Value:

<color>

Initial:

the value of the 'color' property

Applies to:

all block-level and inline-level formatting objects which are descendants of fo:flow

Inherited:

yes

Percentages:

N/A

axf:revision-bar-offset / CSS -ah-revision-bar-offset

The axf:revision-bar-offset specifies the offset of the revision bar.

Value:

<length>

Initial:

0pt

Applies to:

all block-level and inline-level formatting objects which are descendants of fo:flow

Inherited:

yes

Percentages:

N/A

axf:revision-bar-position / CSS -ah-revision-bar-position

The axf:revision-bar-position specifies the position of the revision bar.

Value:

start | end | inside | outside | alternate | both

Initial:

start

Applies to:

all block-level and inline-level formatting objects which are descendants of fo:flow

Inherited:

yes

Percentages:

N/A

Values have the following meanings.

start

Places revision bar at start-edge.

end

Places revision bar at end-edge.

inside

Places revision bar at start-edge on odd pages, at end-edge on even pages.

outside

Places revision bar at end-edge on odd pages, at start-edge on even pages.

alternate

Places revision bar at end-edge in the last column of multi-column layout, except for the last column, places it at start-edge.

both

Places revision bar at start-edge and end-edge.

axf:revision-bar-style / CSS -ah-revision-bar-style

The axf:revision-bar-style specifies the style of the revision bar.

Value:

<border-style>

Initial:

none

Applies to:

all block-level and inline-level formatting objects which are descendants of fo:flow

Inherited:

yes

Percentages:

N/A

axf:revision-bar-width / CSS -ah-revision-bar-width

The axf:revision-bar-width specifies the width of the revision bar.

Value:

<border-width>

Initial:

medium

Applies to:

all block-level and inline-level formatting objects which are descendants of fo:flow

Footnote

Footnote Positioning

With AH Formatter V6.3, footnotes can be arranged per each column or footnotes duplicated in the same page can be deleted.
Also, sidenotes can be generated.

axf:footnote-align

Specifies the alignment of the footnotes.

Value:

auto | before | after

Initial:

auto

Applies to:

fo:region-body, fo:footnote

Inherited:

no

Percentages:

N/A

Values have the following meanings.

auto

Footnotes are placed automatically. Footnotes are the usual arrangement. When the text is one column, sidenotes are arranged with an anchor position, and in the case of two or more columns, sidenotes are arranged near by the before side.

before

Sidenotes are arranged near by the before side. In the case of usual footnotes which are not sidenotes, footnotes are arranged immediately after the text in a page.

after

Sidenotes are arranged near by the after side. In the case of usual footnotes which are not sidenotes, footnotes are arranged at the last of a page.

Specifies the method of arrangement of footnotes or sidenotes. When it is sidenotes (footnote arrangement into region-start or region-end is specified by axf:footnote-position), it's possible to specify whether it is arranged automatically, or it is arranged near by the before side, or it is arranged near by the after side.

axf:footnote-stacking

The axf:footnote-stacking specifies the method to layout the footnote.

Value:

block | inline

Initial:

block

Applies to:

fo:region-body, fo:footnote

Inherited:

no

Percentages:

N/A

Values have the following meanings.

block

Arranges the footnotes in the block progression direction.

inline

Arranges the footnotes in the inline progression direction.

axf:footnote-position

The axf:footnote-position specifies the location to place the footnote.

Footnotes are placed on the after side of each page in region-body.
This is the standard layout of XSL specification.

odd-page V6.3

Footnotes are placed on the after side of each odd page in region-body. This is the standard layout of sidenotes in vertical writing. (On the outside in odd page).

even-page V6.3

Footnotes are placed on the after side of each even page in region-body.

start

Footnotes are placed on each page in region-start. Headnotes in vertical writing. Sidenotes on the left side in horizontal writing.

end

Footnotes are placed on each page in region-end. Footnotes in vertical writing. Sidenotes on the right side in horizontal writing.

inside

Footnotes are placed at each even page in region-end and each odd page in region-start. Sidenotes on the inside in horizontal writing.

outside

Footnotes are placed on each even page in region-start and each odd page in region-end. This is a standard sidenotes in horizontal writing. (On the outside of both right and left pages)

column

Footnotes are placed on the after side of each column.
This is a standard footnote in horizontal writing.
Same as page if the document is non multi-columns.

start-column

Footnotes are placed on the after side of the first column. Same as start if the document is non multi-columns.

end-column

Footnotes are placed on the after side of the end column. Same as end if the document is non multi-columns.

inside-column

Footnotes are placed in the same way as end-column at even page and in the same way as start-column at odd page. Footnotes are put together on the inside column in horizontal writing.

outside-column

Footnotes are placed in the same way as start-column at even page and in the same way as end-column at odd page. Footnotes are put together on the outside column in horizontal writing.

It is possible to arrange footnotes inside the region-start or the region-end (these notes are called sidenotes). Besides specifying them to fo:region-body, it is also effective to specify to individual fo:footnote. It is possible to make several types of notes intermingled by this extension.

There are following restrictions for sidenotes.

The sidenotes which run over from the specified area will overflow.

The xsl-footnote-separator is not effective.

start-column, end-column, inside-column and outside-column have the following limitations.

It is not possible to specify these values to fo:footnote. It is only available to specify them to region-body.

When you specify these values to region-body, column cannot be specified to fo:footnote.

These values cannot be used with the forcible column break such as break-before="column", etc. These values cannot be used for a large volume of footnotes.

odd-page and even-page have the following limitations.

It is not possible to specify these values to fo:footnote. It is only available to specify them to region-body.

axf:footnote-keep

Specifies whether to arrange a footnote and an anchor in the same page

Value:

auto | always

Initial:

auto

Applies to:

fo:region-body, fo:footnote

Inherited:

no

Percentages:

N/A

Values have the following meanings.

auto

When a footnote does not fit within the column, it is sent to the next page or the next column.

always

When a footnote does not fit within the column, the following line of the anchor and the subsequent lines are sent to the following page, and a footnote and an anchor are arranged in the same page.
When axf:footnote-position="column" is specified, a footnote and an anchor are arranged in the same column.

axf:footnote-max-height

Specifies the maximum height of footnote.

Value:

auto | <length> | <percentage>

Initial:

auto

Applies to:

fo:region-body

Inherited:

no

Percentages:

refer to the height of the page

Specifies the maximum height of footnote. The behavior when auto is specified depends on the value of auto-break-footnote in the Option Setting File.

When axf:footnote-max-height="auto" and auto-break-footnote is false are specified

Up to AH Formatter V6.1, page break (column break) did not occur within footnote-body. This setting performs such previous operation. In case a footnote is big and exceeds the page height, an overflow occurs. However, only in case a footnote is small, is it possible to format without breaking a footnote.

When axf:footnote-max-height="auto" and auto-break-footnote is true are specified

It is considered that the page height is specified to axf:footnote-max-height and page break (column break) occurs within footnote-body.

When axf:footnote-max-height="<length>" or "<percentage>" is specified

The value must be a positive. auto-break-footnote is not referred to. At this time, page (column) break may occur within footnote-body. The footnote will be put after an anchor position as much as possible and the remaining part will be split and sent to the next page (Column).

These property are not available with AH Formatter V6.3 Lite.

axf:suppress-duplicate-footnote

Specifies whether to delete footnotes duplicated in the same page.

Value:

true | false

Initial:

false

Applies to:

fo:footnote

Inherited:

yes

Percentages:

N/A

Deters the display of duplicated footnotes on the same footnote region when the same footnote is assigned to two or more places in the same page. When axf:footnote-position="column" is specified, it is effective only for the footnote in the same column.

Footnote Numbering

These features are not available with AH Formatter V6.3 Lite.

<axf:footnote-number>

Common Usage:

Generates a footnote number.
no-LT

Areas:

Generates and returns
a single normal inline-area.

Constraints:

<axf:footnote-number> can be specified only as an anchor area. That is, it can be specified only as a descendant of <fo:inline> which is a child of <fo:footnote>.

Contents:

EMPTY

This element is not available with AH Formatter V6.3 Lite.

<axf:footnote-number-citation>

Common Usage:

Cites a footnote number.
no-LT

Areas:

Generates and returns
a single normal inline-area.

Constraints:

<axf:footnote-number-citation> can be specified only as a descendant of <fo:footnote-body>. The ref-id property is required,
and the ID should be referenced by <axf:footnote-number> in the same anchor area.

axf:column-rule-display / CSS -ah-column-rule-display

axf:column-rule-display specifies whether to also display a rule at the place where column gaps do not exist..

Value:

gap | end | all

Initial:

gap

Applies to:

fo:region-body, fo:block-container

Inherited:

no

Percentages:

N/A

Values have the following meanings.

gap

Displays a rule only between the existing columns.

end

Displays a rule at the end side of the existing column. However, the most end side of the column is not included.

all

Displays all rules between the non-existing columns at the end of a page, etc.

Suppose contents are only in the left column of the three columns as shown in the figure on the right. When gap is specified, rules are not displayed at all. When end is specified, a rule (1) is displayed, when all is specified, rules (1) and (2) are displayed.

axf:column-rule-length / CSS -ah-column-rule-length

The axf:column-rule-length specifies the length of the column rule.

Value:

<length> | <percentage>

Initial:

100%

Applies to:

fo:region-body, fo:block-container

Inherited:

no

Percentages:

refer to the height of the column

In case where the column is short by specifying span="all" in FO, or in case of the block containing columns in CSS, that height of the column indicates 100%.

CSS (-ah-)border-length

axf:border-double-thickness / CSS -ah-border-double-thickness

Specifies the line thickness of border-style="double".
V6.3

Value:

<value> [ <value> [ <value> ]]

Initial:

1

Applies to:

all elements

Inherited:

yes

Percentages:

N/A

In <value>, either <number> or <length> can be specified.
The values are outside line width, spacing and inside line width in order from left to right. If the value is omitted, it is regarded as equivalent to the preceding value. Negative values are not available.
The line width can directly be specified in <length>. We do not guarantee the best result if the total of <length> exceeds the border-width.
The values in <number> is summed and then the total of <length> is deducted from the actual border-width for proportional distribution.
For instance, when the border-width is 10pt and axf:border-double-thickness="4pt 2 1":

Outside line width = 4pt

Spacing = (10pt-4pt)/(2+1)*2 = 4pt

Inside line width = (10pt-4pt)/(2+1)*1 = 2pt

are given.

axf:border-wave-form / CSS -ah-border-wave-form

Specifies the wave form of border-style="wave".
V6.3

Value:

<value> [ <value> ]

Initial:

auto

Applies to:

all elements

Inherited:

yes

Percentages:

N/A

In <value>, either <number> or <length> or auto can be specified.
The values are wave form and line width in order from left to right. If the value is auto or omitted, it is regarded as 6 and 0.125 each. Negative values are not available.
The wave form or the line width can directly be specified in <length>. <number> is proportional to the border-width.

Diagonal Border

AH Formatter V6.3 provides extension properties to draw the diagonal border in the area such as the table cell where the border can be specified. The diagonal border by axf:diagonal-border-* is drawn from the edge of before-start to the edge of after-end. The diagonal border by axf:reverse-diagonal-border-* is drawn from the edge of before-end to the edge of after-start. When the writing-mode="lr-tb" is specified, the diagonal border is drawn as follows.
When the writing-mode="rl-tb" or "tb-rl" is specified, it is drawn in a reverse way.

axf:diagonal-border-color / CSS -ah-diagonal-border-color

The axf:diagonal-border-color specifies the color of the diagonal border.

Value:

<color>

Initial:

the value of the 'color' property

Applies to:

all elements which can have borders

Inherited:

yes

Percentages:

N/A

axf:diagonal-border-style / CSS -ah-diagonal-border-style

The axf:diagonal-border-style specifies the style of the diagonal border.

Value:

<border-style>

Initial:

none

Applies to:

all elements which can have borders

Inherited:

no

Percentages:

N/A

axf:diagonal-border-width / CSS -ah-diagonal-border-width

The axf:diagonal-border-width specifies the width of the diagonal border.

The first value is the horizontal radius (or
vertical if the 'writing-mode' is vertical). If the second length is
omitted it is equal to the first.
If either length is less or equal 0, the corner is square, not rounded. For rounded table borders, when border-collapse="collapse" is specified, border-radius is effective only when specified to fo:table.

The first <length> is an offset of a horizontal shadow. It becomes a right-side shadow of a region when a positive value is specified. It becomes a left-side shadow of a region when a negative value is specified.

The second <length> is an offset of a vertical shadow. It becomes a bottom-side shadow of a region when a positive value is specified. It becomes a top-side shadow of a region when a negative value is specified.

The 3rd <length> must be a non-negative value and specifies the blur radius. If the value is 0, there is no blur.
This setting is ignored with AH Formatter V6.3 Lite.
no-LT

The 4th <length> extends a shadow. When a positive value is specified, the region will be expanded. When a negative value is specified, the region will be reduced.
no-LT

The color of the shadow can be specified by <color>.

This combination can be specified multiply and shadows can be added several times over.

CAUTION:

The minimum unit of <length> which can be specified is 1/96in=0.265mm. The value is rounded to its multiple number.

CAUTION:

The blur is invalid with the device which cannot output transparency like PDF/X.

Table

<axf:table-cell-repeated-marker>

Common Usage:

Specifies the contents to be displayed in the split cell.
no-LT

Areas:

This element does not generate a region directly.

Constraints:

Available to specify only one as a first child (except for a marker) of fo:table-cell.

axf:repeat-cell-content-at-break specifies whether to copy the contents of a cell when a cell breaks.

Value:

true | false

Initial:

false

Applies to:

fo:table-cell

Inherited:

no

Percentages:

N/A

Values have the following meanings.

true

When the content of table cell fits in table-cell-area without breaking and table-cell-area breaks according to the break of other table-cell in the same row, or according to the break among the plural rows with number-rows-spanned, usually the content of table-cell-area becomes empty. When axf:repeat-cell-content-at-break is specified to table-cell, the content of the cell before break is copied and repeated.

Links the multimedia objects in PDF, instead of embedding them. The linked multimedia objects are referred to as the absolute link.

relative-link

Links the multimedia objects in PDF, instead of embedding them. The linked multimedia objects are referred to as the relative link from either XML or FO.

This property is not available with AH Formatter V6.3 Lite.

axf:alttext / CSS -ah-alttext / HTML alt

Specifies the alternate text of the image.

Value:

<string>

Initial:

empty string

Applies to:

fo:external-graphic, fo:instream-foreign-object

Inherited:

no

Percentages:

N/A

Effective when outputting Tagged PDF.
When
there is no specification of axf:alttext, the value of the role property is used as an alternate text. But, since it's not an original use of the role property, it's not recommended.

axf:overflow-condense / CSS -ah-overflow-condense

The axf:overflow-condense specifies how to condense the overflowed text within the region.

Value:

letter-spacing | font-stretch | font-size | line-height | auto | none

Initial:

auto

Applies to:

all block-level formatting objects

Inherited:

yes

Percentages:

N/A

Values have the following meanings.

letter-spacing

Condenses the text by adjusting the letter spacing.

font-stretch

Condenses the text by adjusting the font width.

font-size

Condenses the text by adjusting the font size.

line-height

Condenses the text by adjusting the line height.

auto

Dependent on the system setting.

none

Specifies not to condense the text. This can also be specified to the in-line element and is not inherited.

Condensing the text within the region can be specified with the properties of overflow="condense".
The adjustment for condensing the text includes both the inline progression direction and the block progression direction. The system will process the specified method by combining the methods considered as suitable.

There is a difference in the condensation process between inline and block. The condensation process occurs in the inline when there is only one line with
<fo:inline-container> or <fo:block-container keep-together.within-line="always"> etc. In other cases, the condensation process occurs in the block.

The length of the absolute value specified inside the block will not be adjusted. For example, in the following case, the length will not be adjusted.

Moreover, when the adjustment by font-size or font-stretch in the block takes place, text-align-last="justify" is set implicitly.
Please specify text-align-last="left" etc., explicitly when justify is unnecessary.

Specifies the percentage against the minimum font width. Font size becomes above this percentage. The 0 or less percentage value is invalid.

<number>

Equivalent to <percentage> / 100.

When the content exceeds the limit shown by <percentage> or <number>, the region still overflows. Then a solution can be specified as follows.

axf:overflow-condense-limit-font-stretch="30% hidden"

axf:overflow-replace / CSS -ah-overflow-replace

An alternative character string for the specified overflow text.

Value:

<string>

Initial:

depends on system

Applies to:

all block-level formatting objects

Inherited:

yes

Percentages:

N/A

When overflow="replace" is specified, the overflow text is replaced by repeating the specified string.
A complex character string cannot be specified.

axf:overflow-limit / CSS -ah-overflow-limit

Specifies the overflow limit value.
V6.2MR3no-LT

Value:

<length>{1,2}

Initial:

depends on system

Applies to:

all formatting objects

Inherited:

yes

Percentages:

N/A

The lengths specify the overflow limit values. If one length is specified, it gives both the inline and block
overflow limit values. If two are specified, the first gives the inline overflow limit value
and the second the block overflow limit value. Lengths may not be negative.

When overflow="error-if-overflow" is specified, overflows greater than the overflow limit value are reported as error level 2 (warning) and smaller overflows are reported as error level 1 (information).

If <elements D> is not given, <fo:page-sequence A-cloned> will not be generated; however, <fo:page-sequence A> will be generated even if <elements C> is not given.

If an element which contains id is copied, the id will be discarded.

This structure cannot be applied to <fo:page-sequence-wrapper>.

The nested <fo:page-sequence> will try to read all the FO trees; therefore, please note that the memory may reach the limit or similar things may happen if a large <fo:page-sequence> is nested.

Empty <fo:page-sequence>

<fo:flow> can be omitted. This means that <fo-page-sequence> can be empty.
V6.3no-LT

Contents

(title?,folio-prefix?,folio-suffix?,static-content*,flow*)

When force-page-count in <fo:page-sequence> is other than "no-force", <fo:flow> can be omitted. This will allow adjustment of the page number on a certain page. For instance, when the last fo:page-sequence is not specified and you want to make the total page number even, a blank page can be used to insert <fo:page-sequence> like

Page Background

AH Formatter V6.3 provides extension properties to set the background of the page.
These properties are placed as fo:simple-page-master or fo:page-sequence.

background-color

Value:

<color> | transparent

Initial:

transparent

Applies to:

fo:simple-page-master, fo:page-sequence, all formatting objects

Inherited:

no

Percentages:

N/A

background-image

Value:

<uri-specification> | none

Initial:

none

Applies to:

fo:simple-page-master, fo:page-sequence, all formatting objects

Inherited:

no

Percentages:

N/A

background-position-horizontal

Value:

<percentage> | <length> | left | center | right

Initial:

0%

Applies to:

fo:simple-page-master, fo:page-sequence, all formatting objects

Inherited:

no

Percentages:

refer to the size of the padding-rectangle

background-position-vertical

Value:

<percentage> | <length> | top | center | bottom

Initial:

0%

Applies to:

fo:simple-page-master, fo:page-sequence, all formatting objects

Inherited:

no

Percentages:

refer to the size of the padding-rectangle

background-repeat

Following bold value is extended.

Value:

repeat | repeat-x | repeat-y | no-repeat | paginate

Initial:

repeat

Applies to:

fo:simple-page-master, fo:page-sequence, all formatting objects

Inherited:

no

Percentages:

N/A

Extended values have the following meanings.

paginate
no-LT

Effective when embedding PDF in the background image and indicates to embed plural pages of PDF.
For details, please refer to PDF Embedding.
In case of CSS, effective when specified to @page.
V6.3
This value cannot be specified by AH Formatter V6.3 Lite.

Extended Values

AH Formatter V6.3 extends some values of the FO properties.
In order to use these values, you have to specify exactly as follows:

axf:overflow="condense"

However, with AH Formatter V6.3, even if axf: is not added, it is made so that it may function similarly. Moreover, the FO standard property and the extended property can be specified simultaneously as follows:

overflow="hidden" axf:overflow="condense"

At this time, the standard property will be overwritten by the extended property and only axf:overflow="condense" becomes effective. That is, it is the same as having overflow="condense" specified. However, in order to avoid the confusion, please do not use such specification.

display-align / CSS -ah-display-align

Following bold value is extended.

Value:

auto | before | center | after
| justify

Values have the following meanings.

justify

Justifies the text to block-progression dimension by adjusting the space between lines.

Force the number of pages counted from the document head to be an even number.

odd-document V6.3

Force the number of pages counted from the document head to be an odd number.

doubly-even-document

Force the number of pages counted from the document head to be an doubly-even number.

[ end-on | document ] <number> [ <number> ] no-LT

Suppose that the first <number> is A, the next <number> is B, the number of pages of specified page-sequence is set as a multiple number of A + B. A must be an integer greater than or equal to 1, B must be an integer greater than or equal to 0 and less than A. When B is omitted, it is regarded as 0.
when end-on was specified, the page number of the last page of the specified page-sequence is applied. When document is specified, The number of the page counted from the beginning of the document is applied.
For example (assuming 5 pages of content in a page sequence):

The strings which consist of the same character with 2 or more altogether

For example, when format="**" is specified, * is repeated by the number of numerical values. Up to 999 can be expressed.

The symbols of all different character with 2 or more altogether

For example, if format="*†‡" is specified, the regular expression of "*"" †""‡"" **""††"" ‡‡""***"" †††" "‡‡‡"... will be generated. Up to 999 can be expressed.

The character string which does not include symbols, with all different 2 or more characters altogether

For example, character strings such as
"上中下", which means the sequence of "first,
second and third classes, etc.", is considered as a format token and
generates the sequence of "上""中""下""上上""上中""上下"... order.

internal-destination

Following bold value is extended.
no-LT

Value:

empty string | <idref> | <number-with-fragment>

Values have the following meanings.

<number-with-fragment>

Effective for the internal link in PDF. indicates the page number of the link destination. This string is simple numeric characters or the following string that combines numeric characters and a fragment with #.
Refer to Making Link for fragment.

123#zoom=50

The page number also can be specified in the fragment.

#page=123&zoom=50

When the page number is not specified, it is usually regarded as the 1st page. However, when the top position is specified, it is regarded as the head of the page of a block where internal-destination is contained. For example, it is specified as follows.

#view=fit
#view=fith
#zoom=,,0

This property is not extended with AH Formatter V6.3 Lite.

leader-alignment

Following bold values are extended.

Value:

none | reference-area | page | start | center | end

Initial:

none

Applies to:

fo:leader

Inherited:

yes

Percentages:

N/A

Values have the following meanings.

start

When leader-pattern="dots" or leader-pattern="use-content" is specified and the contents are only the text, leaders are aligned on the start side.

center

When leader-pattern="dots" or leader-pattern="use-content" is specified and the contents are only the text, leaders are center aligned.

end

When leader-pattern="dots" or leader-pattern="use-content" is specified and the contents are only the text, leaders are aligned on the end side.

Only with the vertical writing (writing-mode="tb-rl"), text-transform="fullwidth" will be applied. Nothing is changed when it's not the vertical writing.
no-LT

fullsize-kana

Converts small kana into regular kana. Only fullwidth (not halfwidth) characters are converted.

Extended Functions

AH Formatter V6.3 extends some FO functions and CSS functions.

rgb-icc()

The format of the argument which the rgb-icc function can accept is as follows. An identifier beginning with # is case insensitive. Formats using identifiers which begins with # are extended specifications in AH Formatter V6.3.
The specified RGB is an alternative color. It is used when the devices (display etc.) cannot display CMYK or the separation color directly.

rgb-icc(#Grayscale,<Scale>)

Specifies Grayscale. The depth in color can be specified by <Scale>.

rgb-icc(<R>,<G>,<B>,#CMYK,<C>,<M>,<Y>,<K>)

rgb-icc(#CMYK,<C>,<M>,<Y>,<K>)

Specifies CMYK. When RGB is omitted, it is calculated from CMYK.

rgb-icc(<R>,<G>,<B>,#Separation,<Name>,<Tint>,<C>,<M>,<Y>,<K>) no-LT

rgb-icc(<R>,<G>,<B>,#Separation,<Name>,<Tint>) no-LT

rgb-icc(<R>,<G>,<B>,#Separation,<Name>) no-LT

rgb-icc(#Separation,<Name>,<Tint>,<C>,<M>,<Y>,<K>) no-LT

Specifies Separation color (Spot color).
The name of the ink in use is specified as <Name>.
For example, specify "PANTONE 131 PC". The color tone is specified as <Tint>. When <Tint> is omitted, it is considered as 1.0. It is also necessary to specify RGB or CMYK. When RGB is omitted, it is calculated from CMYK.

rgb-icc(#Separation,<Name>,<Tint>) no-LT

rgb-icc(#Separation,<Name>) no-LT

If you purchase AH FormatterPANTONE® Option, it includes the ability for more than 1,000 PANTONE® Colors to be converted into RGB or CMYK values automatically.
This is specified in the FO as follows:

rgb-icc(#Separation, 'PANTONE 131 PC')

rgb-icc(#Registration,<Tint>) no-LT

rgb-icc(#Registration) no-LT

Specifies Registration color. The color tone is specified as <Tint>. When <Tint> is omitted, it is considered as 1.0.
Registration color is used for the registered trademark outputted to all the color versions. Registration color can also be expressed by specifying "All" as the <Name> of #Separation.

Arguments take the following values, respectively.

<R>,<G>,<B> = % value or 0 to 255 integer value

<C>,<M>,<Y>,<K> = % value or 0.0 to 1.0 float value

<Scale> = % value or 0.0 (black) to 1.0 (white) float value

<Tint> = % value or 0.0 (lightest) to 1.0 (darkest) float value

linear-gradient()no-LT

Expresses the linear gradient. It can be specified as a value of background-image.