Option Setting File

The Option Setting File is an XML file which describes the operating setup for the AH Formatter V5.0. It can be loaded by the -i option in Command-line Interface, etc. In Windows Graphical User Interface the Option Setting File is loaded automatically if AHFSettings.xml (AHFSettings(x64).xml for Windows x64 version) exists in the application specific data directory. The application data is indicated by the environment variable, APPDATA as follows: [APPDATA]\AntennaHouse\AHFormatter\5.0\

When the content of the option setting file is corrected with the editor, etc. while AH Formatter V5.0 is running, the correction is not reflected to AH Formatter V5.0. Please exit AH Formatter V5.0 once or load the option setting file from the Import Option Setting Dialog opened from the Format Menu in GUI.

The following are the elements of the Option Setting File:

Element Location Description
<formatter-config> root element Root element of the AH Formatter V5.0 Option Setting File.
<formatter-settings> child of <formatter-config> Formatter Settings element.
<font-settings> child of <formatter-config> Font Settings element.
<script-font> child of <font-settings> Generic font mapping settings element.
<font-alias> child of <font-settings> Font alias settings element.
<pdf-settings> child of <formatter-config> The element of PDF Output Settings.
<embed-font> child of <pdf-settings> Embedding font settings element.
<svg-settings> child of <formatter-config> SVG Output Settings element.
<inx-settings> child of <formatter-config> INX Output Settings element.
<text-settings> child of <formatter-config> TEXT Output Settings element. no-LT
<mathml-settings> child of <formatter-config> MathML Settings element.
<xslt-settings> child of <formatter-config> XSLT Settings element.
<param> child of <xslt-settings> The xslt:param settings element.
<stylesheet> child of <xslt-settings> Default stylesheet settings element.
<rxe-settings> child of <formatter-config> XSL Report Designer Settings element. no-LT

AH Formatter V5.0 allows you to specify one of the following units for the parameter (designated with asterisk * sign) that takes the length value.

Representation Meanings
cm centimeter
mm millimeter. 1 mm = 1/10 cm
in inch. 1 in = 2.54 cm
pt point. 1 pt = 1/72 in
pc pica. 1 pc = 12 pt
jpt 1 jpt = 0.3514 mm V5.0
q 1 q = 0.25 mm V5.0

Formatter Settings

These settings are used for the formatting.

Element Location Attribute Default Description
<formatter-settings> child of <formatter-config> append-non-end-of-line-characters Specifies to append the non-end-of-line characters. White space, opening parenthesis and punctuations, that are originally non-end-of-line, are disregarded even though they are specified. See also axf:append-non-end-of-line-characters in extended FO.
append-non-starter-characters Specifies to append the non-starter characters. White space, closing parenthesis and punctuations, that are originally non-starter, are disregarded even though they are specified. See also axf:append-non-starter-characters in extended FO.
baseline-mode 5 In AH Formatter V5.0, there are some changes from XSL Formatter V4 in deciding the baseline in the text with different scripts like a mixture of Western and Japanese. Please specify the value when you want to make it the same operation as V4. The following values can be specified.
  1. Operates the same as XSL Formatter V4.
  2. Adds the improved operation by AH Formatter V5.
See also Difference in Formatting with XSL Formatter V4. In addition, when baseline-mode="4" is specified, the text-altitude and text-depth properties are invalid. V5.0
bidi-override-mode 5 In AH Formatter V5.0, there are some changes from XSL Formatter V4 in the behavior of <fo:bidi-override>. Please specify the value when you want to make it the same operation as V4. The following values can be specified.
  1. Operates the same as XSL Formatter V4.
  2. Adds the modified operation by AH Formatter V5.
See also Difference in Formatting with XSL Formatter V4. V5.0
border-medium-width * 3pt Specifies the default border width in medium style with the real-type numeric value.
border-thick-width * 5pt Specifies the default border width in thick style with the real-type numeric value.
border-thin-width * 1pt Specifies the default border width in thin style with the real-type numeric value.
default-CJK Specifies the language (such as jpn or kor) to be applied when a script is ambiguous for CJK. Although the default value is determined from the operating environment, Japanese language is assumed when the operating environment is other than CJK.
default-color #000000 Specifies the default color of text with the format of #RRGGBB.
default-font-size * 10pt Specifies the default font size with the real-type numeric value.
default-from-page-master-region false In XSL1.1, there is no compatibility with XSL1.0 in the method of evaluating writing-mode or reference-orientation. If true is specified, it becomes the same operation as when writing-mode="from-page-master-region()" reference-orientation="from-page-master-region() is specified for fo:page-sequence. Refer to from-page-master-region() for details.
default-html-charset UTF-8 Specifies the default encoding of HTML. This setting is applied to HTML with unknown encoding. When the setting is in HTML, or the encoding can be recognised by BOM, they are adopted. See also <text-settings encoding>. Case insensitive. V5.0
default-lang eng Specifies the default language code. The language code follows ISO 639-2. There is no default value.
default-page-height * 297mm Specifies the default page height with the real-type numeric value.
default-page-margin-bottom * 10% Specifies a default page margin with the real-type numeric value. V5.0
default-page-margin-left * 10%
default-page-margin-right * 10%
default-page-margin-top * 10%
default-page-width * 210mm Specifies the default page width with the real-type numeric value.
fixed-width-space-treatment true The glyph such as EM SPACE (U+2003) etc. which corresponds to the white space with fixed width is not contained in many fonts. Therefore, alternative characters, such as an square symbol, will be displayed. In such a case, it specifies whether to put the white space or not without displaying an alternative glyph. If true is specified, an white space will be generated. If false is specified, an alternative glyph will be displayed. The target characters and their widths are as follows. (in units of em)
U+2000EN QUAD1/2
U+2001EM QUAD1
U+2002EN SPACE1/2
U+2003EM SPACE1
U+2004THREE-PER-EM SPACE1/3
U+2005FOUR-PER-EM SPACE1/4
U+2006SIX-PER-EM SPACE1/6
U+2007FIGURE SPACEThe same width of the figure '0'.
U+2008PUNCTUATION SPACEThe same width of the punctuation period '.'.
U+2009THIN SPACEDepends on the setting of thin-space-width.
U+200AHAIR SPACEDepends on the setting of hair-space-width.
U+205FMEDIUM MATHEMATICAL SPACE4/18
hair-space-width 0.1 Specifies the character width of HAIR SPACE (U+200A) in units of em, when fixed-width-space-treatment="true" is specified.
HyphenationOption true Specifies whether to hyphenate words by using the original processing that supports over 40 languages or to use the TeX dictionary. I f false is specified, Words will be hyphenated by using the TeX dictionary. At that time, only the languages that have the dictionaries can be hyphenated.
latin-ligature false Specifies whether to process the ligature in European languages with the value of true or false. If true is specified, the ligature will be processed. If false is specified, it will not be processed. This setting affects the value of axf:ligature-mode="auto".
normal-line-height 1.2 Specifies the default line height with the real-type numeric value. A unit is not specified. The value means the ratio to the font size. The initial value is 1.2. Therefore, in case the font size is 10pt, the line height becomes 12pt.
printer-marks-line-length 10mm Specifies the length of the printer marks.
printer-marks-line-width 0.2pt Specifies the width of the printer marks.
printer-marks-zero-margin 3mm Specifies the margin between the page and the printer marks when bleed is 0. no-LT
PrinterOrientation auto When the paper is placed in landscape in the PS Printer, there may be a case that the printer rotate-output the line and EPS incorrectly because some printers cannot get information. Possible to correct the rotation by specifying one of the following values. (The value should be anti-clockwise rotation degree.)
  • auto
  • 0
  • 90
  • 270
This setting is effective only with Windows version.
PscriptPassThrough true Possible to makes Pass Through output invalid when outputting to PS printer. If true is specified, Pass Through output is executed. If false is specified, Pass Through output is not executed but the output is executed only by GDI operator. This setting is effective only with Windows version.
pair-kerning false Specifies whether to process the pair kerning in European languages with the value of true or false. I f true is specified, the ligature will be processed. If false is specified, it will not be processed. This setting affects the value of axf:kerning-mode="auto".
punctuation-spacing 0.5 Specifies the space width between the adjacent Japanese full-width characters with the real-type numeric value. The value means the ratio to the font size. This setting affects the value of axf:punctuation-spacing="auto" in extended FO.
punctuation-trim true When Japanese full-width characters (punctuations, parentheses) are used in succession or come at the start of a line, you can specify whether to trim the letter spacing or keep the same letter spacing with the value of true or false. If the value is true, the letter spacing will be tracked narrow. If the value is false, it will be the same as that of other full-width characters. This setting affects the values of axf:punctuation-trim="auto" and axf:text-justify-trim="auto" in extended FO.
pxpi 96 In XSL or CSS, you can specify px (pixel) as a unit of measurement. Pxpi specifies the coefficient, which converts the value of the specified px, as "the number of pixels per inch" when formatting. It's specified with the real-type numeric value.
SVGViewer false Specifies whether to draw SVG by using the originally developed drawing engine or to draw by using SVG Viewer. If false is specified, the original drawing engine is used. If true is specified, SVG Viewer is used. In the former case, SVG is outputted to PDF as the vector image. However in the latter case, SVG is converted to the raster image. This setting is effective only with Windows version.
table-auto-layout-limit 100 When table-layout="auto" is specified, it is necessary to look ahead and read the table to decide the width of column. The number of row to read ahead can be limited because it takes a long time to read all row in a too huge table. After reading ahead up to the number of row specified here, the width of column is decided. If 0 is specified, all row is read, and then the width of column is decided. Refer to Table Auto Layout for details.
table-is-reference-area false In XSL1.1, there is no compatibility with XSL 1.0 about whether to make fo:table a reference area. If true is specified, fo:table will be made a reference area and its operation will be the same as XSL1.0. Refer to Incompatibility of fo:table for more details.
text-autospace true Specifies whether to insert spaces between Japanese characters and Western characters to make them look better with the value of true or false, in the document Japanese and Western are mixed. If the value is true, a space will be inserted to make them look better. If the value is false, a space won't be inserted. This setting affects the value of axf:text-autospace="auto" in extended FO.
text-autospace-width 0.25 Specifies the space width between Japanese characters and Western characters with the real-type numeric value. The value means the ratio to the font size. This setting affects the value of axf:text-autospace-width="auto" in extended FO.
text-justify-mode 5 In AH Formatter V5.0, there are some changes from XSL Formatter V4 in trimming a line. Please specify the value when you want to make it the same operation as V4. This adjusts the initial value when axf:text-justify-trim="auto" is specified. The following values can be specified.
  1. Operates the same as XSL Formatter V4. That is, it is considered that ideograph and inter-word are specified.
  2. Adds the improved operation by AH Formatter V5.
