Fonts are the information objects which are used to convey the graphical elements used for the presentation of character text.
The SPDL font architecture is based on ISO/IEC 9541. The following are the major elements of that architecture.
The information object defined by ISO/IEC 9541 for
the interchange of font information is the
A Font Resource which conforms to ISO/IEC 9541-1 may be interchanged as either an ASN.1 data structure or an SGML data structure as defined by ISO/IEC 9541-2 and ISO/IEC 9541-3. A Font Resource may also be placed in the environment of the Presentation Process by other means.
The information in a Font Resource which is used for presenting glyph representations is represented in SPDL as part of an Indexed Font Dictionary.
Glyph representations in a Font Resource which conforms
to ISO/IEC 9541 are identified by structured-names
as
defined by ISO/IEC 9541. For reasons of efficiency,
this International Standard defines a data structure which
provides for the access of glyph representations and relevant
metric information with a mapping which enables access by means
of Cardinal numbers called glyph index values. The mapping of
glyph index values to glyph identifiers is accomplished by a
An
An Indexed Font may occur as a resource in the environment of the Presentation Process, or it may be specified by a FONT SPECIFICATION.
An Indexed Font is represented and specified in SPDL by an
Indexed Font Dictionary as defined in In addition to those Indexed Fonts which are constructed
by FONT SPECIFICATION structure elements, a
Presentation Process may use Indexed Fonts which have been
installed in the environment of the Presentation Process by
methods which are outside of the scope of this International
Standard. The use of such Indexed Fonts is specifically enabled
by this International Standard.
Indexed Fonts which are not defined according to
the ISO/IEC 9541 architecture may not have the
internal structure defined by Glyph Identifiers occurring in SPDL structure are represented
by values of the In the processing of SPDL structure, and in the installation
of Font Resources, Indexed Fonts, or Glyph Index Maps in the
environment of the Presentation Process, Each ISO10036 Glyph Name is semantically
equivalent to a public identifier for which the canonical
character string form is of the form
"ISO/IEC 10036/RA//Glyphs:: where A Structured Glyph Name which is not an ISO10036
Glyph Name is converted to the Identifier which is the result of
where A Simple Glyph Name is converted to the Identifier which is
the result of
where A Font Resource in the environment of the Presentation
Process may be referenced for use in document presentation by a
Font Reference. A Font Reference may identify a Font Resource by
either or both of:
In addition, a Font Reference can specify a A Font Resource in the environment of the Presentation
Process is identified by one or more Font Resource Identifiers.
A Font Resource Identifier may be a Public Identifier, an Object
Identifier, or an Environment Name.
If the Font Resource is an ISO/IEC 9541 Font
Resource, the value of the font resource name property shall be
one of the Font Resource Identifiers which identifies the Font
Resource in the environment of the Presentation Process.
In addition to the font name property (if any), one or more
Environment Identifiers may be assigned to a Font Resource as
Font Resource Identifiers when it is installed in the
environment of the Presentation Process. The assignment of Font
Resource Identifiers other than the font resource name property
to a Font Resource is outside of the scope of this International
Standard.
The font properties which can be specified by a Font
Reference consist of a set of Processing a Font Reference always results if the selection
of a Font Resource for use in document presentation. No error or
warning occurs if the selected Font Resource fails to satisfy
the Font Reference: however, a content warning occurs if content
processing executes An Indexed Font is specified by a FONT SPECIFICATION structure
element. A FONT SPECIFICATION structure element shall be one
of the following:
A FONT IDENTIFIER FONT SPECIFICATION structure element
shall be an ENVIRONMENT RESOURCE IDENTIFIER structure
element as defined in The processing of a FONT IDENTIFIER FONT SPECIFICATION shall
consist of identifying the Indexed Font in the environment of the
Presentation Process which is identified by the value of
the FONT IDENTIFIER FONT SPECIFICATION structure
element. If there is no Indexed Font in the environment of the
Presentation Process which is identified by the value of
the FONT IDENTIFIER FONT SPECIFICATION, a system
dependent Indexed Font shall be selected.
The Indexed Font resource defined by the
FONT IDENTIFIER FONT SPECIFICATION shall be the
Indexed Font identified or selected as specified in the above
paragraph.
A FONT REFERENCE FONT SPECIFICATION structure
element shall be a composite structure element which shall have
the following immediate subordinates:
The immediate subordinates shall occur in the above order.
A GLYPH INDEX MAP IDENTIFIER structure element shall be one of:
The processing of a FONT REFERENCE FONT SPECIFICATION
shall consist of the following:
The Indexed Font resource defined
by FONT REFERENCE FONT SPECIFICATION shall be the
Indexed Font defined by the Indexed Font Dictionary constructed
in step c.
A FONT REFERENCE identifies a Font Resource by
means of a Font Resource Identifier and, optionally, a
supplementary set of font properties. FONT REFERENCE
processing consists of selecting a Font Resource on the basis of
the FONT REFERENCE structure element and identifying
whether the selected Font resource satisfies
the FONT REFERENCE.
A FONT REFERENCE structure element shall be a
composite structure element which shall have the following
immediate subordinates:
The immediate subordinates shall occur in the above order.
A FONT RESOURCE IDENTIFIER structure element shall
be an ENVIRONMENT RESOURCE IDENTIFIER structure
element as defined in A REQUIRED PROPERTIES structure element shall be
a Font Attribute Set as defined by ISO/IEC 9541. The An ADVISORY PROPERTIES structure element shall be
a Font Attribute Set as defined by ISO/IEC 9541. The A MATCH RULES structure element shall be a base
structure element. The value of a MATCH RULES
structure element shall be of type The value of a MATCH RULES structure element
specifies the criterion which shall be used to determine whether
a Font Resource satisfies each of the property specifications in
the required properties or the advisory properties. The Object
Names for which Public Object Identifier values are defined by
this International Standard, and the meaning of those values,
are shown in A SATISFACTION CRITERION structure element shall
be a base structure element. The value of
a SATISFACTION CRITERION structure element shall be
of type The Object Names for which FONT REFERENCE processing consists of
The procedure used for selecting a Font Resource shall be as
follows:
A Font Resource satisfies the required properties if it
satisfies each of the properties as specified by the value of
the MATCH RULES structure element.
Whether the Font Resource which is selected satisfies
the FONT REFERENCE depends on the value of
the SATISFACTION CRITERION structure element.
This International Standard defines twelve A FONTTYPE1 FONT SPECIFICATION structure element
shall be a base structure element. The value of
a FONTTYPE1 FONT SPECIFICATION shall be of type The processing of a FONTTYPE1 FONT SPECIFICATION
shall consist of interpreting the value of
the FONTTYPE1 FONT SPECIFICATION to define an Indexed
Font as specified in A REMAPPED FONT SPECIFICATION structure element
shall be a composite structure element which shall have the
following immediate subordinates:
The immediate subordinates shall occur in the above order.
A REMAP structure element shall be one of:
A GLYPH INDEX TRANSLATION TABLE structure element
shall be a composite structure element which shall have the
following immediate subordinates:
The immediate subordinates shall occur in the above order.
A TABLE SIZE structure element shall be a base
structure element. The value of a TABLE SIZE
structure element shall be of type A GLYPH INDEX structure element shall be a base
structure element. The value of a GLYPH INDEX
structure element shall be of type The number of GLYPH INDEX structure elements shall
be the same as the value of TABLE SIZE. The value of
each GLYPH INDEX shall be a Cardinal between 0 and
the value of TABLE SIZE minus 1.
The effect of applying
a GLYPH INDEX TRANSLATION TABLE to a Glyph Index Map
shall consist of creating a new Encoding Vector as follows:
The processing of the REMAPPED FONT SPECIFICATION
shall consist of the following.
The Indexed Font resource defined
by REMAPPED FONT SPECIFICATION shall be the Indexed
Font defined by the Indexed Font Dictionary constructed in step d.
If there is no Indexed Font in the environment of the
Presentation Process which is identified by the value of
the FONT IDENTIFIER FONT SPECIFICATION, if the
identified Indexed Font is a composite Indexed Font rather than
a base Indexed Font, or if there is no Glyph Index Map in the
environment of the Presentation Process which is identified by
the value of the GLYPH INDEX MAP IDENTIFIER, a
structure warning shall occur.
A COMPOSITE FONT SPECIFICATION structure element
shall be a composite structure element which shall have the
following immediate subordinates:
The immediate subordinates shall occur in the above order. If
the value of FMAPTYPE is 6,
the FMAPTYPE PARAMETERS LIST structure element shall
be present.
An FMAPTYPE structure element shall be a base
structure element. The value of an FMAPTYPE structure
element shall be of type An FMAPTYPE PARAMETERS LIST structure element
shall be a composite structure element which shall have the
following immediate subordinates:
The immediate subordinates may occur in any order. If the
value of FMAPTYPE is 6, the SUBSVECTOR
structure element shall be present.
An ESCCHAR structure element shall be a base
structure element. The value of an ESCCHAR structure
element shall be of type A SHIFTOUT structure element shall be a base
structure element. The value of a SHIFTOUT structure
element shall be of type A SHIFTIN structure element shall be a base
structure element. The value of a SHIFTIN structure
element shall be of type A SUBSVECTOR structure element shall be a base
structure element. The value of a SUBSVECTOR
structure element shall be of type A FONT INDEX MAP structure element shall be a
composite structure element whose immediate subordinates shall
consist of:
The immediate subordinates shall occur in the above order.
A FONT INDEX MAP SIZE structure element shall be a
base structure element. The value of
a FONT INDEX MAP SIZE structure element shall be of
type An INDEX VALUE structure element shall be a base
structure element. The value of an INDEX VALUE
structure element shall be of type The processing of a FONT INDEX MAP shall consist
of creating an Encoding Vector, as defined in A FONT LIST structure element shall be a composite
structure element which shall have the following immediate
subordinates:
The processing of a COMPOSITE FONT SPECIFICATION
shall consist of creating a Composite Font Dictionary, as
defined in The Indexed Font defined by
the COMPOSITE FONT SPECIFICATION shall be the Indexed
Font defined by this Composite Font Dictionary.
A USER FONT SPECIFICATION structure element shall
be a composite structure element which shall have the following
immediate subordinates:
The processing of a USER FONT SPECIFICATION shall
consist of:
The Indexed Font defined
by USER FONT SPECIFICATION shall be the Indexed Font
defined by the Indexed Font Dictionary defined in step b.
A structure error shall occur if element on the top of the
Operand Stack of the virtual machine state of the Context of
Interpretation returned by the Content Processor is not a
A GLYPH INDEX MAP SPECIFICATION structure element
shall be a composite structure element which shall have the
following immediate subordinates:
The immediate subordinates shall occur in the above order.
A GLYPH INDEX MAP SIZE structure element shall be
a base structure element. The value of
a GLYPH INDEX MAP SIZE structure element shall be of
type The GLYPH IDENTIFIER LIST structure element shall
be a composite structure element which shall have the following
immediate subordinates:
The size of the GLYPH IDENTIFIER LIST shall be the
same as the value of the most immediately
superior MAP SIZE structure element. The value of
each GLYPH IDENTIFIER structure element shall be of
type The processing of a GLYPH INDEX MAP SPECIFICATION
shall consist of creating an Encoding Vector as
defined in The Glyph Index Map defined by
the GLYPH INDEX MAP SPECIFICATION shall be the Glyph
Index Map defined by the above Encoding Vector.
Standard Glyph Index Maps are defined in Other Indexed Fonts
Representation of Glyph Identifiers
Conversion of ISO10036 Glyph Names
Conversion of Other Structured Glyph Names
Conversion of Simple Glyph Names
Font References
Font Resource Identifiers
Font Properties
Unsatisfied Font References
FONT SPECIFICATION
FONT IDENTIFIER FONT SPECIFICATION
FONT REFERENCE FONT SPECIFICATION
GLYPH INDEX MAP IDENTIFIER
FONT REFERENCE FONT SPECIFICATION
Processing
FONT REFERENCE
FONT RESOURCE IDENTIFIER
REQUIRED PROPERTIES
ADVISORY PROPERTIES
MATCH RULES
SATISFACTION CRITERION
FONT REFERENCE Processing
Standard FONT RESOURCE IDENTIFIER
Values
FONTTYPE1 FONT SPECIFICATION
REMAPPED FONT SPECIFICATION
REMAP
GLYPH INDEX TRANSLATION TABLE
TABLE SIZE
GLYPH INDEX
GLYPH INDEX TRANSLATION TABLE
Processing
REMAPPED FONT SPECIFICATION
Processing
Errors and Warnings
COMPOSITE FONT SPECIFICATION
FMAPTYPE
FMAPTYPE PARAMETERS LIST
ESCCHAR
SHIFTOUT
SHIFTIN
SUBSVECTOR
FONT INDEX MAP
FONT INDEX MAP SIZE
INDEX VALUE
FONT INDEX MAP Processing
FONT LIST
COMPOSITE FONT SPECIFICATION
Processing
USER FONT SPECIFICATION
GLYPH INDEX MAP SPECIFICATION
GLYPH INDEX MAP SIZE
GLYPH IDENTIFIER LIST
GLYPH INDEX MAP SPECIFICATION
Processing
Standard Glyph Index Maps