ISO/IEC 9541-2:1991
(Main)Information technology - Font information interchange - Part 2: Interchange format
Information technology - Font information interchange - Part 2: Interchange format
This part requires the property definitions as defined in Part 1. Annexes A (ASN.1 and SGML) and B (Structured-Names) form an integral part of this standard.
Technologies de l'information — Échange d'informations sur les fontes — Partie 2: Format d'échange
General Information
Relations
Frequently Asked Questions
ISO/IEC 9541-2:1991 is a standard published by the International Organization for Standardization (ISO). Its full title is "Information technology - Font information interchange - Part 2: Interchange format". This standard covers: This part requires the property definitions as defined in Part 1. Annexes A (ASN.1 and SGML) and B (Structured-Names) form an integral part of this standard.
This part requires the property definitions as defined in Part 1. Annexes A (ASN.1 and SGML) and B (Structured-Names) form an integral part of this standard.
ISO/IEC 9541-2:1991 is classified under the following ICS (International Classification for Standards) categories: 35.240.30 - IT applications in information, documentation and publishing. The ICS classification helps identify the subject area and facilitates finding related standards.
ISO/IEC 9541-2:1991 has the following relationships with other standards: It is inter standard links to ISO/IEC 9541-2:1991/Amd 2:2009, ISO/IEC 9541-2:1991/Amd 1:2000, ISO/IEC 9541-2:2012; is excused to ISO/IEC 9541-2:1991/Amd 2:2009, ISO/IEC 9541-2:1991/Amd 1:2000. Understanding these relationships helps ensure you are using the most current and applicable version of the standard.
You can purchase ISO/IEC 9541-2:1991 directly from iTeh Standards. The document is available in PDF format and is delivered instantly after payment. Add the standard to your cart and complete the secure checkout process. iTeh Standards is an authorized distributor of ISO standards.
Standards Content (Sample)
lSO/IEC
INTERNATIONAL
9541-2
STANDARD
First edition
1991-09-15
Information technology - Font
information interchange -
Part 2:
Interchange format
khange d’informations sur /es
Technologies de I’information -
fontes -
Partie 2: Format d’khange
Reference number
ISO/1 EC 95412: 1991 (E)
ISO/IEC 9541=2:1991(E)
Contents
Page
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1 Scope
2 Conformance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 Normative references . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 Subsets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.1 Minimum font description subset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2 Minimum moda metric su bset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3 Minimum glyph metric su bset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 Formats . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
6.1 ASN.l . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.2 SGML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Annexes
A Font reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
A.l ASN.1
A.2 SGML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
B Structured-Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
B.l General
B.2 Object name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
B.3 Representation of structured names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
0 ISO/lEC 1991
All rights reserved. No part of this publication may be reproduced or utilized in any form or
by any means, electronie or mechanical, including photocopying and microfilm, without per-
mission in writing from the publisher.
lSO/I EC Copyright Office l Case Postale 56 l CH-i 211 Geneve 20 l Switzerland
Printed in Switzerland
ii
ISO/IEC 9541=2:199l(E)
Foreword
ISO (the International Organization for Standardization) and IEC (the Inter-
national Electrotechnical Commission) form the specialized System for
worldwide standardization. National bodies that are members of ISO or
IEC participate in the development of International Standards through
technical committees established by the respective organization to deal
with particular fields of technical activity. ISO and IEC technical commit-
tees collaborate in fields of mutual interest. Other international organiza-
tions, governmental and non-governmental, in liaison with ISO and IEC,
also take part in the work.
In the field of information technology, ISO and IEC have established a joint
technical committee, lSO/IEC JTC 1. Draft International Standards adopted
by the joint technical committee are circulated to national bodies for vot-
ing. Publication as an International Standard requires approval by at least
75 % of the national bodies casting a vote.
International Standard lSO/IEC 9541-2 was prepared by Joint Technical
Committee lSO/IEC JTC 1, Information technology.
lSO/IEC 9541 consists of the following Parts, under the general title In-
forma tion technolog y - Fon t in forma tion in terchange:
- Part 1: Architecture
- Part 2: Interchange Format
- Part 3. Glyph shape representation
- Part 4: Applica tion-specific requiremen ts
Part 1 of lSO/IEC 9541 specifies the architecture of a font resource, i.e.,
the font description, font metrics, glyph description and glyph metrics
properties required for font references and the interchange of font re-
sources.
Part 2 of lSO/IEC 9541 specifies the interchange formats for font infor-
mation, and the minimum subsets of that information required for inter-
Change.
Part 3 of ISO/IEC 9541 specifies the architecture and interchange formats
for glyph shape representations.
Part 4 of lSO/IEC 9541 specifies the architecture and interchange format
extensions for application specific (e-g. typesetting of mathematics) re-
quirements.
Annexes A and B form an integral part of this part of lSO/IEC 9541.
ISO/IEC 9541=2:1991(E)
Introduction
The use of open networks for the interchange of documents in both Office
and publishing environments has shown the need for a mechanism ena-
bling the interchange of font information.
lt is foreseen that publishing and Office technologies will merge and that
this development will be facilitated by definition of a Standard font re-
Source architecture and a limited number of Standard font resource inter-
Change formats.
iV
ISO/IEC 9541=2:1991(E)
INTERNATIONAL STANDARD
Information technology - Font information
interchange -
Part 2:
Interchange format
1 Scope
lSO/IEC 9541, as a whole, specifies the architecture of font resources, as well as the formats for font interchange
amongst information processing Systems. lt also specifies the architecture and formats that tan be used to con-
struct font references in general electronie document interchange.
This patt of lSO/IEC 9541 specifies the interchange formats for font information, and the minimum subsets of that
This patt of lSO/IEC 9541 requires the property definitions as defined in
information required for interchange.
ISO/1 EC 9541-1.
Font subsets defined by this part of lSO/IEC 9541 establish the minimum set of font properties that must occur
within an ISO font resource. To accommodate the broad range of document and text processing functions found
in Office and publishing environments, it is anticipated that ISO font resources will contain more than the minimum
number of font properties.
Font resources defined by this patt of ISO/IEC 9541 are used in various document processing environments in
which ASN.1 or SGML parsing algorithms are recognised. The format of font resource information as defined in
this part of lSO/IEC 9541 is specified in both ASN.1 and SGML for consistent generation of font resources for use
in these processing environments.
2 Conformance
A font resource conforming to this part of ISO/IEC 9541 shall contain property values for all of the minimum subset
font properties specified in this part of lSO/IEC 9541, clause 5. A conforming font resource may contain more ISO
or non-ISO properties than specified in this patt of lSO/IEC 9541, clause 5. In addition, all properties contained in
a conforming font resource shall be formatted as defined in one of the two interchange formats defined in this
part of lSO/IEC 9541, clause 6.
A font resource using System (one which receives font information for subsequent processing) may Claim con-
formante to this part of lSO/IEC 9541 if it has the ability to syntactically interpret and semantically process the
relevant font subset(s) specified in this part of lSO/IEC 9541, clause 5.
A font resource supplying System (one which creates or modifies font information for subsequent supply to a font
resource using System) may Claim conformance to this part of lSO/IEC 9541 if it has the ability to create a syn-
tactically correct instance of a conforming font resource.
A font resource transmission System (one which receives, optionally holds, and subsequently transmits font in-
formation) may Claim conformance to this patt of lSO/IEC 9541 if it has the ability to receive and send a syntac-
tically correct instance of a conforming font resource without loss of information.
ISO/lEC 9541=2:1991(E)
3 Normative references
The following Standards contain provisions which, through reference in this text, constitute provisions of this part
of ISO/IEC 9541. At the time of publication, the editions indicated were valid. All Standards are subject to revision,
and Parties to agreements based on this patt of ISO/IEC 9541 are encouraged to investigate the possibility of ap-
plying the most recent editions of the Standards indicated below. Members of IEC and ISO maintain registers of
currently valid International Standards.
ISO 8824: 1990, Information technology - Open Systems Interconnection - Specification of Abstract Syntax
Notation One (ASN. 1).
ISO 8825: 1990, Information technology - Open Systems In terconnection - Specification of Basic Encoding
Rules for Abstract Syntax Notation One (ASN. 1).
ISO 8879:1986, Information processing - Text and Office Systems - Standard Generalized Markup Language
(SGML).
lSO/lEC 9070:1991, Information technology - SGML support facilities - Registration procedures for public text
o wner iden tifiers.
ISO/1 EC 9541-1: 1991, Information technology - Font information interchange - Part 1: Architecture.
4 Definitions
For the purposes of this patt of lSO/IEC 9541, the definitions given in lSO/lEC 9541-1 and the following definition
aPPlYm
4.1 (font) subset: A set or collection of font properties, usually associated by application usage and functional
capa bility.
5 Subsets
This clause defines the minimum set of font proper-Ges which shall occur within a font resource conforming to this
patt of lSO/IEC 9541. The required set of font resource properties is divided into font subsets representing three
major groupings of required font resource information (font description information, modal metric information, and
glyph metric information). ISO font subsets consist entirely of ISO font properties, as those properties are defined
in lSO/IEC 9541-1.
NOTE 1 Glyph shape information may be resident within a presentation device and not interchanged with the other font
resource information. The shape information may be interchanged with a font resource, but is not a required subset of an ISO
font resource.
5.1 Minimum font description subset
identification of the font resource and descriptive
The minimum subset of font description information includes
information about the font resource.
This font subset consists of the following properties (higher Order property-lists containing these properties are
also required):
FONTNAME Font Resource Name
STANDARDVERSION Standard Version Number
DSNSOURCE Design Source Name
Font Family Name
FONTFAMILY
Posture Code
POSTURE
WEIGHT Weight Code
PROPWIDTH Proportionate Width Code
Included Glyph Collection(s) 1 One or
INCGLYPHCOLS
Included Glyph(s) 1 Both
INCGLYPHS
ISO/IEC 9541=2:1991(E)
DSNSIZE Design Size
MINSIZE Minimum Size
MAXSIZE Maximum Size
DSNGROUP Design Group Codes
STRUCTURE Structure Code
5.2 Minimum modal metric subset
The minimum subset of modal metric information includes identification of at least one writing mode and modal
metric values for the collection of all glyphs in the font resource.
This subset consists of the following properties, which are repeated for each writing mode supported by the font
resource (higher Order property-lists containing these properties are also required):
WRMODENAME Writing Mode Name
NOMESCDIR Nominal Escapement Direction
ESCCLASS Escapement Class
AVGESCX Average x-Escapement I
AVGESCY Average y-Escapement I x or y
1 must be
AVGLCESCX Average Lower Case x-Escapement
1 present,
AVGLCESCY Average Lower Case y-Escapement
1 depending
AVGCAPESCX Average Capital x-Escapement
1 on writing
AVGCAPESCY Average Capital y-Escapement
1 mode
TABESCX Tabular x-Escapement
TABESCY Tabular y-Escapement I
MAXFONTEXT Maximum Font Extents
5.3 Minimum glyph metric subset
The minimum subset of glyph metric information includes identification of each glyph contained in the font re-
Source and metric information for each of those identified glyphs.
This subset consists of the following properties, which are repeated for each writing mode supported by the font
resource and for each glyph supported in that writing mode (higher Order property-lists containing these properties
are also required):
GNAME Glyph Structured Name
EX X Escapement Point 1 One or
1 both
EY Y Escapement Point
EXT Extents
6 Formats
ISO font resources for interchange shall be defined using either the ASN.l Structure or SGML Document Type
Definition defined below.
NOTE 2 The architecture of lSO/IEC 9541-1 and the interchange formats of this part of ISO/IEC 9541 permit the existente
of empty property-lists, however, there are no assumed values associated with such lists.
ISO/IEC 9541=2:1991(E)
6.1 ASN.l
ISO-STANDARD-9541-FONT-RESOURCE (1 0 9541 2 l}
DEFINITIONS ::= BEGIN
IMPORTS Structured-Name FROM (1 0 9541 2 3)
.
Font-Resource . . l = SEQUENCE (
name-prefixes [0] IMPLICIT SET OF Name-Prefix OPTIONAL,
iso-standard-9541-fontname [1] IMPLICIT Global-Name
I
iso-standard-9541-fontdescription [2] IMPLICIT Font-Description
I
iso-standard-9541-wrmodes [3] IMPLICIT Writing-Modes
iso-standard-9541-shapes [4] IMPLICIT Glyph-Shapes OPTIONAL;
non-iso-properties [S] IMPLICIT Property-List
OPTIONAL }
.
Font-Description . l -- - SET {
iso-standard-9541-dataversion [0] IMPLICIT Data-Version
OPTIONAL,
iso-standard-9541-Standardversion [1] IMPLICIT Cardinal
I
iso-standard-9541-datasource [2] IMPLICIT Global-Name
OPTIONAL,
iso-standard-9541-datacopyright
[3] IMPLICIT Message OPTIONAL,
iso-standard-9541-dsnsource
[4] IMPLICIT Global-Name
iso-standard-9541-dsncopyright
[5] IMPLICIT Message OPTIONAL;
iso-standard-9541-relunits
[6] IMPLICIT Cardinal OPTIONAL,
iso-standard-9541-typeface
[7] IMPLICIT Message OPTIONAL,
iso-standard-9541-fontfamily [8] IMPLICIT Match-String
iso-standard-9541-posture [9] IMPLICIT Posture-Code
iso-standard-9541-postureangle [lO] IMPLICIT Angle OPTIONAL;
iso-standard-9541-weight [ll] IMPLICIT Weight-Code
iso-standard-9541-propwidth [12] IMPLICIT Width-Code
iso-standard-9541-glyphcomp
[13] IMPLICIT Glyph-Complement
iso-standard-9541-nomwrmode [14] IMPLICIT Global-Name OPTIONAL;
iso-standard-9541-dsnsize [15] IMPLICIT Rational
iso-standard-9541-minsize [16] IMPLICIT Rational
iso-standard-9541-maxsize [17] IMPLICIT Rational
iso-standard-9541-capheight [18] IMPLICIT Rel-Rational OPTIONAL;
iso-standard-9541-lcheight
[19] IMPLICIT Rel-Rational OPTIONAL,
iso-standard-9541-dsngroup [20] IMPLICIT Design-Group
iso-standard-9541-structure [21] IMPLICIT Structure-Code
iso-standard-9541-minfeatsz [22] IMPLICIT Rel-Rational OPTIONAL;
iso-standard-9541-nomcapstemwidth [23] IMPLICIT Rel-Rational OPTIONAL,
iso-standard-9541-nomlcstemwidth [24] IMPLICIT Rel-Rational OPTIONAL,
non-iso-properties
[25] IMPLICIT Property-List OPTIONAL )
.
Name-Prefix . l l - - SEQUENCE (
-- see global name note at the end of this clause
index [0] IMPLICIT Code,
prefix [1] IMPLICIT Structured-Name }
.
Data-Version . . l = SEQUENCE (
major [0] IMPLICIT Cardinal OPTIONAL,
minor [1] IMPLICIT Cardinal OPTIONAL,
timestamp [2] IMPLICIT UTCTime OPTIONAL )
Posture-Code ::= INTEGER ( not applicable
(0)
r
upright
(1)
r
oblique-forward
(2)
oblique-backward (3):
italic-forward
(4) r
italic-backward
(5)
other
(6) '1
Weight-Code ::= INTEGER ( not applicable
(0) r
ISO/IEC 9541=2:1991(E)
ultra-light
(1) I
extra-light
(2) I
light
(3) r
semi-light
(4) I
medium
(5) r
semi-bold
(6) r
bold
(7) r
extra-bold
(8)
ultra-bold
(9) ‘1
Width-Code ::= INTEGER ( not applicable
(0) I
ultra-condensed
(1) I
extra-condensed
(2) ?
condensed
(3) r
semi-condensed
(4)
I
medium
(5) I
semi-expanded
(6) f
expanded
(7)
r
extra-expanded
(8)
ultra-expanded (9) ‘1
.
Glyph-Complement -- SEQUENCE (
. l -
--
at least one included glyph list or at least one
--
included glyph collection list is mandatory
iso-standard-9541-numglyphs [0] IMPLICIT Cardinal OPTIONAL,
iso-standard-9541-incglyphcols [1] IMPLICIT SET OF Global-Name OPTIONAL,
--
at least one is required
iso-standard-9541-excglyphcols [2] IMPLICIT SET OF Global-Name OPTIONAL,
--
at least one is required
iso-standard-9541-incglyphs [3] IMPLICIT SET OF Global-Name OPTIONAL,
--
at least one is required
iso-standard-9541-excglyphs [4] IMPLICIT SET OF Global-Name OPTIONAL,
--
at least one is required
non-iso-properties [5] IMPLICIT Property-List OPTIONAL )
.
Design-Group . .- l - SEQUENCE {
--
see 9541-1 Annex-A for code values
group-code
[0] IMPLICIT Code,
subgroup-code [1] IMPLICIT Code,
specific-group-code [2] IMPLICIT Code )
Structure-Code ::= INTEGER ( not applicable
(0)
r
solid
(1)
outline (2) '1
*
Writing-Modes . .- l - SET (
iso-standard-9541-wrmode [0] IMPLICIT SET OF Writing-Mode
non-iso-properties [1] IMPLICIT Property-List OPTIONAL'}
.
Writing-Mode
. -= . SEQUENCE (
iso-standard-9541-wrmodename [0] IMPLICIT Global-Name,
wrmode-properties [l] IMPLICIT Modal-Properties >
.
Modal-Properties . .- l - SET {
iso-standard-9541-nomescdir [0] IMPLICIT Angle
iso-standard-9541-escclass [l] IMPLICIT Esc-Class-Code
[2] IMPLICIT Rel-Rational
iso-standard-9541-avgescx
[3] IMPLICIT Rel-Rational
iso-standard-9541-avgescy
[4] IMPLICIT Rel-Rational
iso-standard-9541-avglcescx
iso-standard-9541-avglcescy [5] IMPLICIT Rel-Rational
iso-standard-9541-avgcapescx [6] IMPLICIT Rel-Rational
iso-standard-9541-avgcapescy [7] IMPLICIT Rel-Rational
ISO/IEC 9541=2:1991(E)
iso-standard-9541-tabescx
[8] IMPLICIT Rel-Rational
f
iso-standard-9541-tabescy
[9] IMPLICIT Rel-Rational
f
iso-standard-9541-maxfontext
[lO] IMPLICIT Max-Extents
iso-standard-9541-sectors
[ll] IMPLICIT Seetors OPTIONAL;
iso-standard-9541-escadjs
[12] IMPLICIT SET OF Adjusts OPTIONAL,
iso-standard-9541-minescadjsze
[13] IMPLICIT Rational OPTIONAL,
iso-standard-9541-maxescadjsze
[14] IMPLICIT Rational OPTIONAL,
iso-standard-9541-scores
[15] IMPLICIT Scores OPTIONAL,
iso-standard-9541-vscripts
[16] IMPLICIT Variant-Scripts OPTIONAL,
iso-standard-9541-minlinesp
[17] IMPLICIT Alignment-Spacing OPTIONAL,
iso-standard-9541-minanascale
[18] IMPLICIT Rational
OPTIONAL,
iso-standard-9541-maxanascale
[19] IMPLICIT Rational
OPTIONAL,
iso-standard-9541-nomalign
[20] IMPLICIT Font-Global-Name OPTIONAL,
iso-standard-9541-alignmodes
[21] IMPLICIT Alignment-Modes
OPTIONAL,
iso-standard-9541-copyfits
[22] IMPLICIT Copyfits
OPTIONAL,
iso-standard-9541-dsnwordadd
[23] IMPLICIT Rel-Rational
OPTIONAL,
iso-standard-9541-dsnwordampl
[24] IMPLICIT Rational
OPTIONAL,
iso-standard-9541-minwordadd
[25] IMPLICIT Rel-Rational
OPTIONAL,
iso-standard-9541-minwordampl
[26] IMPLICIT Rational
OPTIONAL,
iso-standard-9541-maxwordadd
[27] IMPLICIT Rel-Rational
OPTIONAL,
iso-standard-9541-maxwordampl [28] IMPLICIT Rational
OPTIONAL,
iso-standard-9541-dsnletteradd [29] IMPLICIT Rel-Rational
OPTIONAL,
iso-standard-9541-dsnletterampl [30] IMPLICIT Rational
OPTIONAL,
iso-standard-9541-minletteradd
[31] IMPLICIT Rel-Rational
OPTIONAL,
iso-standard-9541-minletterampl [32] IMPLICIT Rational
OPTIONAL,
iso-standard-9541-maxletteradd [33] IMPLICIT Rel-Rational
OPTIONAL,
iso-standard-9541-maxletterampl [34] IMPLICIT Rational
OPTIONAL,
iso-standard-9541-glyphmetrics
[35] IMPLICIT Glyph-Metrics
non-iso-properties
[36] IMPLICIT Property-List OPTIONAL')
Esc-Class-Code ::= INTEGER { not applicable
(0) f
monospace
(1)
proportional
(2)' >
.
Max-Extents . .--
-- SEQUENCE {
max-minx [0] IMPLICIT Rel-Rational,
max-miny Cl] IMPLICIT Rel-Rational,
max-maxx
[2] IMPLICIT Rel-Rational,
max-maxy [3] IMPLICIT Rel-Rational }
.
Seetors
. . l = SET {
iso-standard-9541-sector [0] IMPLICIT SEQUENCE OF Seetor OPTIONAL,
non-iso-properties [1] IMPLICIT Property-List
OPTIONAL )
.
Seetor . := SEQUENCE (
seetor-left
CO] IMPLICIT Rel-Rational,
seetor-right
[1] IMPLICIT Rel-Rational 1
.
Adjusts l .
-= SET (
iso-standard-9541-adjust
[0] IMPLICIT SET OF ,Adjust,
non-iso-properties [l] IMPLICIT Property-list
OPTIONAL >
.
Adjust
. . l = SET (
iso-standard-9541-escadjname
[0] IMPLICIT Global-Name,
adjust-properties [1] IMPLICIT Adjust-Properties }
.
Adjust-Properties . -- l - SET (
iso-standard-9541-cpea
[0] IMPLICIT CPEA-Properties OPTIONAL,
iso-standard-9541-sec [1] IMPLICIT SEC-Properties
OPTIONAL,
non-iso-properties [2] IMPLICIT Property-List
OPTIONAL )
.
CPEA-Properties . := SET (
ISOJIEC 9541=2:1991(E)
[0] IMPLICIT Cardinal OPTIONAL,
iso-standard-9541-ncpeaforwd
OPTIONAL,
iso-standard-9541-ncpeabackwd [1] IMPLICIT Cardinal
OPTIONAL,
iso-standard-9541-cpeax [2] SEQUENCE OF Rel-Rational
--
at least one required
OPTIONAL,
iso-standard-9541-cpeay [3] SEQUENCE OF Rel-Rational
non-iso-properties [4] IMPLICIT Property-List OPTIONAL }
.
SEC-Properties . . l = SET {
iso-standard-9541-secx [O] SEQUENCE OF {
-- at least one required
[0] IMPLICIT Rational,
[1] IMPLICIT Rel-Rational ) OPTIONAL,
iso-standard-9541-secy [1] SEQUENCE OF {
--
at least one required
[0] IMPLICIT Rational,
[l] IMPLICIT Rel-Rational ], OPTIONAL,
non-iso-properties [2] IMPLICIT Property-List OPTIONAL }
.
Scores . . l = SET {
iso-standard-9541-Score [0] IMPLICIT SET OF Score OPTIONAL,
non-iso-properties [1] IMPLICIT Property-List OPTIONAL )
.
Score . . l = SEQUENCE {
iso-standard-9541-scorename [0] IMPLICIT Global-Name,
Score-property-list [1] IMPLICIT Score-Properties )
.
Score-Properties I .- l - SET (
iso-standard-9541-scoreoffsetx [0] IMPLICIT Rel-Rational OPTIONAL,
iso-standard-9541-scoreoffsety [1] IMPLICIT Rel-Rational OPTIONAL,
iso-standard-9541-scorethick [2] IMPLICIT Rel-Rational OPTIONAL,
non-iso-properties [3] IMPLICIT Property-List OPTIONAL >
.
Variant-Scripts . . -= SET (
iso-standard-9541-vscript [0] IMPLICIT SET OF Vscript OPTIONAL,
non-iso-properties [1] IMPLICIT Property-List OPTIONAL }
.
Vscript . . l = SEQUENCE (
iso-standard-9541-vsname [0] IMPLICIT Global-Name,
vscript-property-list [1] IMPLICIT Vscript-Properties )
.
Vscript-Properties . -= . SET {
iso-standard-9541-vsoffsetx [0] IMPLICIT Rel-Rational OPTIONAL,
iso-standard-9541-vsoffsety [1] IMPLICIT Rel-Rational OPTIONAL,
iso-standard-9541-vsscalex [2] IMPLICIT Rational OPTIONAL,
iso-standard-9541-vsscaley [3] IMPLICIT Rational OPTIONAL,
non-iso-properties [4] IMPLICIT Property-List OPTIONAL >
.
Alignment-Spacing . . l = SEQUENCE (
minlinesp-left [0] IMPLICIT Rel-Rational,
minlinesp-right [1] IMPLICIT Rel-Rational )
.
Alignment-Modes . := SET (
iso-standard-9541-align [0] IMPLICIT SET OF Alignment OPTIONAL,
non-iso-properties [1] IMPLICIT Property-List OPTIONAL >
.
Alignment . . l = SEQUENCE (
iso-standard-9541-alignname [0] IMPLICIT Global-Name,
alignment-property-list [l] IMPLICIT Align-Properties }
.
Align-Properties . -= . SET (
iso-standard-9541-alignoffsetx [0] IMPLICIT Rel-Rational OPTIONAL,
iso-standard-9541-alignoffsety [1] IMPLICIT Rel-Rational OPTIONAL,
ISO/IEC 954%2:1991(E)
iso-standard-9541-alignscalex
[2] IMPLICIT Rational
OPTIONAL,
iso-standard-9541-alignscaley
[3] IMPLICIT Rational
OPTIONAL,
non-iso-properties
[4] IMPLICIT Property-List
OPTIONAL }
.
Copyfits
. . -= SET (
iso-standard-9541-copyfit
[0] IMPLICIT SET OF Copyfit
OPTIONAL,
non-iso-properties
[1] IMPLICIT Property-List
OPTIONAL }
.
Copyfit
. . l = SEQUENCE (
iso-standard-9541-copyfitname
[0] IMPLICIT Global-Name,
copyfit-properties
[1] IMPLICIT Copyfit-Properties )
.
Copyfit-Properties
. . l = SET (
iso-standard-9541-copyfitmeasure
[0] IMPLICIT Rational
OPTIONAL,
non-iso-properties
[1] IMPLICIT Property-List
OPTIONAL )
.
Glyph-Metrics
. -= . SET (
iso-standard-9541-gmetric
[0] IMPLICIT SET OF Glyph-Property-List ,
non-iso-properties
[1] IMPLICIT Property-List
OPTIONAL )
.
Glyph-Property-List
. . l = SEQUENCE (
iso-standard-9541-gname
[0] IMPLICIT Global-Name,
glyph-properties
[1] IMPLICIT Glyph-Properties }
.
Glyph-Properties
. .- l - SET {
iso-standard-9541-px
[0] IMPLICIT Rel-Rational
OPTIONAL,
iso-standard-9541-py
[1] IMPLICIT Rel-Rational
OPTIONAL,
iso-standard-9541-ex
[2] IMPLICIT Rel-Rational
f
iso-standard-9541-ey
[3] IMPLICIT Rel-Rational
f
iso-standard-9541-ext
[4] IMPLICIT Extents
iso-standard-9541-lgs [5] IMPLICIT Ligatures
OPTIONAL;
iso-standard-9541-peas [6] IMPLICIT P-Adjusts
OPTIONAL,
iso-standard-9541-cpeai
[7] IMPLICIT C-Indicator
OPTIONAL,
iso-standard-9541-eai [8] IMPLICIT E-Code
OPTIONAL,
iso-standard-9541-minex [9] IMPLICIT Rel-Rational
OPTIONAL,
iso-standard-9541-miney
[lO] IMPLICIT Rel-Rational
OPTIONAL,
iso-standard-9541-maxex [ll] IMPLICIT Rel-Rational
OPTIONAL,
iso-standard-9541-maxey
[12] IMPLICIT Rel-Rational OPTIONAL,
non-iso-properties [13] IMPLICIT Property-List
OPTIONAL )
.
Extents . . l = SEQUENCE (
minx [0] IMPLICIT Rel-Rational,
miny [1] IMPLICIT Rel-Rational,
maxx
[2] IMPLICIT Rel-Rational,
maxy
[3] IMPLICIT Rel-Rational >
.
Ligatures . .
l = SET (
iso-standard-9541-lg
[0] IMPLICIT SET OF Ligature OPTIONAL,
non-iso-properties
[1] IMPLICIT Property-List OPTIONAL }
.
Ligature
. . l = SEQUENCE (
iso-standard-9541-lgn
[0] IMPLICIT Global-Name,
iso-standard-9541-lgsn
[1] SEQUENCE OF Global-Name )
-- at least one required
.
P-Adjusts
. . -= SET (
iso-standard-9541-pea
[0] IMPLICIT SET OF P-Adjust OPTIONAL,
non-iso-properties
[1] IMPLICIT Property-List OPTIONAL )
.
P-Adjust . -= . SEQUENCE (
iso-standard-9541-pean
[0] IMPLICIT Global-Name,
p-adjust-property-list [1] IMPLICIT P-Adjust-Properties }
lSO/IEC 9541=2:1991(E)
.
P-Adjust-Properties . -= . SET {
iso-standard-9541-peax [O] SEQUENCE OF {
--
at least one required
[0] IMPLICIT Global-Name,
[1] IMPLICIT Rel-Rational ) OPTIONAL,
iso-standard-9541-peay [1] SEQUENCE OF {
-- at least one required
[0] IMPLICIT Global-Name,
[1] IMPLICIT Rel-Rational ) OPTIONAL,
OPTIONAL,
iso-standard-9541-speaforwdx [2] SEQUENCE OF Rel-Rational
OPTIONAL,
iso-standard-9541-speaforwdy [3] SEQUENCE OF Rel-Rational
iso-standard-9541-speabackwdx [4] SEQUENCE OF Rel-Rational OPTIONAL,
iso-standard-9541-speabackwdy [5] SEQUENCE OF Rel-Rational OPTIONAL,
OPTIONAL )
non-iso-properties [6] IMPLICIT Property-List
.
C-Indicator . l l - - SEQUENCE {
c-forward [0] IMPLICIT Cardinal,
[1] IMPLICIT Cardinal )
c-backward
.
E-Code . . l = INTEGER ( not applicable (O),
letter-space
(1) f
word-space
(2)
no-adjust
(3)' )
.
Glyph-Shapes . l -- - SET OF Glyph Shapes
.
Glyph Shape . l l - - EXTERNAL
--
see 9541-3 Glyph Shape Representation )
-- The following Data Types are used in the above structures
.
Property . . l = SEQUENCE (
property-name [0] Global-Name,
property-value [1] Property-Value )
.
Property-Value . . l = CHOICE (
value [0] Value,
value-list [1] Value-List,
ordered-value-list [2] Ordered-Value-List,
property-list [3] Property-List,
ordered-property-list [4] Ordered-Property-List )
.
Value-List . . l = SET OF Value
.
Ordered-Value-List . . l = SEQUENCE OF Value
.
Property-List . . l = SET OF Property
.
Ordered-Property-List l = SEQUENCE OF Property
. .
.
Value
. . l = CHOICE (
[0] Global-Name,
[1] Match-String,
[2] Message,
[3] OCTET STRING,
[4] BOOLEAN,
[5] Integer,
[6] Cardinal,
[7] Code,
ISO/IEC 9541=2:1991(E)
[8] Rational,
[9] Rel-Rational,
[lO] Angle,
[ll] Proprietary-Data )
.
Global-Name . . l = SEQUENCE (
-- see global name note at the end of this clause
prefix-index [0] IMPLICIT Code OPTIONAL,
name-value [1] IMPLICIT Structured-Name
.
Match-String . . l = CHOICE (
numeric [0] NumericString,
printable [1] PrintableString,
teletex [2] TeletexString,
videotex [3] VideotexString,
visible [4] VisibleString,
ia5 [5] IA5String,
graphic [6] GraphicString,
general [7] GeneralString )
.
Message . . l = CHOICE (
numeric [0] NumericString,
printable [1] PrintableString,
teletex [2] TeletexString,
videotex [3] VideotexString,
visible [4] VisibleString,
ia5 [S] IASString,
graphic [6] GraphicString,
general
[7] GeneralString )
.
Integer . l l - - INTEGER {first(-2147483648),last(2147483647))
.
Cardinal . . l = INTEGER {first(O),last(4294967295))
.
Code . . l = INTEGER (first(O),last(255))
.
Rational . . l = SEQUENCE (
numerator [0] IMPLICIT Integer,
denominator [l] IMPLICIT INTEGER
(first(l),last(2147483647) OPTIONAL )
-- denominator defaults to 1
.
Rel-Rational
. . l = Rational
-- expresses glyph coordinate units
-- denominator defaults to relunits or 1
.
Angle
. . l = Rational
-- expresses units of degrees, with a
-- value range of -360 to +360
-- denominator defaults to 1
.
Proprietary-Data
. . -= SEQUENCE (
prop-data-message
[0] IMPLICIT Message OPTIONAL,
prop-data-key [1] IMPLICIT OCTET STRING OPTIONAL,
prop-data [2] IMPLICIT OCTET STRING
END
NOTE 3 The Global-Name and Name-Prefix properties represent an encoding efficiency that permits the use of short
Structured-Names (as short as one Object-Name-Component) within the body of a font resource or font reference. The
Name-Prefixes property is an indexed list of Structured-Name values (see annex B for the definition of Structured-Names) that
are to be pre-pended to the Structured-Name value of any Global-Name containing a corresponding prefix-index value. If no
ISO/IEC 9541=2:199l(E)
prefix-index value is provided in a Global-Name, then the Structured-Name value specified is a fully qualified Structured-Name.
Caution should be exercised in the creation of Name-Prefixes since no Validation checking tan be performed to verify the fully
qualified Structured-Name resulting from the combination.
6.2 SGML
relr 1 ratl 1 bool 1 glbname 1 octstr 1
>
ang 1 time"
>
(namencd? , namtabl? , fontname , fontdes ,
-- FONT RESOURCE -->
wrmodes , gshapes? , niprop* )
--
- 0 (octstr) char encoding for names -->
- 0 (prefix , strucnm)+ -- name prefix table,
see global name note at the end of this clause -->
-- prefix index -->
-- FONTNAME -->
Descriptive properties -->
nomlcsw?
- o (card? , card? , time?) -- DATAVERSION -->
- o (card) -- STANDARDVERSION -->
- o (glbname) -- DATASOURCE -->
-- DATACOPYRIGHT -->
- 0 (msg)
-- DSNSOURCE -->
-- DSNCOPYRIGHT -->
- 0 mg)
-- RELUNITS -->
-- TYPEFACE -->
- 0 (msg)
-- FONTFAMILY -->
-- POSTURE -->
-- POSTUREANGLE -->
- 0 tang>
-- WEIGHT -->
-- PROPWIDTH -->
, niprop* )
iglys? xglys?
f
-- GLYPHCOMP -->
-- NUMGLYPHS -->
-- INC/EXCGLYPHCOLS,INC/EXCGLYPHS -->
- o (glbname+)
-- NOMWRMODE -->
-- DSNSIZE, MINSIZE, MAXSIZE -->
- 0 (ratl)
-- CAPHEIGHT, LCHEIGHT -->
-- DSNGROUP -->
-- STRUCTURE -->
ISO/IEC 9541=2:1991(E)
< ! -- Writing mode dependent properties -->
.-
- o *
- o (wrmdnam , ( nescdir & escclass
& avlcescx
(avgescx & avgescy & avlcescy &
avcpescx & avcpescy 6( tabescx & tabescy ) &
mxfntext & sectors? & escadjs? &
mineas? & maxeas? & scores? & varscrps? &
minlinsp? & minanasc? & maxanasc? & nomalign? &
algnmds? & copyfits? &
(dsnwdadd? & dsnwdamp? & minwdadd? & minwdamp? &
maxwdadd? & maxwdamp? & dsnltadd? & dsnltamp? &
minltadd? & minltamp? & maxltadd? SL maxltamp?)&
->
& niprop*)) -- WRMODE -
glyphs
-- WRMODENAME -->
-- NOMESCDIR -->
- 0 tang)
- o (Code)
- 0 (relr)
-- TABESCX/Y -->
-- MAXFONTEXT -->
-- CPEA -->
cpeax? & cpeay? & niprop*)
- o (card)
-- SEC -->
- 0 (Score+ & niprop*)
- 0 (scname, (scoffx? & scoffy
-- SCORE -->
-- SCORENAME -- >
-- SCORETHICK -->
- 0 (varscrp* & niprop*)
- 0 (vsname , (vsoffx?
-- VSCRIPT -->
vsscalex? & vsscaley? & niprop* ) )
o o (glbname)
- 0 (relr)
-- VSSCALEX/Y -->
- 0 (relr , relr)
ascaley? & niprop*) ) -- ALIGN -->
-- ALIGNOFFSETX/Y -->
C!ELEMENT copyfits - 0 (copyfit* & niprop*) -- COPYFITS -->
ISO/IEC 9541=2:1991(E)
-- COPYFITMEASURE -->
c!ELEMENT (dsnwdadd 1 minwdadd 1 maxwdadd 1 dsnltadd 1 minltadd 1
maxltadd) - 0 (relr) -- word and letter space additions -->
c!ELEMENT (dsnwdamp 1 minwdamp 1 maxwdamp 1 dsnltamp 1 minltamp 1
maxltamp) - 0 (ratl) '-- word and letter space amplifications -->
Glyph Metric Information
(Px & PY 6; eY
ext & lgs? & peas? & cpeai? & eai? &
minex? & miney? & maxex? & maxey? & niprop*) ) >
-- EXT -->
-- LGS -->
-- LG -->
-- LGN -->
-- LGSN -->
c!ELEMENT lgsn - o (glbname+)
-- PEAS -->
spfy? & spbx? & spby? & niprop* ) ) -- PEA -->
-- PEAN -->
-- SPEA Extents -->
- 0 (relr+)
-- CPEAI -->
-- EAI -->
-- MINEX/Y,MAXEX/Y -->
< ! -- Glyph Shape information
-->
NB. only ISO-defined value types allowed. -->
>
-- elemental value types -3
--
- o (defnmpre? , niprop)+ -- property-lists
--
>
--
>
see global name note at the end of this clause
--
>
--
>
--
>
--
--
>
.
o o (#PCDATA)
o o (#PCDATA)
o o (num , den?)
(true 1 false) "t rue " >
-- proprietary data -->
ISO/IEC 9541=2:1991(E)
J-Y
den - o (#PCDATA)
NOTE 4 The glbname and nametbl elements represent an encoding efficiency that permits the use of short Structured-
Names (as short as one Object-Name-Component) within the body of a font resource or font reference. The nametbl element
is an indexed list of Structured-Name values (see Annex B for the definition of Structured-Names) that are to be pre-pended
to the Structured-Name value of any glbname element containing a corresponding prefix value. If no prefix value is provided in
a glbname element, then the strucnm value specified is a fully qualified Structured-Name. Caution should be exercised in the
creation of namtbl values since no Validation checking tan be performed to verify the fully qualified Structured-Name resulting
from the combination.
ISO/IEC 9541=2:1991(E)
Annex A
(normative)
Font reference
This annex defines an ASN.l structure and an SGML Document Type Definition of the font information that may
be used in a font reference data structure. A font reference is intended for use in the identification and selection
of a font resource that matches the set of property values specified in the font reference; glyph metrics, if present,
are intended only to aid font selection. A complete font reference needs to be based on the processing and user
requirements of the document architecture in which the reference is defined.
The structure defined below retains the same format as a font resource, except all properties are optional and
glyph shapes are excluded. The structure may be used directly as a font reference (by specifying the selection
semantics), or may be used as a building block for more complex font selection or Substitution requirements. Oniy
those properties considered to be relevant to the originator need be specified in a font reference.
A.l ASN.l
ISO-STANDARD-9541-FONT-ATTRIBUTE-SET (1 0 9541 2 2)
DEFINITIONS ::= BEGIN
IMPORTS Structured-Name FROM (1 0 9541 2 3)
l
Font-Attribute-Set l = SEQUENCE {
l l
name-prefixes [0] IMPLICIT SET OF Name-Prefix OPTIONAL,
[1] IMPLICIT Global-Name OPTIONAL,
iso-standard-9541-fontname
OPTIONAL,
iso-standard-9541-fontdescription [2] IMPLICIT Font-Description
[3] IMPLICIT Writing-Modes OPTIONAL,
iso-standard-9541-wrmodes
non-iso-properties [S] IMPLICIT Property-List OPTIONAL )
l
Font-Description
l l l = SET {
iso-standard-9541-dataversion [0] IMPLICIT Data-Version OPTIONAL,
iso-standard-9541-Standardversion [1] IMPLICIT Cardinal OPTIONAL,
iso-standard-9541-datasource [2] IMPLICIT Global-Name OPTIONAL,
iso-standard-9541-datacopyright OPTIONAL,
[3] IMPLICIT Message
iso-standard-9541-dsnsource OPTIONAL,
[4] IMPLICIT Global-Name
iso-standard-9541-dsncopyright [5] IMPLICIT Message OPTIONAL,
iso-standard-9541-relunits [6] IMPLICIT Cardinal OPTIONAL,
iso-standard-9541-typeface [7] IMPLICIT Message OPTIONAL,
iso-standard-9541-fontfamily [8] IMPLICIT Match-String OPTIONAL,
iso-standard-9541-posture [9] IMPLICIT Posture-Code OPTIONAL,
iso-standard-9541-postureangle [lO] IMPLICIT Angle OPTIONAL,
iso-standard-9541-weight [ll] IMPLICIT Weight-Code OPTIONAL,
iso-standard-9541-propwidth [12] IMPLICIT Width-Code OPTIONAL,
iso-standard-9541-glyphcomp [13] IMPLICIT Glyph-Complement OPTIONAL,
iso-standard-9541-nomwrmode [14] IMPLICIT Global-Name OPTIONAL,
iso-standard-9541-dsnsize [15] IMPLICIT Rational OPTIONAL,
iso-standard-9541-minsize [16] IMPLICIT Rational OPTIONAL,
iso-standard-9541-maxsize [17] IMPLICIT Rational OPTIONAL,
iso-standard-9541-capheight [18] IMPLICIT Rel-Rational OPTIONAL,
iso-standard-9541-lcheight [19] IMPLICIT Rel-Rational OPTIONAL,
iso-standard-9541-dsngroup [20] IMPLICIT Design-Group OPTIONAL,
iso-standard-9541-structure [21] IMPLICIT Structure-Code OPTIONAL,
iso-standard-9541-minfeatsz [22] IMPLICIT Rel-Rational OPTIONAL,
iso-standard-9541-nomcapstemwidth [23] IMPLICIT Rel-Rational OPTIONAL,
iso-standard-9541-nomlcstemwidth [24] IMPLICIT Rel-Rational OPTIONAL,
non-iso-prop
...








Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.
Loading comments...