See also Difference in Formatting with XSL Formatter V4. V5.0
text-kashida-space 100% Specifies the percentage of the Kashida in Arabic justification. The value 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. This setting affects the value of axf:text-kashida-space="auto" in extended FO.
thin-space-width 0.2 Specifies the character width of THIN SPACE (U+2009) in units of em, when fixed-width-space-treatment="true" is specified.
two-pass-formatting false When formatting a huge document with a large amount of unresolved <fo:page-number-citation>, a large amount of memories are consumed because the cancellation of the page information is impossible. Therefore, the limit is caused in the number of pages to format. This parameter solves that problem by making the formatting two passes. Although its processing time may be increased, only the page number information which should be solved will consume the memory and the memory consumption will be extremely decreased. When the GUI, this setting is invalid. no-LT
use-default-page-margin-CSS true Specifies whether default-page-margin-* is adopted or not when there is no margin specification in @page in CSS. V5.0
use-default-page-margin-XSL false Specifies whether default-page-margin-* is adopted or not when there is no margin specification in fo:simple-page-master in XSL. V5.0
vertical-underline-side auto In the XSL specification, there is no description about the underline in vertical writing mode. The vertical-underline-side property is an option which specifies whether to place the underline in vertical writing mode on the right side or on the left side. If left or right is specified, the underline is placed on the left or on the right. If auto is specified, 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(ja) or Korean(ko). If there is no language properties specified, it depends on the standard CJK language setting. This setting affects the value of the extension property, axf:vertical-underline-side="auto".
WindowsFontAPI AH Formatter V5.0 handles Arabic, Hebrew, Hindi, Thai, etc. originally, it's possible to display these languages without depending on the platform. However there are some unsupported scripts and fonts which cannot be displayed correctly. Available to specify the script to be displayed by using WindowsAPI. Specify the scripts using the notation defined by ISO 15924 and putting commas between scripts. The following shows an example of Devanagari.
WindowsFontAPI="Deva"
However in this case, the same result cannot be gained when outputting to PDF. In order to get the same result, please use Adobe Distiller to create PDF. In order to make this setting effective, you need to specify use-windows-api="true" as well. The default value is empty. This setting is effective only with Windows version.
CAUTION: Some fonts may not be displayed correctly.
<list-style-type> child of <formatter-settings> box Specifies the character to use by list-style-type="box". As for the initial value when not being specified, please refer to (-ah-)list-style-type. V5.0
check Specifies the character to use by list-style-type="check". As for the initial value when not being specified, please refer to (-ah-)list-style-type. V5.0
circle Specifies the character to use by list-style-type="circle". As for the initial value when not being specified, please refer to (-ah-)list-style-type. V5.0
diamond Specifies the character to use by list-style-type="diamond". As for the initial value when not being specified, please refer to (-ah-)list-style-type. V5.0
disc Specifies the character to use by list-style-type="disc". As for the initial value when not being specified, please refer to (-ah-)list-style-type. V5.0
hyphen Specifies the character to use by list-style-type="hyphen". As for the initial value when not being specified, please refer to (-ah-)list-style-type. V5.0
square Specifies the character to use by list-style-type="square". As for the initial value when not being specified, please refer to (-ah-)list-style-type. V5.0
<space-after-punctuation> child of <formatter-settings> language Specifies the language code.
code Specifies the code point to be applied. For the specified language, the specified space is placed after the code specified.
space Specifies the amount of space with the real type numerical value. The value means the ratio to the fontsize.
<space-before-punctuation> child of <formatter-settings> language Specifies the language code.
code Specifies the code point to be applied. For the specified language, the specified space is placed before the code specified.
space Specifies the amount of space with the real type numerical value. The value means the ratio to the fontsize.
<space-between-digit-and-punctuation> child of <formatter-settings> language Specifies the language code.
code Specifies the code point to be applied. For the specified language, the specified space is placed between the digit and the code specified.
space Specifies the amount of space with the real type numerical value. The value means the ratio to the fontsize.
<space-between-punctuation-and-digit> child of <formatter-settings> language Specifies the language code.
code Specifies the code point to be applied. For the specified language, the specified space is placed between the code specified and the digit.
space Specifies the amount of space with the real type numerical value. The value means the ratio to the fontsize.
<usercss> child of <formatter-settings> Specifies the CSS user stylesheet you want to add by &lt;css&gt;. See also Cascading Order of CSS Stylesheet. V5.0
<css> child of <usercss> path Specifies the path of the CSS user stylesheet. V5.0

Font Settings

These settings are used for the fonts.

Element Location Attribute Default Description
<font-settings> child of <formatter-config> auto-fallback-font true Specifies whether to look for a fall back font automatically when a font with a glyph cannot be found in the font family which was specified by FO or CSS. See also Font Selection to learn more about the fall back method. V5.0
default-font-family serif Specifies the default generic font family. The choices are serif, sans-serif, cursive, fantasy or monospace.
fallback-glyph 1 Specifies whether to report it or not when the glyph is found in a fall back font. When the glyph corresponding to the specified character in the font family is not found, if auto-fallback-font is specified, a fall back font will be looked for. The following either can be specified.
0.No message will be reported.
1.The level 1 message will be reported.
2.The level 2 message will be reported.
V5.0
font-selection-strategy auto Specifies auto or character-by-character. When character-by-character is specified, even if font-selection-strategy="auto" is specified in FO or HTML, Font Selection is performed as character-by-character. V5.0
missing-font 1 Specifies whether to warn when a font is not found from the specified font family. The following either can be specified.
0.No error message will be reported.
1.The level 1 error message will be reported.
2.The level 2 error message will be reported.
missing-glyph 1 Specifies whether to warn when the glyph corresponding to the specified character is not found in the specified font family or the fallback font. The following either can be specified.
0.No error message will be reported.
1.The level 1 error message will be reported.
2.The level 2 error message will be reported.
missing-glyph-all false Usually the report on missing-glyph is given only once to the same character. However, by specifying missing-glyph-all="true", the report can be given to all. Please note that careless specification could cause huge amount of error. This setting is similarly applied to fallback-glyph as well.
use-windows-api false Specifies true when you want to use Windows API with the Windows version, without using the original API for the acquisition of the font information. Since Windows API and the original API are not completely the same, some difference may occur in the formatted result. Effective only with the Windows version. If false is specified, the setting of <formatter-serrings WindowsFontAPI> is invalid.
<script-font> child of <font-settings> script Specifies the script codes for multilingual setting. The available scripts conform to ISO 15924. However, the AH Formatter V5.0 does not support all scripts. The following scripts can be specified here.
  • Latn : Latin
  • Grek : Greek
  • Cyrl : Cyrillic
  • Arab : Arabic
  • Hebr : Hebrew
  • Deva : Devanagari
  • Thai : Thai
  • Hang : Hangul
  • Hans : Han (Chinese Simplified)
  • Hant : Han (Chinese Traditional)
  • Jpan : Japanese (Han+Hira+Kana)
For generic fonts you may omit the setting of the script or specifyas script=".".
serif Specifies the generic serif font when specified by the script.
sans-serif Specifies the generic sans-serif font when specified by the script.
monospace Specifies the generic monospace font when specified by the script.
cursive Specifies the generic cursive font when specified by the script.
fantasy Specifies the generic font for fantasy when specified by the script.
fallback Specifies the fall back font of the script specified by script. Two or more fonts can be enumerated by comma separated values.
<font-alias> child of <font-settings> src Formats the font name src (source) appearing in FO (or HTML etc.) by replacing with dst (destination). This is achieved by specifying an arbitrary font name for src and dst. This makes it possible to substitute an unknown font in a document made in a different environment, without modifying the document. However, in the following sample,
<font-alias src="A" dst="B">
<font-alias src="B" dst="C">
"A" would never be replaced with "C". Moreover, the setting for <font-alias> doesn't affect the font name in the Option file.
dst

PDF Output Settings

These settings are used for PDF Output.

Element Location Attribute Default Description
<pdf-settings> child of <formatter-config> certificate-name Specifies the certificate used when you apply the digital signature. The digital signature can be applied to the digital signature field in PDF only in the environment where you have PDF Digital Signature Module installed on you computer. no-LT
default-output-intent #OutputConditionIdentifier​=​CGATS TR 001 Sets the default value when the output intent is not specified in FO while outputting PDF/X. Values that can be specified are equal to the ones that can be specified to the src property for fo:color-profile. See also PDF/X
embed-all-fonts false Specifies whether to embed the all fonts in PDF or not with one of the following values, which are embeddable fonts in the formatted result.
  • false
  • true
  • base14
If the value is false, only fonts specified in <embed-font> are embedded. If the value is true, all fonts that can be embedded except Standard 14 fonts will be embedded. If the value is base14, all fonts including Standard 14 fonts that can be embedded will be embedded.
encryption-level 128 Specifies the key length when encrypting the PDF file to create. Specifies either 40 or 128. These are counted as bit number of the key length. This attribute is effective with PDF 1.4 or later.
EPS-processor none Specifies whether to output PDF after changing into PDF using an external processor when outputting EPS to PDF in the formatted result.
  • none
  • distiller
  • ghostscript
These have the following meanings.
  • none : Use nothing. The same way in the past.
  • distiller : Use Adobe Distiller in the environment where Adobe Distiller is installed. acrodist.exe is used. Effective only with the Windows version. EPS support at this time has a little restrictions.
    • PS-Adobe-2.0 or later required.
    • %%BeginProlog、%%EndProlog should be included.
    joboptions
  • ghostscript : Use Ghostscript in the environment where Ghostscript is installed. Use gswin32c.exe with the Windows version and use gs with non-Windows. Since the program is invoked by fork() etc. and used, there is no problem with GPL license. The operation is tested with AFPL Ghostscript 8.54.
    ghostscript
Invalid in the environment where each processor is not installed. Moreover, it’s necessary to set the PATH etc. of the program to use. The value is case-insensitive.
error-on-embed-fault true When an error occurs while embedding fonts, specifies whether to stop the job as an error or to continue embedding by replacing the character with a white space using the value of true or false. If the value is true, stops executing as an error. If the value is false, continues executing and outputs PDF by replacing the character with a white space.
error-on-missing-glyph false When the corresponding glyph for the specified character does not exist in the specified font, specifies whether to break off the processing as an error or to continue the processing by using true or false. When true is specified, the processing will end as an error. When false is specified, although PDF is outputted, the character will be displayed as a white space or a small box in PDF for missing glyph.
error-on-pdfx-fault true Specifies whether to stop formatting as an error or ignore the unsuitable content and continue formatting when a content which is unsuitable for PDF/X or PDF/A is detected while creating PDF/X or PDF/A, such like PDF/X-1a that contains RGB images. When the processing is continued, a generated PDF may be incongruent as PDF/X or PDF/A. As a regular PDF, there would be no problem. no-LT
ghostscript When converting EPS into PDF using Ghostscript, the full path to Ghostscript can be specified. For example, specify as follows; ghostscript="/usr/local/bin/gs." Thereby, Ghostscript can be invoked even if the PATH does not set to Ghostscript. Speecify gswin32c.exe in Windows version.
gif-pass-through true GIF image can be embedded into PDF directly. However the I/O error might occur if that PDF is printed on the PostScript printer. Please specify false when you want to avoid this.
grayscale-compression auto When the grayscale image format cannot be stored directly in PDF, the image is stored after being transformed into the bit map format which is compatible with PDF. The compression method of the data stored in a PDF file is then specified by one of the following values.
  • auto
  • jpeg
  • zlib
  • jpeg2000
When auto is selected, the process is automatically done and creates the image data according to the setting of grayscale-jpeg-quality and rasterize-resolution. Whichever has the smaller compressed size, JPEG or ZLIB, is selected. See also Image Output to learn about the file formats which can be stored directly in PDF.
This is the setting for the grayscale image. Specifies image-compression for the color image, and monochrome-compression for the monochrome image.
grayscale-downsampling none Specifies the method to downsample the raster grayscale image that is put into PDF. The options are:
  • none
  • average
  • bicubic
  • subsampling
