ISO/IEC JTC 1/SC34 N115
ISO/IEC JTC 1/SC34/WG2 N21
ISO/IEC JTC 1/SC34/WG2
Information Technology --
Document Description and Processing Languages
-- Information Presentation
TITLE: | DAM3 to ISO/IEC 9541-1: Multilingual extensions to font resource architecture |
SOURCE: | SC34/WG2 |
PROJECT: | JTC1.34.27.01.03 |
PROJECT EDITOR: | Y. Komachi |
STATUS: | Document for Philadelphia meeting |
ACTION: | |
DATE: | 1999-11-30 |
DISTRIBUTION: | SC34 and Liaisons |
REFER TO: | SC34 N0071, SC34 N0094 |
REPLY TO: | SC34/WG2 N19(Disposition of comments on SC34 N0071) |
DAM3 to ISO/IEC 9541-1: Information Technology - Font Information Interchange - Part 1: Architecture - Amendment 3: Multilingual extensions to font resource architecture
Introduction
This amendment specifies additional generalized properties for the Font Resources defined by ISO/IEC 9541-1:1991. The properties support interlinear/intercharacter font objects required for multilingual documents, particularly including East Asian language descriptions. The Ruby specified in ISO/IEC 9541-1:1991 can be dealt with as a simplified instance of the interlinear objects as shown in Annex C.
The properties of this Amendment are optional and in addition to those defined in ISO/IEC 9541-1:1991, with the interchange format defined in Amendment 1 to ISO/IEC 9541-2:1991.
Information technology - Font information interchange -
Part 1: Architecture
Amendment 3: Multilingual extensions to font resource architecture
Page 3
Clause 3
Add the following definitions:
3.32 interlinear object: Object between lines or objects inserted between lines.
3.33 intercharacter object: Object between characters in the writing direction.
3.34 parent object: Object with which an interlinear or intercharacter object is associated. This term is used when referring to the relationship between an interlinear/intercharacter object and the object with which the interlinear/intercharacter object is associated.
3.35 child object: Interlinear or intercharacter object. This term is used when referring to the relationship between an interlinear/intercharacter object and the object with which the interlinear/intercharacter object is associated.
Page 54
Clause 8
Add the following properties and the related notes descriptions:
8.10 Interlinear/intercharacter Object Properties (ILCOBJ)
ILCOBJ is a property-list consisting of property-lists that specify type, font size, typeface, rotation, position in writing direction, formatting information in writing direction, and position in line progression direction of an interlinear/intercharacter object.
Note that the properties are primitive properties to locate actually an interlinear/intercharacter object. There may be some GUI or convention for specification which can produce the properties.
ILC-property ::= ILC-name, ILC-value-property-list ILC-name ::= STRUCTURED-NAME ILC-value-property-list ::= (ILC-type-property|ILC-font-size-property| ILC-typeface-property|ILC-rotation-property| ILC-writing-direction-offset-property| ILC-formatting-type-property| ILC-line-progression-direction-offset-property)+ ILC-type-property ::= ILC-type-name, ILC-type-value -- type of Interlinear/intercharacter objects ILC-type-name ::= STRUCTURED-NAME ILC-type-value ::= STRUCTURED-NAME ILC-font-size-property ::= ILC-font-size-name, ILC-font-size-value-type, ILC-font-size-value -- Property for font size ILC-font-size-name ::= STRUCTURED-NAME ILC-font-size-value-type ::= "ABS" | "RELATIVE" ILC-font-size-value ::= REL-RATIONAL ILC-typeface-property ::= ILC-typeface-name, ILC-typeface-value -- Property for typeface ILC-typeface-name ::= STRUCTURED-NAME ILC-typeface-value ::= STRUCTURED-NAME ILC-rotation-property ::= ILC-rotation-name, ILC-rotation-value -- Property for rotation ILC-rotation-name ::= REL-RATIONAL ILC-rotation-value ::= 0|90|180|270 ILC-writing-direction-offset-property ::= ILC-writing-direction-offset-name, ILC-writing-direction-offset-value, ILC-writing-direction-offset-value -- Property for position in writing direction ILC-writing-direction-offset-name ::= STRUCTURED-NAME ILC-writing-direction-offset-value-type ::= "ABS" | "RELATIVE" ILC-writing-direction-offset-value ::= REL-RATIONAL ILC-formatting-type-property ::= ILC-formatting-type-name, ILC-formatting-type-value -- Property for formatting information in writing direction ILC-formatting-type-name ::= STRUCTURED-NAME ILC-formatting-type-value ::= "HEAD"|"CENTER"|"TAIL"|"JUSTIFICATION" ILC-line-progression-direction-offset-property ::= ILC-line-progression-direction-offset-name, ILC-line-progression-direction-offset-value, ILC-line-progression-direction-offset-value-type -- Property for position in line progression direction ILC-line-progression-direction-offset-name ::= STRUCTURED-NAME ILC-line-progression-direction-offset-value-type ::= "ABS" | "RELATIVE" ILC-line-progression-direction-offset-value ::= REL-RATIONAL
NOTE 1 It is required to specify the following character strings for processing an interlinear/intercharacter object:
- character string associated with an interlinear/intercharacter object (i.e. a parent object)
- character string structuing an interlinear/intercharacter object (i.e. child object)
This Amendment provides no particular schemes to specify those character strings. For example, customized SGML/XML tags may be used for it.
NOTE 2 It is possible to associate multiple interlinear/intercharacter objects with the identical character string.
NOTE 3 ILC-type-property (type) specifies the type of an interlinear/intercharacter object.
NOTE 4 ILC-font-size-property (font size) specifies the font size with its absolute value or relative value with respect to the font size of the parent object.
NOTE 5 ILC-typeface-property (typeface name) specifies the typeface name.
NOTE 6 ILC-rotation-property (rotation) specifies the angle measured counterclockwise from the parent object's writing direction to the child object's writing direction. In many cases interlinear objects have 0 degree for and intercharacter objects have 270 degree (when the main text is horizontally composed) or 90 degree (when the main text is vertically composed).
NOTE 7 ILC-writing-direction-offset-property (offset in writing direction) specifies the offset in writing direction with its absolute value or relative value with respect to the font size of the parent object.
This value shows the displacement between the positioning points of child object and parent object (see Figure 8, 9 and 10), and is measured in the parent object's coordinate system.
NOTE 8 ILC-formatting-type-property (formatting type information in writing direction) specifies the formatting information regarding the alignment in writing direction. When this property is specified, other properties for positioning in writing direction are overwhelmed.
NOTE 9 ILC-line-progression-direction-offset-property (offset in line progression direction) specifies the offset in line progression direction with its absolute value or relative value with respect to the font size of the parent object.
This value shows the displacement between the baselines of parent object and child object (see Figure 8, 9 and 10), and is measured in the parent object's coordinate system.
Figure 8 - Offsets in the case where writing direction of the parent object is left-to-right and rotation is 0 degree
Figure 9 - Offsets in the case where writing direction of the parent object is left-to-right and rotation is 270 degree
Figure 10 - Offsets in the case where writing direction of the parent object is top-to-bottom and rotation is 0 degree
Annex
Add the following annexes:
Annex C
(informative)
Examples of property specification for typical interlinear/intercharacter
objects
Properties are specified to represent some typical interlinear/intercharacter objects. Actual values are assigned or restricted to a property.
C.1 Ruby
ILC-type-value: "Ruby"
The name "Ruby" is just an example. Other names can be specified.
ILC-font-size-value-type: "ABS" or "RELATIVE" ILC-font-size-value: any size ILC-typeface-value: any typeface name ILC-rotation-value: 0 ILC-writing-direction-offset-value-type: "ABS" or "RELATIVE" ILC-writing-direction-offset-value: any size ILC-formatting-type-value: "HEAD" or "CENTER" or "JUSTIFICATION" ILC-line-progression-direction-offset-value-type: "ABS" or "RELATIVE" ILC-line-progression-direction-offset-value: any size
C.2 Kendot
ILC-type-value: "Kendot"
The name "Kendot" is just an example. Other names can be specified.
ILC-font-size-value: any size ILC-typeface-value: any typeface name ILC-rotation-value: 0 ILC-formatting-type-value: "HEAD" or "CENTER" ILC-line-progression-direction-offset-value: any size
C.3 Return Mark
ILC-type-value: "Return-Mark"
The name "Return-Mark" is just an example. Other names can be specified.
ILC-font-size-value: any size ILC-typeface-value: any typeface name ILC-rotation-value: 0 ILC-writing-direction-offset-value-type: "ABS" or "RELATIVE" ILC-writing-direction-offset-value: any size ILC-line-progression-direction-offset-value-type: "ABS" or "RELATIVE" ILC-line-progression-direction-offset-value: any size
C.4 Added Characters
ILC-type-value: "Added-Characters"
The name "Added-Characters" is just an example. Other names can be specified.
ILC-font-size-value: any size
ILC-typeface-value: any typeface name ILC-rotation-value: 0 ILC-writing-direction-offset-value-type: "ABS" or "RELATIVE" ILC-writing-direction-offset-value: any size ILC-line-progression-direction-offset-value-type: "ABS" or "RELATIVE" ILC-line-progression-direction-offset-value: any size
Annex D
(informative)
Examples of rendered images of typical interlinear/intercharacter objects
D.1 Ruby
The following figures illustrate some typical rendered images of Ruby objects.
Figure D.1 - Formatting information in writing direction is "HEAD"
|
|
Figure D.2 - Formatting information in writing direction is "CENTER"
Figure D.3 - Formatting information in writing direction is "JUSTIFICATION"
|
|
FIgure D.4 - Position in writing direction is specified
D.2 Kendot
The following figures illustrate some typical rendered images of Kendot objects.
Figure D.5 - Formatting information in writing direction is "HEAD"
Figure D.6 - Formatting information in writing direction is "CENTER"
D.3 Return Mark and Added Characters
The following figures illustrate some typical rendered images of Return Mark objects and Added Characters.
Figure D.7 - Rendered images of Return Marks
Figure D.8 - Rendered images of Added Characters