ISO/IEC JTC 1/SC 34N0569
ISO/IEC JTC 1/SC 34
Information Technology --
Document Description and Processing Languages
|TITLE:||ISO/IEC 9541-3/FPDAM1, Additional Shape Representation Technology|
|SOURCE:||Dr. Yushi Komachi; Mr. Jürgen Willrodt|
|PROJECT:||PDAM1 9541-3: Information technology -- Document description and processing languages -- Font Information Interchange - Part 3: Glyph Shape Representation - Amendment 1: Additional Shape Representation Technology|
|PROJECT EDITOR:||Dr. Yushi Komachi; Mr. Jürgen Willrodt|
|ACTION:||FPDAM ballot at SC34 level|
|DISTRIBUTION:||SC34 and Liaisons|
|REFER TO:||N0569b - 2004-11-15 - Ballot due 2005-03-15 - ISO/IEC 9541-3/FPDAM1, Additional Shape Representation Technology|
Dr. James David Mason
(ISO/IEC JTC 1/SC 34 Secretariat - Standards Council of Canada)
Crane Softwrights Ltd.
Kars, ON K0A-2E0 CANADA
Telephone: +1 613 489-0999
Facsimile: +1 613 489-0995
Network: [email protected]
ISO/IEC JTC1/SC34 N0xxx
Secretariat: Standards Council of Canada
Information technology — Font information interchange —
Glyph shape representation
FPDAM 1: Additional shape representation technology
ISO (the International Organization for Standardization) is a worldwide federation of national standards bodies (ISO member bodies). The work of preparing International Standards is normally carried out through ISO technical committees. Each member body interested in a subject for which a technical committee has been established has the right to be represented on that committee. International organizations, governmental and non-governmental, in liaison with ISO, also take part in the work. ISO collaborates closely with the International Electrotechnical Commission (IEC) on all matters of electrotechnical standardization.
International Standards are drafted in accordance with the rules given in the ISO/IEC Directives, Part 2.
In the field of information technology, ISO and IEC have established a joint technical committee, ISO/IEC JTC 1. Draft International Standards adopted by the joint technical committee are circulated to national bodies for voting. Publication as an International Standard requires approval by at least 75 % of the national bodies casting a vote.
Attention is drawn to the possibility that some of the elements of this International Standard may be the subject of patent rights. ISO and IEC shall not be held responsible for identifying any or all such patent rights.
Amendment 1 to ISO/IEC 9541-3:1994 was prepared by Joint Technical Committee ISO/IEC JTC 1, Information technology, Subcommittee SC 34, Document description and processing languages.
This Amendment specifies an additional shape representation technology and slight modification to ISO/IEC 9541-3:1994.
The additional interchange format is described by SGML (Standard Generalized Markup Language) conforming to ISO 8879:1986 and its Technical Corrigendum 2 (Annex K: Web SGML Adaptations).
Information technology — Font information interchange —
Part 3: Glyph shape representation
Amendment 1: Additional shape representation technology
Replace the declaration of 1.7.2 with:
<!-- (c) International Organization for Standardization 2004 Permission to copy in any form is granted for use with conforming WebSGML systems and applications as defined in ISO 8879:1986(WWW), provided this notice is included in all copies. --> <!-- Public document type definition. Typical invocation: <!DOCTYPE gshapes PUBLIC "ISO 9541-3:1994 AM1:2004//DTD Glyph Shapes//EN"> --> <!-- GLYPHSHAPES --> <!ELEMENT gshapes (t1shapes | t2shapes | niprop)+ )> <!-- Type 1 shape information. Typical invocation: <!DOCTYPE t1shapes PUBLIC "ISO 9541-3:1994//DTD Type 1 Glyph Shapes//EN"> --> <!-- Type 2 shape information. Typical invocation: <!DOCTYPE t2shapes PUBLIC "ISO 9541-3:1994 AM1:2004//DTD Type 2 Glyph Shapes//EN"> -->
Add the following Section:
Section 3: Type 2 glyph shape representation
This section specifies the architecture and interchange format of one standard Glyph Shape Representation: ISO/IEC 9541 Standard TYPE 2. This representation technique is appropriate for presentation on raster devices of low resolution or where simple processing or display time is essential, as required for example in ISO/IEC 10036 registration authority. The representation technique is intended to provide a basic level of shape definition facilities.
The following definitions are specific to this section.
The "picture" of the glyph image represented by a 2-dimensional grid of binary values — 0 (or off) represents the background (usually, uninked) portion of the glyph image and 1 (or on) represents the foreground (usually inked) portion of the glyph image.
3.2.2 bounding box
The imaginary box surrounding the bitmap.
NOTE It is equivalent to the imaginary box with lower left coordinates of (minx, miny) and upper right coordinates of (maxx, maxy) as defined in Part 1 of this International Standard rounded as necessary to an integer number of pixels in x and y directions.
A single location in a 2-dimensional grid which may take either of the binary values to represent the uninked or background of the glyph image (0 or off) or the inked or foreground of the glyph image (1 or on).
3.3 Overview of Type 2 glyph shape representation architecture
Type 2 glyph shape technology is a bitmap technology which utilizes a simple 2-dimensional grid of individual bits ("pixels") to describe the glyph image. This approach has the advantage that it is extremely simple and can be used to represent any font without requiring sophisticated design of representation software. It is intended that this technology would be used to provide a solution for interchanging glyph image and font information specifically for low resolution devices. It may be used to provide the ISO/IEC 10036 Registrar with glyph(s) and/or glyph collection(s) for inclusion within the Glyph Registry.
To maintain simplicity, the shape technology defined in this section does not use any bitmap compression techniques, nor any techniques for adjusting pixel intensity or size.
3.4 Type 2 shape properties (T2SHAPES)
T2SHAPES is a property-list of shape properties, defining all the properties for Type 2 shape information. These consist of general font properties and glyph-specific properties and shape information. TSSHAPES has the following formal structure:
t2-shape-property-list ::= t2-shape-name, t2-shape-value-property-list t2-shape-name ::= STRUCTURED-NAME -- ISO/IEC 9541-3//T2SHAPE t2-shape-value-property-list ::= ( pxlsize-property, odtech-property?, t2-glyphs-property-list )
3.4.1 Pixel size (PXLSIZE)
PXLSIZE is an ordered-value-list of two rationals, the x and y size of the bitmap pixel in millimeters.
pxlsize-property ::= pxlsize-name, pxlsize-value-value-list pxlsize-name ::= STRUCTURED-NAME -- ISO/IEC 9541-3//PXLSIZE pxlsize-value-value-list ::= pxlsize-x, pxlsize-y pxlsize-x ::= RATIONAL pxlsize-y ::= RATIONAL
3.4.2 Output device technology (ODTECH)
ODTECH is a code, indicating the technology of the output device for which this set of shape information pertains. It may be one of
0 ==> not applicable; 1 ==> write-white; 2 ==> write-black.
All other code are reserved for future standardization.
odtech-property ::= odtech-name, odtech-value odtech-name ::= STRUCTURED-NAME -- ISO/IEC 9541-3//ODTECH odtech-value ::= CODE
3.4.3 Glyph-shape properties
18.104.22.168 Glyph name (GNAME)
GNAME is a global name defined in Part 1 of this International Standard, the name of the glyph whose shape is defined by the following properties.
22.214.171.124 Bounding box offset (BBOFFSET)
BBOFFSET is an ordered-value-list of two rel-rationals, the x and y displacement of the lower left corner of the bounding box from the origin of the glyph coordinate system.
offset-property ::= offset-name, offset-value-value-list offset-name ::= STRUCTURED-NAME -- ISO/IEC 9541-3//BBOFFSET offset-value-value-list ::= offset-x, offset-y offset-x ::= REL-RATIONAL offset-y ::= REL-RATIONAL
NOTE These values will be very similar to the values given for minx and miny (defined in Part 1), but may have been adjusted to account for rounding/truncation errors, and to ensure as accurate a representation as possible within the restricted bitmap of a low resolution device.
126.96.36.199 Bounding Box (BBOX)
BBOX is an ordered-value-list of two cardinals, the width and height of the bounding box in pixels (Bbw, Bbh).
bbox-property ::= bbox-name, bbox-value-value-list bbox-name ::= STRUCTURED-NAME -- ISO/IEC 9541-3//BBOX bbox-value-value-list ::= bbox-width, bbox-height bbox-width ::= CARDINAL bbox-height ::= CARDINAL
NOTE These values could have been determined from the EXTs (defined in Part 1) and the pixel size. However, including them as glyph shape properties helps to ensure that the bitmap information following is correctly encoded by removing the effect of any rounding/truncation errors that could result from that calculation.
188.8.131.52 Bitmap (BITMAP)
BITMAP is an ordered-value-list of Bbh octet strings, where each octet string contains Bbw bits padded on the right with zeros to the nearest whole octet. Each bit represents the off (0) or on (1) state of a pixel in the bitmap which represents the glyph image. The octet strings within the ordered-value-list are ordered from the maximum y (top row) to the minimum y (bottom row), and the bits within each octet, and the octets within each string are ordered from left (minimum x) to right (maximum x).
bitmap-property ::= bitmap-name, bitmap-value-value-list bitmap-name ::= STRUCTURED-NAME -- ISO/IEC 9541-3//BITMAP bitmap-value-value-list ::= bitmap-value* bitmap-value ::= OCTET-STRING
3.5 Interchange format
<!-- (c) International Organization for Standardization 2004 Permission to copy in any form is granted for use with conforming WebSGML systems and applications as defined in ISO 8879:1986(WWW), provided this notice is included in all copies. --> <!-- Public document type definition. Typical invocation: <!DOCTYPE t2shapes PUBLIC "ISO 9541-3:1994 AM1:2004//DTD Type 2 Glyph Shapes//EN"> --> <!-- Type 2 Shapes --> <!ELEMENT t2shapes (pxlsize, odtech?, t2glyphs)> <!-- Pixel Size --> <!ELEMENT pxlsize (rat1, rat1)> <!-- Output Device Technology --> <!ELEMENT odtech (code)> <!-- Type 2 glyph shape --> <!ELEMENT t2glyphs (t2glyph+)> <!ELEMENT t2glyph (glname, bboffs?, bbox, bitmap)> <!-- Offset-x and Offset-y --> <!ELEMENT bboffs (relr, relr)> <!-- Bounding Box width and height --> <!ELEMENT bbox (card, card)> <!-- Bitmap from top to btm, lt to rt --> <!ELEMENT bitmap (octstr*)>