When a value other than none is specified, the image that has resolution larger than the one specified by grayscale-downsampling-above-dpi will be downsampled to the resolution specified by grayscale-downsampling-target-dpi.
This is the setting for the grayscale image. Specifies image-downsampling for the color image, and monochrome-downsampling for the monochrome image.
grayscale-downsampling-above-dpi 108
grayscale-downsampling-target-dpi 72
grayscale-jpeg-quality 80 For the grayscale image format that cannot be stored directly in PDF, specifies the image quality by a numerical value within the range of 1-100 when jpeg is specified by grayscale-compression. The higher the number the better the quality in proportion to the increase in the number; however the file size also becomes larger.
CAUTION: It is not for changing the quality of a JPEG format image.
This is the setting for the grayscale image. Specifies jpeg-quality for the color image.
gs-add-options When converting EPS into PDF using Ghostscript, AH Formatter V5.0 specifies the following parameters and starts Ghostscript.
-q
-dCompatibilityLevel=1.3
-dAutoRotatePages=/None
-dPDFSETTINGS=/printer
-dNOPAUSE
-dBATCH
-dSAFER
-sDEVICE=pdfwrite
-dDEVICEWIDTHPOINTS=Width
-dDEVICEHEIGHTPOINTS=Height
-dEPSFitPage
-sOutputFile=Temporary Output File
-c
.setpdfwrite
-f Input EPS
An additional parameter can be specified as gs-add-options. Using the parameters specified here, Ghostscript is started by replacing -dCompatibilityLevel=1.3 and -dAutoRotatePages=/None stated above. Two or more parameters can be specified by being separated with U+000A. When gs-add-options is not specified, it is regarded as -dCompatibilityLevel=1.3&#10;-dAutoRotatePages=/None is not specified. Operation with an inaccurate parameter being specified is not guaranteed. V5.0
image-color-profile true Specifies whether to embed in the PDF the color profile of the color image that will be embedded. If the value is true it is embedded. If the value is false it is not embedded.
image-compression auto When the color image format cannot be stored directly in PDF, the image is stored after being transformed into the bit map format which is compatible with PDF. The compression method of the data stored in a PDF file is then specified by one of the following values.
  • auto
  • jpeg
  • zlib
  • jpeg2000
When auto is selected, the process is automatically done and creates the image data according to the setting of jpeg-quality and rasterize-resolution. Whichever has the smaller compressed size, JPEG or ZLIB, is selected. See also Image Output to learn about the file formats which can be stored directly in PDF.
This is the setting for the color image. Specifies grayscale-compression for the grayscale image, and monochrome-compression for the monochrome image.
image-downsampling none Specifies the method to downsample the raster color image that is put into PDF.
  • none
  • average
  • bicubic
  • subsampling
When a value other than none is specified, the image that has resolution larger than the one specified by image-downsampling-above-dpi will be downsampled to the resolution specified by image-downsampling-target-dpi.
This is the setting for the color image. Specifies grayscale-downsampling for the grayscale image, and monochrome-downsampling for the monochrome image.
image-downsampling-above-dpi 108
image-downsampling-target-dpi 72
jpeg-quality 80 For the color image format that cannot be stored directly in PDF, specifies the image quality by the numerical value within the range of 1-100 when jpeg is specified by image-compression. The higher the number the better the quality in proportion to the increase in the number; however the file size also becomes larger.
CAUTION: This is not for changing the quality of a JPEG format image.
This is the setting for the color image. Specifies grayscale-jpeg-quality for the grayscale image.
joboptions Specifies Adobe PDF Settings File which is passed to Distiller when converting EPS into PDF using Distiller. Only a local file can be specified. When specifying the relative path, the target EPS file is being considered a relative. However, when EPS itself is a relative path, the operation is instable. Please specify the joboptions with absolute path preferably. Please refer to the manual of Acrobat etc. for Adobe PDF Settings File. The operation when specifying an inaccurate file etc. will not be guaranteed. When this file is not specified, the following contents which are not almost specified at all will be assumed.
<<
  /CompatibilityLevel 1.3
  /AutoRotatePages /None
>> setdistillerparams
<<
>> setpagedevice
Effective only with the Windows version.
linearized false Specifies whether to create linearized PDF. If the value is true, creates linearized PDF that is optimized for Web display. If the value is false, creates normal PDF.
monochrome-compression auto When the monochrome image format cannot be stored directly in PDF, the image is stored after being transformed into the bit map format which is compatible with PDF. The compression method of the data stored in a PDF file is then specified by one of the following values.
  • ccitt4
  • ccitt3
  • runlength
  • zlib
  • none
Refer to the Image Output for the image format that can be stored directly in PDF.
This is the setting for monochrome images. Specifies image-compression for the color image, and grayscale-compression for the grayscale image.
monochrome-downsampling none Specifies the method to downsample the raster monochrome image that is put into PDF.
  • none
  • average
  • bicubic
  • subsampling
When a value other than none is specified, an image that has resolution larger than the one specified by monochrome-downsampling-above-dpi will be downsampled to the resolution specified by monochrome-downsampling-target-dpi.
This is the setting for the monochrome image. Specifies image-downsampling for the color image, and grayscale-downsampling for the grayscale image.
monochrome-downsampling-above-dpi 450
monochrome-downsampling-target-dpi 300
no-accessibility false Specifies whether to permit text access for screen reader devices of PDF files with the value of true or false. If false is specified, it is permitted. If true is specified, it is not permitted. This attribute is effective only when you specify PDF1.4 or later.
no-adding-or-changing-comments false Specifies whether to permit adding or changing comments and form fields in the PDF or not with the value of true or false. If the value is false, permits adding or changing. If the value is true, permits no changes or additions are allowed.
no-assemble-doc false Specifies whether to permit inserting, deleting and rotating of PDF pages with the value of true or false. If false is specified, it is permitted. If true is specified, it is not permitted. This attribute is effective only when you specify PDF1.4 or later.
no-changing false Specifies whether or not to permit making form field and making other changes in the PDF file or not with the value of true or false. If the value is false, changes are permitted. If the value is true, no changes are permitted.
no-content-copying false Specifies whether to permit copying the text and the graphics in PDF or not with the value of true or false. If the value is false, permits copying. If the value is true, permits no copying.
no-fill-form false Specifies whether to permit filling in of form fields and signing of the PDF file with the value of true or false. If false is specified, it is permitted. If true is specified, it is not permitted. This attribute is effective only when you specify PDF1.4 or later.
no-printing false Specifies whether to permit printing the PDF file or not with the value of true or false. If the value is false, permits printing. If the value is true, permits no printing.
owner-password Sets the strings specified as a master password. Specify the strings up to 32bytes. The characters with the code in the range of 0x20 to 0x7E, 0xA1 to 0xDF are effective. If the characters other than the above are included, it becomes invalid and no password is set. The default value is no-password.
CAUTION: The password is described in plaintext in the file. Please use care in managing the file.
page-labels true Specifies whether to apply the page labels to the page numbers with the value of true or false. If true is specified the page labels are applied, if false is specified, they are not applied.
pdf-version PDF1.4 Specifies the version of the PDF to create with one of the following values.
  • PDF1.3
  • PDF1.4
  • PDF1.5
  • PDF1.6
  • PDF1.7
  • PDF/X-1a:2001 no-LT
  • PDF/X-3:2002 no-LT
  • PDF/X-1a:2003 no-LT
  • PDF/X-2:2003 no-LT
  • PDF/X-3:2003 no-LT
  • PDF/A-1a:2005 no-LT
  • PDF/A-1b:2005 no-LT
PDF/X or PDF/A cannot be selected with AH Formatter V5.0 Lite.
printing-allowed high-resolution Specifies whether to print the resulting PDF file or not. If high-resolution is specified, it allows to printing in high resolution. low-resolution is effective with PDF1.4 or later. If low-resolution is specified, it allows printing in low resolution. If the PDF version is 1.3, it is handled as hi-resolution. If none is specified, it does not allow printing.
rasterize-resolution 108 If part of a vector image is transformed to a raster image and stored in the PDF. Specifies the value of the rasterised-resolution of the transformed raster images in the range from 70 to 500(dpi). This setting is effective only with Windows version. The vector format image which cannot be stored directly in PDF is not supported with non-Windows version. See also Image Output to learn about the file formats which can be stored directly in PDF.
rgb-conversion none Specifies how to convert the RGB color space to DeviceGray.
  • none
    Does no conversion. DeviceRGB is outputted.
  • black
    Converts Black to DeviceGray, converts the others to DeviceRGB before outputting.
  • gray
    Converts Gray color (mono tone) to DeviceGray, converts the others to DeviceRGB before outputting.
  • all
    Converts the all color spaces to DeviceGray before outputting. This conversion is based on the following formula: gray = 0.3×red + 0.59×green + 0.11×blue (0.0 ≤ red,green,blue ≤ 1.0).
  • cmyk
    Converts the all color spaces to CMYK before outputting.
As for the images other than SVG, MathML, EMF or WMF, which are drawn using their own drawing engine, there is no conversion.
signature false Specifies whether to apply the digital signature. The digital signature can be applied to the digital signature field in PDF only in the environment where you have PDF Digital Signature Module installed on you computer. no-LT
signature-name Specifies the signature used when you apply the digital signature. The digital signature can be applied to the digital signature field in PDF only in the environment where you have PDF Digital Signature Module installed on you computer. no-LT
tagged-pdf false Specifies whether to make the Tagged PDF file or not. PDF may not be able to be tagged depending on the PDF versions. In this case this setting will be ignored. no-LT
text-and-lineart-compression true Specifies whether the text and the line art in PDF are compressed in order to make the size of PDF smaller or not. If the value is true, it is compressed. If the value is false, it is not compressed.
use-launch-for-relative-uri true Specifies whether the external link (external-destination property) specified by the relative address is transformed into 'Open the file' or into 'World Wide Web link' in the PDF link properties with the value of true or false. If the value is true, it is transformed to 'Open the file'. If the value is false, it is transformed to 'World Wide Web link'.
user-password Sets the strings specified as a user password. Specify the strings up to 32bytes. The characters with the code in the range of 0x20 to 0x7E, 0xA1 to 0xDF are effective. If the characters other than the above are included, it becomes invalid and does not count as a password setting. The default value is no-password.
CAUTION: The password is described in plaintext in the file. Please use care in managing the file.
<embed-font> child of <pdf-settings> font Specifies the fonts which are embedded in the PDF. This element can be specified without limit and is effective only when embed-all-fonts="false" is specified. When embed-all-fonts="false" is specified and this element is not specified, only the glyph of the character which is needed in the PDF output is embedded. When the element is specified and if the font indicated here is used within the formatted results, the glyph of the character currently used will be embedded. For a font which is not specified, embedding is performed only for the glyph of the character which is needed in the PDF output.

SVG Output Settings

These settings are used for SVG Output.

