### ----------------------------------------------------
### -- PDF::ISO_32000_2
### -- Licenses: Artistic-2.0
### -- Authors: David Warring
### -- File: resources/ISO_32000_2/Table_380-Standard_layout_attributes_specific_to_inline-level_structure_elements.json
### ----------------------------------------------------
{
  "table": {
    "caption": "Table 380 — Standard layout attributes specific to inline-level structure elements",
    "head": [
      "Key",
      "Type",
      "Value"
    ],
    "rows": [
      [
        "BaselineShift",
        "number",
        "(Optional; not inheritable) The distance, in default user space units, by which the element’s baseline is shifted relative to that of its parent element. The shift direction is the opposite of the block-progression direction specified by the prevailing WritingMode attribute (see \"General Layout Attributes\" in 14.8.5.4, \"Layout Attributes\"). Thus, positive values shall shift the baseline toward the before edge and negative values toward the after edge of the reference area (upward and downward, respectively, in Western writing systems).\nDefault value: 0.\nThe shifted element may be a superscript, a subscript, or an inline graphic. The shift applies to the element, its content, and all of its descendants. Any further baseline shift applied to a child of this element is measured relative to the shifted baseline of this (parent) element."
      ],
      [
        "LineHeight",
        "number or name",
        "(Optional; inheritable) The element’s preferred height, measured in default user space units in the block-progression direction. The height of a line of text is determined by the largest LineHeight value for any complete or partial ILSE that it contains.\nThe name Normal or Auto in place of a numeric value indicates that no specific height constraint is to be imposed. The element’s height is set to a reasonable value based on the content’s font size:\nNormal Adjust the line height to include any non-zero value specified for BaselineShift.\nAuto Adjustment for the value of BaselineShift is not made.\nDefault value: Normal.\nThe meaning of the term \"reasonable value\" is left to the PDF processor to determine. It is approximately 1.2 times the font size, but this value may vary depending on the export format.\nThis attribute applies to all ILSEs (including implicit ones) that are children of this element or of its nested ILSEs, if any. It does not apply to nested BLSEs.\nWhen translating to a specific export format, the values Normal and Auto, if specified, is used directly if they are available in the target format.\nNOTE 1 In the absence of a numeric value for LineHeight or an explicit value for the font size, a reasonable method of calculating the line height from the information in a tagged PDF file is to find the difference between the associated font’s Ascent and Descent values (see 9.8, \"Font descriptors\"), map it from glyph space to default user space (see 9.4.4, \"Text space details\"), and use the maximum resulting value for any character in the line."
      ],
      [
        "TextPosition",
        "name",
        "(Optional; inheritable; PDF 2.0) The position of the element relative the immediately surrounding content. Valid values are:\nSup Position is elevated, like for superscript.\nSub Position is lowered, like for subscript\nNormal Position is neither elevated nor lowered.\nDefault value: Normal\nTextPosition does not imply any specific semantic.\nNOTE 2 As a consequence, it cannot be determined whether text with a TextPosition attribute of Sup is a footnote number, an exponent, an index or some other use of the text. For mathematical expressions, MathML structure elements provide a richer semantic for superscripted or subscripted content."
      ],
      [
        "TextDecorationColor",
        "array",
        "(Optional; inheritable; PDF 1.5) The colour to be used for drawing text decorations. The value is an array of three numbers in the range 0.0 to 1.0, representing the red, green, and blue values, respectively, of an RGB colour space. If this attribute is not specified, the text decoration colour for this element is the current fill colour in effect at the start of its associated content."
      ],
      [
        "TextDecorationThickness",
        "number",
        "(Optional; inheritable; PDF 1.5) The thickness of each line drawn as part of the text decoration. The value is a non-negative number in default user space units representing the thickness (0 is interpreted as the thinnest possible line). If this attribute is not specified, it is derived from the current stroke thickness in effect at the start of the element’s associated content, transformed into default user space units."
      ],
      [
        "TextDecorationType",
        "name",
        "(Optional; inheritable only for directly nested ILSEs) The text decoration, if any, to be applied to the element’s text. Valid values are:\nNone No text decoration\nUnderline A line below the text\nOverline A line above the text\nLineThrough A line through the middle of the text\nDefault value: None.\nThis attribute applies to all text content items that are children of this element or of its nested ILSEs, if any. The attribute does not apply to nested BLSEs or to content items other than text.\nThe colour, position, and thickness of the decoration is uniform across all children, regardless of changes in colour, font size, or other variations in the content’s text characteristics."
      ],
      [
        "RubyAlign",
        "name",
        "(Optional; inheritable; PDF 1.5) The justification of the lines within a ruby assembly. Valid values are:\nStart The content is aligned on the start edge in the inline-progression direction.\nCenter The content is centred in the inline-progression direction.\nEnd The content is aligned on the end edge in the inline-progression direction.\nJustify The content is expanded to fill the available width in the inline-progression direction.\nDistribute The content is expanded to fill the available width in the inline-progression direction. However, space is also inserted at the start edge and end edge of the text. The spacing is distributed using a 1:2:1 (start:infix:end) ratio. It is changed to a 0:1:1 ratio if the ruby appears at the start of a text line or to a 1:1:0 ratio if the ruby appears at the end of the text line.\nDefault value: Distribute.\nThis attribute may be specified on the RB and RT elements. When a ruby is formatted, the attribute is applied to the shorter line of these two elements. For example, if the RT element has a shorter width than the RB element, the RT element is aligned as specified in its RubyAlign attribute."
      ],
      [
        "RubyPosition",
        "name",
        "(Optional; inheritable; PDF 1.5) The placement of the RT structure element relative to the RB element in a ruby assembly. Valid values are:\nBefore The RT content is aligned along the before edge of the element.\nAfter The RT content is aligned along the after edge of the element.\nWarichuThe RT and associated RP elements is formatted as a warichu, following the RB element.\nInline The RT and associated RP elements is formatted as a parenthesis comment, following the RB element.\nDefault value: Before."
      ],
      [
        "GlyphOrientationVertical",
        "number or name",
        "(Optional; inheritable; PDF 1.5) Specifies the orientation of glyphs when the inline-progression direction is top to bottom or bottom to top. Valid values are:\nangle A number representing the clockwise rotation in degrees of the top of the glyphs relative to the top of the reference area. Shall be a multiple of 90 degrees between -180 and +360.\nAuto Specifies a default orientation for text, depending on whether it is fullwidth (as wide as it is high). Fullwidth Latin and fullwidth ideographic text (excluding ideographic punctuation) is set with an angle of 0. Ideographic punctuation and other ideographic characters having alternate horizontal and vertical forms uses the vertical form of the glyph. Non-fullwidth text is set with an angle of 90.\nDefault value: Auto.\nNOTE 3 This attribute is used most commonly to differentiate between the preferred orientation of alphabetic (non-ideographic) text in vertically written Japanese documents (Auto or 90) and the orientation of the ideographic characters and/or alphabetic (non-ideographic) text in western signage and advertising (90).\nThis attribute shall affect both the alignment and width of the glyphs. If a glyph is perpendicular to the vertical baseline, its horizontal alignment point is aligned with the alignment baseline for the script to which the glyph belongs. The width of the glyph area is determined from the horizontal width font characteristic for the glyph."
      ]
    ]
  }
}