Element Location Attribute Default Description
<svg-settings> child of <formatter-config> copy-image-path Specifies the destination directory to copy images to as specified by "copy-all" or "copy" by image-processing.
copy-image-prefix When images are copied to the directory specified by copy-image-path and processed, specifies the prefix of the file name. The file name will be prefix with sequence numbers. Default is empty character string with only sequential numbers.
embed-all-fonts false By using true or false, specifies whether to embed in the SVG all the outline data of TrueType and Type1 fonts which are not limited to embed among fonts used in the formatted result. If the value is false, only the font specified by <embed-font> is embedded. If the value is true, all fonts that can be embedded are embedded.
error-on-embed-fault true When an error occurs while embedding fonts, specifies whether to stop the job as an error or to continue embedding by replacing the character with a white space using the value of true or false. If the value is true, stops executing as an error. If the value is false, continues executing and outputs SVG by replacing the character with a white space.
format 1 When the formatted result is output to multiple SVG files specified by "false" in singlefile, specifies the format of the additional character string to output to the file name. This character string adopts the character string same as the format property of FO. Each file name is automatically determined based on the output file name. The character string as formatted by the value specified by format will be inserted just before the extension of the output file. For example, if the file name is document.svg, and format="-1" is specified, the file become document-1.svg and document-2.svg and so on.
gzip-compression false If the value is true, creates SVG compressed in gzip format. If the value is false, it is not compressed.
image-conversion auto When the image format to be embedded is a raster image other than JPEG or PNG, it is converted into JPEG or PNG and embedded. The following either can be specified.
  • auto
  • jpeg
  • png
When auto is selected, images of monochrome, grayscale or 256-or-less-color are converted into PNG, and the rest are converted into JPEG.
image-processing embed-all Specifies how to treat the referred image.
  • embed-all
    Embeds all images in the SVG.
  • link
    Links images that have been linked, and embeds the embedded image. Raster images other than JPEG and PNG are always embedded.
  • copy-all
    Copies all image files to the destination that is specified by copy-image-path, and then links.
  • copy
    Copies images that have been linked to the destination that is specified by copy-image-path, and links. The embedded image are embedded.
Refer to Image Output in SVG Output for details of operation.
jpeg-quality 80 For images that cannot be embedded directly in SVG, specifies the image quality by the numerical value within the range of 1-100 when "jpeg" or "auto" is specified by image-conversion. The higher the number the better the quality in proportion to the increase in the number; however the file size also becomes larger.
CAUTION: It is not for changing the quality of a JPEG format image.
rename-copy-image false When images are copied to the directory specified by copy-image-path etc. and processed, specifies whether to rename all file name to prefix specified by copy-image-prefix, or use original name. When the file name overlaps, sequential number is added. When true is specified, all files are renamed.
singlefile false Specifies whether the formatted result composed of multiple pages is output as a single SVG file or as multiple SVG files.
If the value is true, outputs as a single SVG file. If the value is false, outputs as multiple SVG files. When multiple fiels are output, the file is named by the format specified by format.
Effective only when outputting to a file. It is invalid in the output without the file name like the stream etc.
singlefile-number true When singlefile="false" is specified, specifies whether to add sequential number to the output SVG even if it has only one-page. It is not added in case of false.
rasterize-resolution 108 If part of a vector image is transformed to a raster image and stored in the SVG. Specifies the value of the rasterised-resolution of the transformed raster images in the range from 70 to 500(dpi). SVG, EMF and WMF are drawn in SVG as vectors without being transformed to raster images. This setting is effective only with Windows version. The vector format image which cannot be stored directly in SVG is not supported with non-Windows version.
svg-version 1.1 Specifies the version of the SVG to create with one of the following values.
  • 1.1
  • Basic
  • Tiny
<embed-font> child of <pdf-settings> font Specifies the fonts which are embedded in the SVG. This element can be specified without limit and is effective only when embed-all-fonts="false" is specified. When embed-all-fonts="false" is specified and this element is not specified, only the outline of the glyph of the character which is needed in the SVG output is embedded. When the element is specified and if the font indicated here is used within the formatted results, the outline of the glyph of the character currently used will be embedded. For a font which is not specified, embedding is performed only for the glyph of the character which is needed in the SVG output.

INX Output Settings

These settings are used for INX Output.

Element Location Attribute Default Description
<inx-settings> child of <formatter-config> output-mode text Specify how to generate the text frame of InDesign® from text.
  • text

    Text frame is generated from each text area. This mode can convert most closely to the formatting result. It is sometimes difficult to edit the result using InDesign®.

  • line

    Text frame is generated from each line area.

  • block

    Text frame is generated from each block area. It is easy to edit the result using InDesign®. Instead the conversion precision is lost at expense.

TEXT Output Settings

These settings are used for TEXT Output. These settings are not effective with AH Formatter V5.0 Lite. no-LT

Element Location Attribute Default Description
<text-settings> child of <formatter-config> encoding UTF-8 Specifies the encoding of the output text. The following encodings are available. They are not case sensitive.
  • UTF-8
  • UTF-16
  • UTF-16BE
  • UTF-16LE
  • UTF-32
  • UTF-32BE
  • UTF-32LE
  • ISO-10646-UCS-2
  • ISO-10646-UCS-4
  • ANSI_X3.4
  • ISO_646.irv
  • ISO646-US
  • US-ASCII
  • ISO_8859-1
  • latin1
  • Windows-31J
  • Shift_JIS
  • EUC-JP
  • ISO-2022-JP
Endian of UTF-16, UTF-32 etc. depends on the processor in the operating system.
eol-marker CRLF or LF Specifies the linefeed code of the output text. The followings can be specified. They are not case sensitive.
  • CRLF
  • LF
  • CR
The default value is CRLF in Windows, LF in others.

MathML Settings

These settings are used for MathML.

Element Location Attribute Default Description
<mathml-settings> child of <formatter-config> double_struck msbm Specifies the font family when mathvariant="double_struck" is specified.
fraktur eufm Specifies the font family when mathvariant="fraktur" or mathvariant="bold-fraktur" is specified.
script eusb Specifies the font family when mathvariant="script" or mathvariant="bold-script" is specified.
sans-serif sans-serif Specifies the font family when mathvariant="sans-serif" is specified.
monospace monospace Specifies the font family when mathvariant="monospace" is specified.
<math> child of <mathml-settings> small 0.8 Specifies the font size in units of em when mathsize="small" is specified.
normal 1.0 Specifies the font size in units of em when mathsize="normal" is specified.
big 1.25 Specifies the font size in units of em when mathsize="big" is specified.
axis-shift 0.0 Specifies the amount of justification for the position of axis in units of em.
<mfenced> child of <mathml-settings> center-shift 0.0 Specifies the amount of justification for the position of parenthesis in units of em.
<mfrac> child of <mathml-settings> bar-width 0.03 Specifies the form of the fraction. All the values should be in units of em.
numerator-space 0.1
denominator-space 0.1
bar-lspace 0.1
bar-rspace 0.1
bar-padding 0.1
thin 0.6 Specifies the bar width when linethickness="thin" is specified by the ratio against bar-width.
medium 1.0 Specifies the bar width when linethickness="medium" is specified by the ratio against bar-width.
thick 1.7 Specifies the bar width when linethickness="thick" is specified by the ratio against bar-width.
<mi> child of <mathml-settings> italic-lspace 0.0 Expands the width of the character in Italic and adjusts the overlap to the next character. Values can be specifed in units of em. This specification has effect on superscript-italic-shift, script-rspace, etc.
CAUTION: The value is set to the typical character for each in the Operator Dictionary. The character set in the Operator Dictionary needs to be adjusted by the Operator Dictionary.
italic-rspace 0.05
<mo> child of <mathml-settings> largeop 1.2 Specifies the font size in units of em when largeop="true" is specified.
largeop-integral 2.0 Specifies the font size of integral sign in units of em when largeop="true" is specified.
<mroot> child of <mathml-settings> padding-left 0.0 Specifies the position of the base part and index part against the root sign.
padding-right 0.0
padding-top 0.1
padding-bottom 0.0
index-rspace 0.1
index-shift 0.1
root-pos1.x 0.0 Specifies the form of root sign. The height values (*.y) should be specified by the ratio against the height of the area (= 'the height of the base part' + 'padding-top'+ 'padding-bottom'). Other values are specified by units of em.
root-pos1.y 0.4
root-pos2.x 0.1
root-pos2.y 0.5
root-pos3.x 0.3
root-pos3.y 0.1
root-pos4.x 0.6
root-pos4.y 0.1
root-width1 0.02
root-width2 0.1
root-width3 0.03
root-width4 0.03
<mscript> child of <mathml-settings> script-rspace 0.02 Specifies the space between the base character and subscript of the <msup> <msub> <msubsup> <mmultiscripts> elements in units of em.
script-rspace2 0.01
script-lspace 0.02
script-lspace2 0.01
superscript-shift 0.0 Specifies the amount to shift the subscript of the <msup> <msub> <msubsup> <mmultiscripts> elements in the vertical direction. The value should be in units of em against the base character.
CAUTION: The value is set to the typical character for each in the Operator Dictionary. The character set in the Operator Dictionary needs to be adjusted by the Operator Dictionary.
subscript-shift 0.0
superscript-italic-shift 0.1 Specifies the amount of the adjustment by kerning the subscript of the <msup> <msub> <msubsup> <mmultiscripts> elements when fontstyle="italic" is specified to the base character. The value should be in units of em against the base character.
CAUTION: The value is set to the typical character for each in the Operator Dictionary. The character set in the Operator Dictionary needs to be adjusted by the Operator Dictionary.
subscript-italic-shift 0.1
presuperscript-italic-shift 0.1
presubscript-italic-shift 0.1
<mtable> child of <mathml-settings> border-width 0.04 Specifies the border width of <mtable> in units of em.
<munderover> child of <mathml-settings> limit-size 0.6 Specifies the size of the subscript of the <mover> <munder> <munderover> elements when accent="false" in units of em against the base character. The font size is 1 em when accent="true" is specified.
overscript-space 0.18 Specifies the space between subscripts of the <mover> <munder> <munderover> elements in units of em against the base character.
CAUTION: The value is set to the typical character for each in the Operator Dictionary. The character set in the Operator Dictionary needs to be adjusted by the Operator Dictionary.
underscript-space 0.18
overaccent-shift 0.18 Adjusts the position of the subscript of the <mover> <munder> <munderover> elements when accent="true" is specified. The value should be in units of em against the base character.
CAUTION: The value is set to the typical character for each in the Operator Dictionary. The character set in the Operator Dictionary needs to be adjusted by the Operator Dictionary.
underaccent-shift 0.18
bar-width 0.04 Specifies the form of &OverBar; and &UnderBar; of the <mover> <munder> <munderover> elements in units of em against the base character.
bar-padding 0.05
overbar-space 0.1
underbar-space 0.1
<mstyle> child of <mathml-settings> scriptlevel 0 Specifies the each attribute value of the <mstyle> element when the value is omitted.
displaystyle false
scriptsizemultiplier 0.71
scriptminsize * 8pt
background transparent
veryverythinmathspace 0.0555556
verythinmathspace 0.111111
thinmathspace 0.166667
mediummathspace 0.222222
thickmathspace 0.277778
verythickmathspace 0.333333
veryverythickmathspace 0.388889
<operator-dictionary> child of <mathml-settings> src AH Formatter V5.0 has a operator dictionary existed in F. Operator Dictionary. By changing the contents of this dictionary, the position of various operators can be tuned finely. URI of the Operator Dictionary expressed by XML can be specified to the src attribute. When the relative URI is specified, it is regarded as the relativity from this option setting file. Any number of this element can be specified and evaluated in order of specification.

XSLT Settings

These settings are used for XSLT processor.

Element Location Attribute Default Description
<xslt-settings> child of <formatter-config> msxml true Specifies whether to use MSXML or not. If true is specified, MSXML is used as an XSLT processor. Specification of command is disregarded at this time. If false is specified, the external XSLT processor specified from command will be used, but when nothing is specified from command, it is considered that true is specified and MSXML is used. This setting is ignored in non-Windows environment.
command The command line of the External XSLT Processor is specified here. The command line strings must include at least three identifiers, %1, %2 and %3.
  • %1 : XML document
  • %2 : XSL stylesheet
  • %3 : XSLT Output File
  • %param : Parameter of xsl:param
If nothing is specified, or "@MSXML" is specified, the external processor is not used but the internal processor, MSXML4 or MSXML3 is used. This setting is effective only with Windows version. It's an initial setting of XSLT processor with all kinds of interfaces. If nothing is specified in non-Windows environment, XSLT transformation is not performed.
param-option Specifies the parameter type of xsl:param given to the external XSLT processor. The strings must include at least two identifiers, %p and %v. These values are as follows:
  • %p : Value of <param name>
  • %v : Value of <param value>
These values affect the part of %param in the command line strings. When two or more <param>s are specified, they are divided by the white space and repeated.
<param> child of <xslt-settings> name Specifies the parameter name of xsl:param for XSLT processor.
value Specifies the parameter value of xsl:param for XSLT processor. When the value includes a white space, please explicitly enclose in quotation marks.
<stylesheet> child of <xslt-settings> ns Possible to specify the stylesheet applied to a specific XML document. Specifies the name space of the XML document by ns, and specifies the URI of the stylesheet by href. The following shows the example of XHTML and WordML.
<stylesheet ns="http://www.w3.org/1999/xhtml" href="xhtml2fo.xsl"/>
<stylesheet ns="http://schemas.microsoft.com/office/word/2003/wordml" href="[WordMLToFO install directory]/WordMLToFO.xsl"/>
If the XML document has the name space specified here, it can be formatted by itself, without specifying the stylesheet. If the stylesheet is specified when formatting or the stylesheet is specified in the XML document, these are adopted and the setting here will be ignored.
href

Suppose XSLT setting is as follows:

<xslt-settings command="xslt -o &#34;%3&#34; &#34;%1&#34; &#34;%2&#34; %param" param-option="%p=%v">
  <param name="foo" value="123"/>
  <param name="bar" value="&#34;Hello, World&#34;"/>
</xslt-settings>

XSLT processor executes as follows in order to transform file.xml and file.xsl into file.fo.

xslt -o "file.fo" "file.xml" "file.xsl" foo=123 bar="Hello, World"

As described in the example here, the actual file name given to %1 or %2 includes white space, it's necessary to enclose the file name with quotation mark, &#34;.

Other Settings

These settings are not effective with AH Formatter V5.0 Lite.

Element Location Attribute Default Description
<rxe-settings> child of <formatter-config> command Specifies the parameter when transforming the Project file of XSL Report Designer and XML document into FO automatically and format the generated FO. The setting must be the complete command-line format and includes three identifiers, %1, %2 and %3. These values are as follows:
  • %1 : XML document
  • %2 : Project file
  • %3 : Output FO file
XSL Report Designer has the regular format of command-line. The following shows the simple example of XSL Report Designer command-line format. Actually more complicated setting will be necessary. See also XSL Report Designer Online Manual for more detail.

command="java jp.co.antenna.rx.rxe.rxe -layout %2 -output %3 %1"

If the actual file name given to %1 or %2 includes white space, it's necessary to enclose the file name with quotation mark, &#34;. An actual setting will get longer as follows in a certain environment.

command="java -Xms16m -Xmx512m -cp &#34;C:\Program Files\Antenna\XSLTemplateDesignerV1\lib\rxe.jar;C:\Program Files\Antenna\XSLTemplateDesignerV1\lib\xml-apis.jar;C:\Program Files\Antenna\XSLTemplateDesignerV1\lib\xercesImpl.jar;C:\Program Files\Antenna\XSLTemplateDesignerV1\lib\xalan.jar;C:\Program Files\Antenna\XSLTemplateDesignerV1\lib\jai_imageio.jar&#34; jp.co.antenna.rx.rxe.rxe -layout &#34;%2&#34; -output &#34;%3&#34; &#34;%1&#34;"

When formatting from a command line, please specify the Project file to -s and specify the option setting file with <rxe-settings> description to -i as follows:

AHFCmd -d sample.xml -s sample.rxl -o sample.pdf -i AHFSettings.xml

Example for Option Setting File

<?xml version="1.0"?>
<formatter-config>
  <formatter-settings
      default-page-width="210mm"
      default-page-height="297mm"
      default-font-size="10pt"
      normal-line-height="1.2"
      default-color="#000000"
      border-thin-width="1pt"
      border-medium-width="3pt"
      border-thick-width="5pt"
      pxpi="96"
      default-lang=""
      default-CJK="ja"
      punctuation-trim="true"
      text-autospace="true"
      vertical-underline-side="auto"
      punctuation-spacing="0.5"
      text-autospace-width="0.25"/>
  <pdf-settings
      embed-all-fonts="false"
      error-on-embed-fault="false"
      user-password=""
      master-password=""
      no-printing="false"
      no-changing="false"
      no-content-copying="false"
      no-adding-or-changing-comments="false"
      image-compression="auto"
      jpeg-quality="80"
      compress-content-stream="true"
      use-launch-for-relative-uri="true"
      rasterize-resolution="108">
    <embed-font font="Arial"/>
    <embed-font font="Courier New"/>
  </pdf-settings>

  <font-settings default-font-family="serif">
    <script-font
      serif="Times New Roman"
      sans-serif="Arial"
      monospace="Courier New"
      cursive="Times New Roman"
      fantasy="Times New Roman"/>
    <script-font
      script="jpn"
      serif="MS Mincho"
      sans-serif="MS Gothic"
      monospace="MS Mincho"/>
    <script-font
      script="kor"
      serif="Batang"
      sans-serif="Gulim"
      monospace="BatangChe"/>
    <script-font
      script="zho-CN"
      serif="SimSun"
      sans-serif="SimHei"
      monospace="SimSun"/>
    <script-font
      script="zho-TW"
      serif="MingLiU"
      sans-serif="MingLiU"
      monospace="MingLiU"/>
  </font-settings>
  <xslt-settings command="xslt -o &#34;%3&#34; &#34;%1&#34; &#34;%2&#34; %param"
                 param-option="%p=%v">
    <param name="foo" value="123"/>
    <param name="bar" value="XYZ"/>
  </xslt-settings>
</formatter-config>

DTD of Option Setting File

The DTD of Option Setting File is as follows: (This DTD is not very accurate. Please utilize it for taking a general view of the syntax only.)

<!-- the root element -->
<!ELEMENT formatter-config
        ( formatter-settings?
        , font-settings?
        , pdf-settings?
        , svg-settings?
        , text-settings?
        , mathml-settings?
        , xslt-settings?
        , rxe-settings?
        )
>

<!ENTITY % float     "CDATA"><!-- number without unit -->
<!ENTITY % abslength "CDATA"><!-- number with unit
                                  unit is one of followings
                                      cm : centimeter
                                      mm : millimeter, 1 millimeter = 1/10 centimeter
                                      in : inch, 1 inch = 2.54 centimeters
                                      pt : point, 1 point = 1/72 inch
                                      pc : pica, 1 pica = 12 points
                               -->
<!ENTITY % length    "CDATA"><!-- number with unit
                                  unit is one of followings
                                      cm : centimeter
                                      mm : millimeter, 1 millimeter = 1/10 centimeter
                                      in : inch, 1 inch = 2.54 centimeters
                                      pt : point, 1 point = 1/72 inch
                                      pc : pica, 1 pica = 12 points
                                      px : pixel
                                      em : relative length
                               -->

<!ENTITY % integer     "CDATA"><!-- integer with/without sign -->
<!ENTITY % uinteger    "CDATA"><!-- integer without sign -->
<!ENTITY % byteinteger "CDATA"><!-- uinteger of 0 to 225 -->

<!ENTITY % font-family "CDATA"><!-- font family -->

<!ENTITY % lang "CDATA"><!-- language code follows ISO 639 -->

<!ENTITY % script  "CDATA"><!-- script code follows RFC15924 -->
<!ENTITY % scripts "CDATA"><!-- comma separated scripts -->

<!ENTITY % color "CDATA"><!-- color name or #XXXXXX or #XXX -->

<!ENTITY % bool "(true|false)" >

<!ENTITY % URI "CDATA"><!-- universal resource identifier, RFC1630 -->

<!-- formatter settings -->

<!ELEMENT formatter-settings
        ( space-before-punctuation?
        , space-after-punctuation?
        , space-between-punctuation-and-digit?
        , space-between-digit-and-punctuation?
        )
>
<!ATTLIST formatter-settings default-page-width         %abslength; "210mm">
<!ATTLIST formatter-settings default-page-height        %abslength; "297mm">
<!ATTLIST formatter-settings default-font-size          %abslength; "10pt">
<!ATTLIST formatter-settings normal-line-height             %float; "1.2"><!-- em -->
<!ATTLIST formatter-settings default-color                  %color; "#000000">
<!ATTLIST formatter-settings border-thin-width          %abslength; "1pt">
<!ATTLIST formatter-settings border-medium-width        %abslength; "3pt">
<!ATTLIST formatter-settings border-thick-width         %abslength; "5pt">
<!ATTLIST formatter-settings printer-marks-line-length  %abslength; "10mm">
<!ATTLIST formatter-settings printer-marks-zero-margin  %abslength; "3mm">
<!ATTLIST formatter-settings pxpi                        %uinteger; "96"><!-- dpi -->
<!ATTLIST formatter-settings default-lang                    %lang; "">
<!ATTLIST formatter-settings default-CJK                     %lang; #IMPLIED>
<!ATTLIST formatter-settings punctuation-trim                %bool; "true">
  <!-- value of axf:punctuation-trim="auto"
         true  means "both"
         false means "none" -->
<!ATTLIST formatter-settings punctuation-spacing            %float; "0.5"><!-- em -->
<!ATTLIST formatter-settings text-autospace                  %bool; "true">
  <!-- value of axf:text-autospace="auto"
         true  means "ideograph-numeric ideograph-alpha"
         false means "none" -->
<!ATTLIST formatter-settings text-autospace-width           %float; "0.25"><!-- em -->
<!ATTLIST formatter-settings append-non-starter-characters    CDATA "">
   <!-- except for white space
                   closing parenthesis
                   punctuations -->
<!ATTLIST formatter-settings append-non-end-of-line-characters CDATA "">
   <!-- except for white space
                   opening parenthesis
                   punctuations -->
<!ATTLIST formatter-settings vertical-underline-side (auto|left|right) "auto">
<!ATTLIST formatter-settings text-kashida-space          %uinteger; "100"><!-- % : 0 to 100 -->
<!ATTLIST formatter-settings fixed-width-space-treatment     %bool; "true">
<!ATTLIST formatter-settings thin-space-width               %float; "0.2"><!-- em -->
<!ATTLIST formatter-settings hair-space-width               %float; "0.1"><!-- em -->
<!ATTLIST formatter-settings SVGViewer                       %bool; "false">
<!ATTLIST formatter-settings WindowsFontAPI               %scripts; "">
<!ATTLIST formatter-settings HyphenationOption               %bool; "false">
<!ATTLIST formatter-settings PrinterOrientation     (auto|0|90|270) "auto">
<!ATTLIST formatter-settings PscriptPassThrough              %bool; "true">
<!ATTLIST formatter-settings table-auto-layout-limit      %integer; 100>
<!ATTLIST formatter-settings table-is-reference-area         %bool; "false">
<!ATTLIST formatter-settings default-from-page-master-region %bool; "false">
<!ATTLIST formatter-settings two-pass-formatting             %bool; "false">

<!ELEMENT space-before-punctuation ENPTY >
<!ATTLIST space-before-punctuation language   %lang; #IMPLIED>
<!ATTLIST space-before-punctuation code        CDATA #IMPLIED>
<!ATTLIST space-before-punctuation space     %float; #IMPLIED>
<!ELEMENT space-after-punctuation ENPTY >
<!ATTLIST space-after-punctuation language   %lang; #IMPLIED>
<!ATTLIST space-after-punctuation code        CDATA #IMPLIED>
<!ATTLIST space-after-punctuation space     %float; #IMPLIED>
<!ELEMENT space-between-punctuation-and-digit ENPTY >
<!ATTLIST space-between-punctuation-and-digit language   %lang; #IMPLIED>
<!ATTLIST space-between-punctuation-and-digit code        CDATA #IMPLIED>
<!ATTLIST space-between-punctuation-and-digit space     %float; #IMPLIED>
<!ELEMENT space-between-digit-and-punctuation ENPTY >
<!ATTLIST space-between-digit-and-punctuation language   %lang; #IMPLIED>
<!ATTLIST space-between-digit-and-punctuation code        CDATA #IMPLIED>
<!ATTLIST space-between-digit-and-punctuation space     %float; #IMPLIED>

<!-- font settings -->

<!ELEMENT font-settings (script-font|font-alias)* >
<!ATTLIST font-settings default-font-family (serif|sans-serif|monospace|cursive|fantasy) "serif">
<!ATTLIST font-settings missing-font  (0|1|2) "1">
<!ATTLIST font-settings missing-gryph (0|1|2) "1">

<!ELEMENT script-font EMPTY >
<!ATTLIST script-font script      %script; "">
<!ATTLIST script-font serif       %font-family; #IMPLIED>
<!ATTLIST script-font sans-serif  %font-family; #IMPLIED>
<!ATTLIST script-font monospace   %font-family; #IMPLIED>
<!ATTLIST script-font cursive     %font-family; #IMPLIED>
<!ATTLIST script-font fantasy     %font-family; #IMPLIED>

<!ELEMENT font-alias EMPTY >
<!ATTLIST font-alias src          %font-family; #IMPLIED>
<!ATTLIST font-alias dst          %font-family; #IMPLIED>

<!-- PDF output settings -->

<!ELEMENT pdf-settings (embed-font)* >
<!ATTLIST pdf-settings pdf-version (PDF1.3|PDF1.4|PDF1.5|PDF1.6|PDF1.7|
                                    PDF/X-1a:2001|
                                    PDF/X-3:2002|
                                    PDF/X-1a:2003|
                                    PDF/X-2:2003|
                                    PDF/X-3:2003) "PDF1.4">
<!ATTLIST pdf-settings tagged-pdf                     %bool; "false">
<!ATTLIST pdf-settings linearized                     %bool; "false">
<!ATTLIST pdf-settings rgb-conversion  (none|black|gray|all|cmyk) "none">
<!ATTLIST pdf-settings encryption-level             (40|128) "128">
<!ATTLIST pdf-settings embed-all-fonts  (true|false|base14); "false">
<!ATTLIST pdf-settings error-on-embed-fault           %bool; "true">
<!ATTLIST pdf-settings error-on-missing-glyph         %bool; "false">
<!ATTLIST pdf-settings error-on-pdfx-fault            %bool; "false">
<!ATTLIST pdf-settings user-password                   CDATA ""><!-- up to 32 bytes -->
<!ATTLIST pdf-settings master-password                 CDATA ""><!-- up to 32 bytes -->
<!ATTLIST pdf-settings printing-allowed (high-resolution|low-resolution|none) "high-resolution">
<!ATTLIST pdf-settings no-printing                    %bool; "false">
<!ATTLIST pdf-settings no-changing                    %bool; "false">
<!ATTLIST pdf-settings no-content-copying             %bool; "false">
<!ATTLIST pdf-settings no-adding-or-changing-comments %bool; "false">
<!ATTLIST pdf-settings no-fill-form                   %bool; "false">
<!ATTLIST pdf-settings no-accessibility               %bool; "false">
<!ATTLIST pdf-settings no-assemble-doc                %bool; "false">
<!ATTLIST pdf-settings image-compression  (auto|jpeg|zlib|jpeg2000) "auto">
<!ATTLIST pdf-settings image-downsampling (none|average|bicubic|subsampling) "none">
<!ATTLIST pdf-settings image-downsampling-above-dpi  %uinteger; "108"><!-- dpi -->
<!ATTLIST pdf-settings image-downsampling-target-dpi %uinteger; "72"><!-- dpi -->
<!ATTLIST pdf-settings jpeg-quality                  %uinteger; "80"><!-- % : 1 to 100 -->
<!ATTLIST pdf-settings image-color-profile               %bool; "true">
<!ATTLIST pdf-settings grayscale-compression  (auto|jpeg|zlib|jpeg2000) "auto">
<!ATTLIST pdf-settings grayscale-downsampling (none|average|bicubic|subsampling) "none">
<!ATTLIST pdf-settings grayscale-downsampling-above-dpi  %uinteger; "108"><!-- dpi -->
<!ATTLIST pdf-settings grayscale-downsampling-target-dpi %uinteger; "72"><!-- dpi -->
<!ATTLIST pdf-settings grayscale-jpeg-quality            %uinteger; "80"><!-- % : 1 to 100 -->
<!ATTLIST pdf-settings monochrome-compression (ccitt4|ccitt3|runlength|zlib|none) "ccitt4">
<!ATTLIST pdf-settings monochrome-downsampling (none|average|bicubic|subsampling) "none">
<!ATTLIST pdf-settings monochrome-downsampling-above-dpi  %uinteger; "450"><!-- dpi -->
<!ATTLIST pdf-settings monochrome-downsampling-target-dpi %uinteger; "300"><!-- dpi -->
<!ATTLIST pdf-settings rasterize-resolution       %uinteger; "108"><!-- dpi -->
<!ATTLIST pdf-settings use-launch-for-relative-uri    %bool; "true">
<!ATTLIST pdf-settings text-and-lineart-compression   %bool; "true">
<!ATTLIST pdf-settings gif-pass-through               %bool; "true">
<!ATTLIST pdf-settings default-output-intent           CDATA #IMPLIED>
<!ATTLIST pdf-settings page-labels                    %bool; "true">
<!ATTLIST pdf-settings signature                      %bool; "false">
<!ATTLIST pdf-settings signature-name                  CDATA "">
<!ATTLIST pdf-settings certificate-name                CDATA "">

<!ELEMENT embed-font EMPTY >
<!ATTLIST embed-font font %font-family; #IMPLIED>

<!-- SVG output settings -->

<!ELEMENT svg-settings (embed-font)* >
<!ATTLIST svg-settings svg-version     (1.1|Basic|Tiny) "1.1">
<!ATTLIST svg-settings copy-image-path            CDATA "">
<!ATTLIST svg-settings copy-image-prefix          CDATA "">
<!ATTLIST svg-settings embed-all-fonts           %bool; "false">
<!ATTLIST svg-settings error-on-embed-fault      %bool; "true">
<!ATTLIST svg-settings format                     CDATA "1">
<!ATTLIST svg-settings gzip-compression          %bool; "false">
<!ATTLIST svg-settings image-conversion (auto|jpeg|png) "auto">
<!ATTLIST svg-settings image-processing (embed-all|link|copy-all|copy) "embed-all">
<!ATTLIST svg-settings jpeg-quality          %uinteger; "80"><!-- % : 1 to 100 -->
<!ATTLIST svg-settings rename-copy-image         %bool; "false">
<!ATTLIST svg-settings singlefile                %bool; "false">
<!ATTLIST svg-settings rasterize-resolution  %uinteger; "108"><!-- dpi -->

<!ELEMENT embed-font EMPTY >
<!ATTLIST embed-font font %font-family; #IMPLIED>

<!-- text output settings -->

<!ELEMENT text-settings EMPTY >
<!ATTLIST text-settings encoding           CDATA "UTF-8"> <!-- ignore case -->
<!ATTLIST text-settings eol-marker  (CRLF|LF|CR) #IMPLIED><!-- ignore case -->

<!-- MathML settings -->

<!ELEMENT mathml-settings
        ( math?
        , mfenced?
        , mfrac?
        , mi?
        , mo?
        , mroot?
        , mscripts?
        , mtable?
        , munderover?
        , mstyle?
        , operator-dictionary*
        )
>
<!ATTLIST mathml-settings double_struck %font-family; #IMPLIED>
<!ATTLIST mathml-settings fraktur       %font-family; #IMPLIED>
<!ATTLIST mathml-settings script        %font-family; #IMPLIED>
<!ATTLIST mathml-settings sans-serif    %font-family; #IMPLIED>
<!ATTLIST mathml-settings monospace     %font-family; #IMPLIED>

<!ELEMENT math EMPTY >
<!ATTLIST math small              %float; #IMPLIED>
<!ATTLIST math normal             %float; #IMPLIED>
<!ATTLIST math big                %float; #IMPLIED>
<!ATTLIST math axis-shift         %float; #IMPLIED>

<!ELEMENT mfenced EMPTY >
<!ATTLIST mfenced center-shift    %float; #IMPLIED>

<!ELEMENT mfrac EMPTY >
<!ATTLIST mfrac bar-width         %float; #IMPLIED>
<!ATTLIST mfrac numerator-space   %float; #IMPLIED>
<!ATTLIST mfrac denominator-space %float; #IMPLIED>
<!ATTLIST mfrac bar-lspace        %float; #IMPLIED>
<!ATTLIST mfrac bar-rspace        %float; #IMPLIED>
<!ATTLIST mfrac bar-padding       %float; #IMPLIED>
<!ATTLIST mfrac thin              %float; #IMPLIED>
<!ATTLIST mfrac medium            %float; #IMPLIED>
<!ATTLIST mfrac thick             %float; #IMPLIED>

<!ELEMENT mi EMPTY >
<!ATTLIST mi italic-lspace        %float; #IMPLIED>
<!ATTLIST mi italic-rspace        %float; #IMPLIED>

<!ELEMENT mo EMPTY >
<!ATTLIST mo largeop              %float; #IMPLIED>
<!ATTLIST mo integral-size        %float; #IMPLIED>

<!ELEMENT mroot EMPTY >
<!ATTLIST mroot padding-left      %float; #IMPLIED>
<!ATTLIST mroot padding-right     %float; #IMPLIED>
<!ATTLIST mroot padding-top       %float; #IMPLIED>
<!ATTLIST mroot padding-bottom    %float; #IMPLIED>
<!ATTLIST mroot index-rspace      %float; #IMPLIED>
<!ATTLIST mroot index-shift       %float; #IMPLIED>
<!ATTLIST mroot root-pos1.x       %float; #IMPLIED>
<!ATTLIST mroot root-pos1.y       %float; #IMPLIED>
<!ATTLIST mroot root-pos2.x       %float; #IMPLIED>
<!ATTLIST mroot root-pos2.y       %float; #IMPLIED>
<!ATTLIST mroot root-pos3.x       %float; #IMPLIED>
<!ATTLIST mroot root-pos3.y       %float; #IMPLIED>
<!ATTLIST mroot root-pos4.x       %float; #IMPLIED>
<!ATTLIST mroot root-pos4.y       %float; #IMPLIED>
<!ATTLIST mroot root-width1       %float; #IMPLIED>
<!ATTLIST mroot root-width2       %float; #IMPLIED>
<!ATTLIST mroot root-width3       %float; #IMPLIED>
<!ATTLIST mroot root-width4       %float; #IMPLIED>

<!ELEMENT mscript EMPTY >
<!ATTLIST mscript script-rspace               %float; #IMPLIED>
<!ATTLIST mscript script-rspace2              %float; #IMPLIED>
<!ATTLIST mscript script-lspace               %float; #IMPLIED>
<!ATTLIST mscript script-lspace2              %float; #IMPLIED>
<!ATTLIST mscript superscript-shift           %float; #IMPLIED>
<!ATTLIST mscript subscript-shift             %float; #IMPLIED>
<!ATTLIST mscript superscript-italic-shift    %float; #IMPLIED>
<!ATTLIST mscript subscript-italic-shift      %float; #IMPLIED>
<!ATTLIST mscript presuperscript-italic-shift %float; #IMPLIED>
<!ATTLIST mscript presubscript-italic-shift   %float; #IMPLIED>

<!ELEMENT mtable EMPTY >
<!ATTLIST mtable border-width          %float; #IMPLIED>

<!ELEMENT munderover EMPTY >
<!ATTLIST munderover limit-size        %float; #IMPLIED>
<!ATTLIST munderover overscript-space  %float; #IMPLIED>
<!ATTLIST munderover underscript-space %float; #IMPLIED>
<!ATTLIST munderover overaccent-shift  %float; #IMPLIED>
<!ATTLIST munderover underaccent-shift %float; #IMPLIED>
<!ATTLIST munderover bar-width         %float; #IMPLIED>
<!ATTLIST munderover bar-padding       %float; #IMPLIED>
<!ATTLIST munderover overbar-space     %float; #IMPLIED>
<!ATTLIST munderover underbar-space    %float; #IMPLIED>

<!ELEMENT mstyle EMPTY >
<!ATTLIST mstyle scriptlevel           %integer; #IMPLIED>
<!ATTLIST mstyle displaystyle             %bool; #IMPLIED>
<!ATTLIST mstyle scriptsizemultiplier    %float; #IMPLIED>
<!ATTLIST mstyle scriptminsize       %abslength; #IMPLIED>
<!ATTLIST mstyle background              %color; #IMPLIED>
<!ATTLIST mstyle veryverythinmathspace  %length; #IMPLIED>
<!ATTLIST mstyle verythinmathspace      %length; #IMPLIED>
<!ATTLIST mstyle thinmathspace          %length; #IMPLIED>
<!ATTLIST mstyle mediummathspace        %length; #IMPLIED>
<!ATTLIST mstyle thickmathspace         %length; #IMPLIED>
<!ATTLIST mstyle verythickmathspace     %length; #IMPLIED>
<!ATTLIST mstyle veryverythickmathspace %length; #IMPLIED>

<!ELEMENT operator-dictionary EMPTY >
<!ATTLIST operator-dictionary src %URI; #REQUIRED>

<!-- XSLT settings -->

<!ELEMENT xslt-settings (param|stylesheet)* >
<!ATTLIST xslt-settings command CDATA #REQUIRED>
<!ATTLIST xslt-settings param   CDATA #REQUIRED>

<!ELEMENT param EMPTY >
<!ATTLIST param name  CDATA #REQUIRED>
<!ATTLIST param value CDATA #REQUIRED>

<!ELEMENT stylesheet EMPTY >
<!ATTLIST stylesheet ns   CDATA #REQUIRED>
<!ATTLIST stylesheet href %URI; #REQUIRED>

<!-- RXE settings -->

<!ELEMENT rxe-settings EMPTY >
<!ATTLIST rxe-settings command CDATA #REQUIRED>

Operator Dictionary

Operator Dictionary is a setting file for adjusting the position of the operator in MathML. The contents which can be set up are the same as F. Operator Dictionary and extensions. Please see also there for the details of attributes. The initial value for AH Formatter V5.0 is made by adding the followings to the contents in F.5 Operator dictionary entries.

What is necessary will be to specify only a portion to change, since the attribute which was not specified is not evaluated.

Extensions for the Operator Dictionary is original for AH Formatter V5.0. The initial values will be described later.

Element Location Attribute Description
<operator-dictionary> root element
<entry> child of <operator-dictionary> operator Specifies the name of a operator. Entity references supported in MathML can also be specified like operator="&sum;" Moreover, the arbitrary operators specified by <mo> can also be specified. Please be sure to specify this attribute.
form Specifies infix or prefix or postfix. These attributes show in which position the operator specified by the operator attribute appears. Please be sure to specify this attribute.
AH Formatter V5.0 makes it possible to specify the extensions. These are used when tuning the position of each character finely. For details, please refer to Extensions for Operator Dictionary.
fence Specifies true or false.
separator Specifies true or false.
lspace A numerical value without a symbol with a unit or either of the following can be specified.
  • veryverythinmathspace
  • verythinmathspace
  • thinmathspace
  • mediummathspace
  • thickmathspace
  • verythickmathspace
  • veryverythickmathspace
The units which can be specified are arbitrary units, such as em which can be specified in FO, or %.
rspace
stretchy Specifies true or false.
symmetric Specifies true or false.
maxsize A numerical value without a symbol without a unit, a numerical value without a symbol with a unit, or either of the following can be specified.
  • infinity (maxsize only)
  • veryverythinmathspace
  • verythinmathspace
  • thinmathspace
  • mediummathspace
  • thickmathspace
  • verythickmathspace
  • veryverythickmathspace
The units which can be specified are arbitrary units, such as em which can be specified in FO, or %.
minsize
largeop Specifies true or false.
movablelimits Specifies true or false.
accent Specifies true or false.

Extensions for Operator Dictionary

AH Formatter V5.0 extends the Operator Dictionary and enables to tune a position of each character finely. By specifying form="extension", character height, information about the kerning when it's Italic, details for output position adjustment of the overscript, subscript, etc., can be registered for every character and can be specified as follows, for example.

<entry operator="f" form="extension" italic-lsapce="0em" italic-rsapce="0.2em"/>

Attribute Description
italic-lspace Specifies the amount of white space when fontstyle="italic" is specified to the base character so that an overlap does not arise to an output element on either side when outputting <mi> <mo> <ci> character.
This expands the occupancy width of the base character. Some fonts may run off the right edge when it is made italic, they may also run off the left edge.
When <mi> <ci> elements are the characters in Italic, and the elements before and after the <mi> <ci> elements are <mi> <mn> <ci> and they are Italic, italic-lspace or italic-rspace adjacent to the element is not adjusted.
This specification overwrites the specification of the Option Setting file for the target character.
italic-rspace
superscript-italic-shift Specifies the amount of the adjustment by kerning the subscript of the <msup> <msub> <msubsup> <mmultiscripts> elements when fontstyle="italic" is specified to the base character. If talic-lspace and italic-rspace are specified, it will become the amount of movements from it. This specification overwrites the specification of the Option Setting file for the target character.
subscript-italic-shift
presuperscript-italic-shift
presubscript-italic-shift
superscript-shift Specifies the amount to shift the subscript of the <msup> <msub> <msubsup> <mmultiscripts> elements in the vertical direction.
This specification overwrites the specification of the Option Setting file for the target character.
subscript-shift
overscript-space Specifies the space between subscripts of the <mover> <munder> <munderover> elements.
This specification overwrites the specification of the Option Setting file for the target character.
underscript-space
overaccent-shift Adjusts the position of the subscript of the <mover> <munder> <munderover> elements when accent="true" is specified.
This specification overwrites the specification of the Option Setting file for the target character.
underaccent-shift
glyph-altitude glyph-altitude specifies the distance from a baseline to the upper end of a character. This serves as a standard which asks for the position of overscript of <mover> <munderover>.
When drawing overscript to two or more characters, the maximum value of glyph-altitude of each character is made as glyph-altitude of the whole character string.
The standard of underscript does not perform adjustment for every character, but is based on the lower end (position of depth of a font) of a character. As for the character which does not specify glyph-altitude as a operator dictionary, "A" is a standard for English capital letters and numbers, "a" is a standard for lowercase letters, and the altitude of a font is a standard for the other characters.
As for the <mover> <munderover> elements, when the formula of base has the structure of <msup> < mroot> etc. and cannot refer to the height of a character directly, the upper end of the region of the whole base is a standard of overscript.

Default of Operator Dictionary

The initial values for extensions of the operator dictionary are as follows. The values for the characters specified here overwrite the specification of the Option Setting file. That is, the specification in the Option Setting file is not effective. Refer to F.5 Operator dictionary entries for the initial values other than extension.

<operator-dictionary>
<entry operator="A" form="extension" italic-lspace="0.05em" italic-rspace="0em"
       glyph-altitude="0.6em"/>
<entry operator="B" form="extension" italic-lspace="0.05em" italic-rspace="0.04em"/>
<entry operator="C" form="extension" italic-lspace="0em" italic-rspace="0.08em"/>
<entry operator="D" form="extension" italic-lspace="0.03em" italic-rspace="0.04em"/>
<entry operator="E" form="extension" italic-lspace="0.03em" italic-rspace="0.1em"/>
<entry operator="F" form="extension" italic-lspace="0.03em" italic-rspace="0.14em"/>
<entry operator="G" form="extension" italic-lspace="0em" italic-rspace="0.06em"/>
<entry operator="H" form="extension" italic-lspace="0.03em" italic-rspace="0.16em"/>
<entry operator="I" form="extension" italic-lspace="0.03em" italic-rspace="0.14em"/>
<entry operator="J" form="extension" italic-lspace="0.05em" italic-rspace="0.16em"/>
<entry operator="K" form="extension" italic-lspace="0.05em" italic-rspace="0.14em"/>
<entry operator="L" form="extension" italic-lspace="0.05em" italic-rspace="0.4em"/>
<entry operator="M" form="extension" italic-lspace="0em" italic-rspace="0.16em"/>
<entry operator="N" form="extension" italic-lspace="0.05em" italic-rspace="0.16em"/>
<entry operator="O" form="extension" italic-lspace="0em" italic-rspace="0.08em"/>
<entry operator="P" form="extension" italic-lspace="0.03em" italic-rspace="0.08em"/>
<entry operator="Q" form="extension" italic-lspace="0em" italic-rspace="0.06em"/>
<entry operator="R" form="extension" italic-lspace="0.03em" italic-rspace="0.06em"/>
<entry operator="S" form="extension" italic-lspace="0em" italic-rspace="0.1em"/>
<entry operator="T" form="extension" italic-lspace="0em" italic-rspace="0.16em"/>
<entry operator="U" form="extension" italic-lspace="0em" italic-rspace="0.16em"/>
<entry operator="V" form="extension" italic-lspace="0em" italic-rspace="0.18em"/>
<entry operator="W" form="extension" italic-lspace="0em" italic-rspace="0.18em"/>
<entry operator="X" form="extension" italic-lspace="0.07em" italic-rspace="0.18em"/>
<entry operator="Y" form="extension" italic-lspace="0em" italic-rspace="0.18em"/>
<entry operator="Z" form="extension" italic-lspace="0em" italic-rspace="0.12em"/>
<entry operator="a" form="extension" italic-lspace="0em" italic-rspace="0.02em"
       glyph-altitude="0.42em"/>
<entry operator="b" form="extension" italic-lspace="0em" italic-rspace="0.02em"
       glyph-altitude="0.6em"/>
<entry operator="c" form="extension" italic-lspace="0em" italic-rspace="0.04em"/>
<entry operator="d" form="extension" italic-lspace="0em" italic-rspace="0.1em"
       glyph-altitude="0.6em"/>
<entry operator="e" form="extension" italic-lspace="0em" italic-rspace="0.04em"/>
<entry operator="f" form="extension" italic-lspace="0.18em" italic-rspace="0.26em"
       glyph-altitude="0.6em"/>
<entry operator="g" form="extension" italic-lspace="0.03em" italic-rspace="0.08em"
       glyph-altitude="0.6em"/>
<entry operator="h" form="extension" italic-lspace="0em" italic-rspace="0.2em"
       glyph-altitude="0.6em"/>
<entry operator="i" form="extension" italic-lspace="0em" italic-rspace="0.06em"
       glyph-altitude="0.6em"/>
<entry operator="j" form="extension" italic-lspace="0.19em" italic-rspace="0.06em"
       glyph-altitude="0.6em"/>
<entry operator="k" form="extension" italic-lspace="0em" italic-rspace="0.1em"
       glyph-altitude="0.6em"/>
<entry operator="l" form="extension" italic-lspace="0em" italic-rspace="0.08em"/>
<entry operator="m" form="extension" italic-lspace="0em" italic-rspace="0.02em"/>
<entry operator="n" form="extension" italic-lspace="0em" italic-rspace="0.04em"/>
<entry operator="o" form="extension" italic-lspace="0em" italic-rspace="0.04em"/>
<entry operator="p" form="extension" italic-lspace="0.1em" italic-rspace="0.04em"/>
<entry operator="q" form="extension" italic-lspace="0em" italic-rspace="0.04em"/>
<entry operator="r" form="extension" italic-lspace="0em" italic-rspace="0.08em"/>
<entry operator="s" form="extension" italic-lspace="0em" italic-rspace="0.06em"/>
<entry operator="t" form="extension" italic-lspace="0em" italic-rspace="0.08em"
       glyph-altitude="0.54em"/>
<entry operator="u" form="extension" italic-lspace="0em" italic-rspace="0.04em"/>
<entry operator="v" form="extension" italic-lspace="0em" italic-rspace="0.06em"/>
<entry operator="w" form="extension" italic-lspace="0em" italic-rspace="0.06em"/>
<entry operator="x" form="extension" italic-lspace="0.05em" italic-rspace="0.06em"/>
<entry operator="y" form="extension" italic-lspace="0.08em" italic-rspace="0.06em"/>
<entry operator="z" form="extension" italic-lspace="0.03em" italic-rspace="0.06em"/>
<entry operator=" " form="extension" glyph-altitude="0.42em"/>
<entry operator="-" form="extension" glyph-altitude="0.42em"/>
<entry operator="_" form="extension" glyph-altitude="0.42em"/>
<entry operator="&apos;" form="extension" glyph-altitude="0.42em"/>
<entry operator="&quot;" form="extension" glyph-altitude="0.42em"/>
<entry operator="+" form="extension" glyph-altitude="0.5em"/>
<entry operator="&minus;" form="extension" glyph-altitude="0.5em"/>
<entry operator="&mnplus;" form="extension" glyph-altitude="0.5em"/>
<entry operator="&plusdo;" form="extension" glyph-altitude="0.5em"/>
<entry operator="=" form="extension" glyph-altitude="0.5em"/>
<entry operator="&sum;" form="extension" overscript-space="-0.08em"
       underscript-space="0.08em"/>
<entry operator="&cup;" form="extension" overscript-space="-0.08em"
       underscript-space="0.08em"/>
<entry operator="&cap;" form="extension" overscript-space="-0.08em"
       underscript-space="0.08em"/>
<entry operator="&Product;" form="extension" overscript-space="-0.08em"
       underscript-space="0.08em"/>
<entry operator="&Coproduct;" form="extension" overscript-space="-0.08em"
       underscript-space="0.08em"/>
<entry operator="&Integral;" form="extension" overscript-space="0.1em"
       underscript-space="0em" italic-lspace="0em" italic-rspace="0em"/>
<entry operator="&Int;" form="extension" overscript-space="0.1em"
       underscript-space="0em" italic-lspace="0em" italic-rspace="0em"/>
<entry operator="&tint;" form="extension" overscript-space="0.1em"
       underscript-space="0em" italic-lspace="0em" italic-rspace="0em"/>
<entry operator="&ContourIntegral;" form="extension" overscript-space="0.1em"
       underscript-space="0em" italic-lspace="0em" italic-rspace="0em"/>
<entry operator="&DoubleContourIntegral;" form="extension" overscript-space="0.1em"
       underscript-rspace="0em" italic-lspace="0em" italic-rspace="0em"/>
<entry operator="&Cconint;" form="extension" overscript-space="0.1em"
       underscript-space="0em" italic-lspace="0em" italic-rspace="0em"/>
<entry operator="&cwint;" form="extension" overscript-space="0.1em"
       underscript-space="0em" italic-lspace="0em" italic-rspace="0em"/>
<entry operator="&cwconint;" form="extension" overscript-space="0.1em"
       underscript-space="0em" italic-lspace="0em" italic-rspace="0em"/>
<entry operator="&awconint;" form="extension" overscript-space="0.1em"
       underscript-space="0em" italic-lspace="0em" italic-rspace="0em"/>
<entry operator="&Breve;" form="extension" overaccent-shift="0.74em"
       underaccent-shift="0em"/>
<entry operator="&Cedilla;" form="extension" overaccent-shift="-0.18em"
       underaccent-shift="0.98em"/>
<entry operator="&DiacriticalGrave;" form="extension" overaccent-shift="0.54em"
       underaccent-shift="0.16em"/>
<entry operator="&DiacriticalDot;" form="extension" overaccent-shift="0.78em"
       underaccent-shift="0em"/>
<entry operator="&DiacriticalDoubleAcute;" form="extension" overaccent-shift="0.74em"
       underaccent-shift="0em"/>
<entry operator="&LeftArrow;" form="extension" overaccent-shift="0.22em"
       underaccent-shift="0.4em"/>
<entry operator="&LeftRightArrow;" form="extension" overaccent-shift="0.22em"
       underaccent-shift="0.4em"/>
<entry operator="&LeftRightVector;" form="extension" overaccent-shift="0.22em"
       underaccent-shift="0.4em"/>
<entry operator="&LeftVector;" form="extension" overaccent-shift="0.22em"
       underaccent-shift="0.4em"/>
<entry operator="&DownLeftVector;" form="extension" overaccent-shift="0.22em"
       underaccent-shift="0.4em"/>
<entry operator="&DiacriticalAcute;" form="extension" overaccent-shift="0.54em"
       underaccent-shift="0.22em"/>
<entry operator="&RightArrow;" form="extension" overaccent-shift="0.22em"
       underaccent-shift="0.4em"/>
<entry operator="&RightVector;" form="extension" overaccent-shift="0.22em"
       underaccent-shift="0.4em"/>
<entry operator="&DownRightVector;" form="extension" overaccent-shift="0.22em"
       underaccent-shift="0.4em"/>
<entry operator="&DiacriticalTilde;" form="extension" overaccent-shift="0.76em"
       underaccent-shift="0em"/>
<entry operator="&DoubleDot;" form="extension" overaccent-shift="0.56em"
       underaccent-shift="0.16em"/>
<entry operator="&DownBreve;" form="extension" overaccent-shift="0.6em"
       underaccent-shift="0.1em"/>
<entry operator="&Hacek;" form="extension" overaccent-shift="0.74em"
       underaccent-shift="0em"/>
<entry operator="&Hat;" form="extension" overaccent-shift="0.36em"
       underaccent-shift="0.2em"/>
<entry operator="&OverBar;" form="extension" overaccent-shift="0.74em"
       underaccent-shift="0em"/>
<entry operator="&OverBrace;" form="extension" overaccent-shift="0em"
       underaccent-shift="0.5em"/>
<entry operator="&OverBracket;" form="extension" overaccent-shift="-0.2em"
       underaccent-shift="0.74em"/>
<entry operator="&OverParenthesis;" form="extension" overaccent-shift="0em"
       underaccent-shift="0.5em"/>
<entry operator="&TripleDot;" form="extension" overaccent-shift="0.22em"
       underaccent-shift="0.64em"/>
<entry operator="&UnderBar;" form="extension" overaccent-shift="0.74em"
       underaccent-shift="0.64em"/>
<entry operator="&UnderBrace;" form="extension" overaccent-shift="0.6em"
       underaccent-shift="0em"/>
<entry operator="&UnderBracket;" form="extension" overaccent-shift="-0.2em"
       underaccent-shift="0em"/>
<entry operator="&UnderParenthesis;" form="extension" overaccent-shift="0.6em"
       underaccent-shift="0em"/>
</operator-dictionary>

CAUTION: Initial values may be changed.

DTD of Operator Dictionary

The DTD of Operator Dictionary is as follows: This DTD is not very accurate. Please utilize it for taking a general view of the syntax only.

<!-- the root element -->
<!ELEMENT operator-dictionary (entry)* >

<!ENTITY % bool "(true|false)" >
<!ENTITY % length "CDATA"><!-- unsigned number with unit
                               unit is one of followings
                                   cm : centimeter
                                   mm : millimeter, 1 millimeter = 1/10 centimeter
                                   in : inch, 1 inch = 2.54 centimeters
                                   pt : point, 1 point = 1/72 inch
                                   pc : pica, 1 pica = 12 points
                                   px : pixel
                                   em : relative length
                            -->
<!ENTITY % percentage "CDATA"><!-- unsigned number with % -->
<!ENTITY % namedspace "veryverythinmathspace
                      |verythinmathspace
                      |thinmathspace
                      |mediummathspace
                      |thickmathspace
                      |verythickmathspace
                      |veryverythickmathspace" >

<!-- operator entry -->
<!ELEMENT entry EMPTY >
<!ATTLIST entry operator      CDATA #REQUIRED
                form         (infix|prefix|postfix|extension) #REQUIRED
                fence         %bool; #IMPLIED
                separator     %bool; #IMPLIED
                lspace       (%length;|%percentage;|%namedspace;) #IMPLIED
                rspace       (%length;|%percentage;|%namedspace;) #IMPLIED
                stretchy      %bool; #IMPLIED
                symmetric     %bool; #IMPLIED
                maxsize      (%length;|%percentage;|%namedspace;|infinity) #IMPLIED
                minsize      (%length;|%percentage;|%namedspace;)          #IMPLIED
                largeop       %bool; #IMPLIED
                movablelimits %bool; #IMPLIED
                accent        %bool; #IMPLIED
                italic-lspace (%length;|%percentage;) #IMPLIED
                italic-rspace (%length;|%percentage;) #IMPLIED
                superscript-italic-shift (%length;|%percentage;) #IMPLIED
                subscript-italic-shift (%length;|%percentage;) #IMPLIED
                presuperscript-italic-shift (%length;|%percentage;) #IMPLIED
                presubscript-italic-shift (%length;|%percentage;) #IMPLIED
                superscript-shift (%length;|%percentage;) #IMPLIED
                subscript-shift (%length;|%percentage;) #IMPLIED
                overscript-space (%length;|%percentage;) #IMPLIED
                underscript-space (%length;|%percentage;) #IMPLIED
                overaccent-shift (%length;|%percentage;) #IMPLIED
                underaccent-shift (%length;|%percentage;) #IMPLIED
                glyph-altitude (%length;|%percentage;) #IMPLIED
>