Up

module Svg_types

: sig

SVG types with variants. (See also Svg.M)

This module defines basic data types for data, attributes and element occuring in SVG documents. It is based on the specification available at http://www.w3.org/TR/SVG/.

This module is experimental, it may lack of some attributes, and the interface is very low level and do not take deeply into account the needs of SVG elements.

Categories of elements and attributes

This part defines the categories of elements and attributes

Elements

#
type animation_element = [
| `AnimateColor
| `AnimateMotion
| `AnimateTransform
| `Animate
| `Set
]
#
type descriptive_element = [
| `Desc
| `Metadata
| `Title
]
#
type basic_shape_element = [
| `Circle
| `Ellipse
| `Line
| `Polygon
| `Polyline
| `Rect
]
#
type container_element = [
| `A
| `Defs
| `Glyph
| `G
| `Marker
| `Mask
| `Missing_glyph
| `Pattern
| `Svg
| `Switch
| `Symbol
]
#
type filter_primitive_element = [
| `FeBlend
| `FeColorMatrix
| `FeComponentTransfer
| `FeComposite
| `FeConvolveMatrix
| `FeDiffuseLighting
| `FeDisplacementMap
| `FeFlood
| `FeGaussianBlur
| `FeImage
| `FeMerge
| `FeMorphology
| `FeOffset
| `FeSpecularLighting
| `FeTile
| `FeTurbulence
]
#
type light_source_element = [
| `FeDistantLight
| `FePointLight
| `FeSpotLight
]
#
type shape_element = [
| `Circle
| `Ellipse
| `Line
| `Path
| `Polyline
| `Polygon
| `Rect
]
#
type structural_element = [
| `Defs
| `G
| `Svg
| `Symbol
| `Use
]
#
type text_content_element = [
| `AltGlyph
| `TextPath
| `Text
| `Tref
| `Tspan
]
#
type text_content_child_element = [
| `AltGlyph
| `TextPath
| `Tref
| `Tspan
]
#
type gradient_element = [
| `Lineargradient
| `Radialgradient
]
#
type graphics_element = [
| `Circle
| `Ellipse
| `Image
| `Line
| `Path
| `Polygon
| `Polyline
| `Rect
| `Text
| `Use
]
#
type graphics_ref_element = [
| `Image
| `Use
]

Attributes

#
type conditional_processing_attr = [
| `RequiredExtensions
| `RequiredFeatures
| `SystemLanguage
]
#
type core_attr = [
| `Id
| `Xml_base
| `Xml_lang
| `Xml_space
]
#
type transfer_attr = [
| `Type_transfert
| `TableValues
| `Slope
| `Intercept
| `Amplitude
| `Exponent
| `Offset_transfer
]
#
type document_event_attr = [
| `OnAbort
| `OnError
| `OnResize
| `OnScroll
| `OnUnload
| `OnZoom
]
#
type filter_primitive_attr = [
| `Height
| `Result
| `Width
| `X
| `Y
]
#
type animation_event_attr = [
| `OnBegin
| `OnEnd
| `OnRepeat
| `OnLoad
]
#
type animation_attr_target_attr = [
| `AttributeType
| `AttributeName
]
#
type animation_timing_attr = [
| `Begin
| `Dur
| `End
| `Min
| `Max
| `Restart
| `RepeatCount
| `RepeatDur
| `Fill_Animation
]
#
type animation_value_attr = [
| `CalcMode
| `Values
| `KeyTimes
| `KeySplines
| `From
| `To
| `By
]
#
type animation_addition_attr = [
| `Additive
| `Accumulate
]
#
type presentation_attr = [
| `Alignement_Baseline
| `Baseline_Shift
| `Clip
| `Clip_Path
| `Clip_Rule
| `Color
| `Color_Interpolation
| `Color_interpolation_filters
| `Color_profile
| `Color_rendering
| `Cursor
| `Direction
| `Display
| `Dominant_baseline
| `Enable_background
| `Fill
| `Fill_opacity
| `Fill_rule
| `Filter
| `Flood_Color
| `Flood_Opacity
| `Font_Family
| `Font_Size
| `Font_Size_Adjust
| `Font_Stretch
| `Font_Style
| `Font_Variant
| `Font_Weight
| `Glyph_Orientation_Horizontal
| `Glyph_Orientation_Vertical
| `Image_Rendering
| `Kerning
| `Letter_Spacing
| `Lighting_Color
| `Marker_End
| `Marker_Mid
| `Marker_Start
| `Mask
| `Opacity
| `Overflow
| `Pointer_Events
| `Shape_Rendering
| `Stop_Color
| `Stop_Opacity
| `Stroke
| `Stroke_Dasharray
| `Stroke_Dashoffset
| `Stroke_Linecap
| `Stroke_Linejoin
| `Stroke_Miterlimit
| `Stroke_Opacity
| `Stroke_Width
| `Text_Anchor
| `Text_Decoration
| `Text_Rendering
| `Unicode_Bidi
| `Visibility
| `Word_Spacing
| `Writing_Mode
]
#
type graphical_event_attr = [
| `OnActivate
| `OnClick
| `OnFocusIn
| `OnFocusOut
| `OnLoad
| `OnMouseDown
| `OnMouseMove
| `OnMouseOut
| `OnMouseOver
| `OnMouseUp
]

Generic data types

#
type iri = string

An IRI reference is an Internationalized Resource Identifier with an optional fragment identifier, as defined in Internationalized Resource Identifiers RFC3987. An IRI reference serves as a reference to a resource or (with a fragment identifier) to a secondary resource. See References and the ‘defs’ element..

Units

#
module Unit : sig

SVG defines several units to measure time, length, angles.

#
type 'a quantity = float * 'a option
#
type angle = [
| `Deg
| `Grad
| `Rad
] quantity
#
type length = [
| `Em
| `Ex
| `Px
| `In
| `Cm
| `Mm
| `Pt
| `Pc
| `Percent
] quantity
#
type time = [
| `S
| `Ms
] quantity
#
type frequency = [
| `Hz
| `KHz
] quantity
end
#
type coord = Unit.length
#
type number = float
#
type number_optional_number = number * number option
#
type percentage = int
#
type strings = string list
#
type color = string
#
type icccolor = string
#
type paint_whitout_icc = [
| `None
| `CurrentColor
| `Color of color * icccolor option
]
#
type paint = [
| `Icc of iri * paint_whitout_icc option
]
#
type transform =
# | Matrix of (float * float * float * float * float * float)
# | Translate of (float * float option)
# | Scale of (float * float option)
# | Rotate of (Unit.angle * (float * float) option)
# | SkewX of Unit.angle
# | SkewY of Unit.angle
#
type spacestrings = string list
#
type commastrings = string list
#
type transforms = transform list
#
type fourfloats = float * float * float * float
#
type lengths = Unit.length list
#
type numbers = float list
#
type numbers_semicolon = float list
#
type coords = (float * float) list
#
type rotate = float list
#
type pcdata = [
| `PCDATA
]

Element

#
type svg = [
| `Svg
]
#
type svg_content = [
| `A
| `AltGlyphDef
| `ClipPath
| `Color_Profile
| `Cursor
| `Filter
| `Font
| `Font_Face
| `ForeignObject
| `Image
| `Marker
| `Mask
| `Pattern
| `Script
| `Style
| `Switch
| `Text
| `View
]
#
type svg_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `X
| `Y
| `Width
| `Height
| `ViewBox
| `PreserveAspectRatio
| `ZoomAndPlan
| `Version
| `BaseProfile
| `ContentScriptType
| `ContentStyleType
| `X
| `Y
]
#
type g = [
| `G
]
#
type g_content = [
| `A
| `AltGlyphDef
| `ClipPath
| `Color_Profile
| `Cursor
| `Filter
| `Font
| `Font_Face
| `ForeignObject
| `Image
| `Marker
| `Mask
| `Pattern
| `Script
| `Style
| `Switch
| `Text
| `View
]
#
type g_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `Transform
]
#
type defs = [
| `Defs
]
#
type defs_content = [
| `A
| `AltGlyphDef
| `ClipPath
| `Color_Profile
| `Cursor
| `Filter
| `Font
| `Font_Face
| `ForeignObject
| `Image
| `Marker
| `Mask
| `Pattern
| `Script
| `Style
| `Switch
| `Text
| `View
]
#
type defs_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `Transform
]
#
type desc = [
| `Desc
]
#
type desc_content = [
| `PCDATA
]
#
type desc_attr = [
| `Class
| `Style
]
#
type title = [
| `Title
]
#
type title_content = [
| `PCDATA
]
#
type title_attr = desc_attr
#
type symbol = [
| `Symbol
]
#
type symbol_content = [
| `A
| `AltGlyphDef
| `ClipPath
| `Color_Profile
| `Cursor
| `Filter
| `Font
| `Font_Face
| `ForeignObject
| `Image
| `Marker
| `Mask
| `Pattern
| `Script
| `Style
| `Switch
| `Text
| `View
]
#
type symbol_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `PreserveAspectRatio
| `ViewBox
]
#
type use = [
| `Use
]
#
type use_content = [ ]
#
type use_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `Transform
| `X
| `Y
| `Width
| `Height
| `Xlink_href
]
#
type image = [
| `Image
]
#
type image_content = [ ]
#
type image_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `PreserveAspectRatio
| `Transform
| `X
| `Y
| `Width
| `Height
| `Xlink_href
]
#
type switch = [
| `Switch
]
#
type switch_content = [
| `A
| `ForeignObject
| `G
| `Image
| `Svg
| `Switch
| `Text
| `Use
]
#
type switch_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `Transform
]
#
type style = [
| `Style
]
#
type style_content = [
| `PCDATA
]
#
type style_attr = [
| `Title
| `Media
| `Type
]
#
type path = [
| `Path
]
#
type path_content = [ ]
#
type path_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `Transform
| `D
| `PathLength
]
#
type rect = [
| `Rect
]
#
type rect_content = [ ]
#
type rect_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `Transform
| `X
| `Y
| `Width
| `Height
| `Rx
| `Ry
]
#
type circle = [
| `Circle
]
#
type circle_content = [ ]
#
type circle_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `Transform
| `R
| `Cx
| `Cy
]
#
type ellipse = [
| `Ellipse
]
#
type ellipse_content = [ ]
#
type ellipse_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `Transform
| `Rx
| `Ry
| `Cx
| `Cy
]
#
type line = [
| `Line
]
#
type line_content = [ ]
#
type line_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `Transform
| `X1
| `Y1
| `X2
| `Y2
]
#
type polyline = [
| `Polyline
]
#
type polyline_content = [ ]
#
type polyline_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `Transform
| `Points
]
#
type polygon = [
| `Polygon
]
#
type polygon_content = [ ]
#
type polygon_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `Transform
| `Points
]
#
type text = [
| `Text
]
#
type text_content = [
| `PCDATA
| `A
]
#
type text_attr = [
| `Transform
| `LengthAdjust
| `X_list
| `Y_list
| `Dx_list
| `Dy_list
| `Rotate
| `TextLength
]
#
type tspan = [
| `Tspan
]
#
type tspan_content = [
| `PCDATA
| `A
| `AltGlyph
| `Animate
| `AnimateColor
| `Set
| `Tref
| `Tspan
]
#
type tspan_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `X_list
| `Y_list
| `Dx_list
| `Dy_list
| `Rotate
| `TextLength
| `LengthAdjust
]
#
type tref = [
| `Tref
]
#
type tref_content = [
| `Animate
| `AnimateColor
| `Set
]
#
type tref_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `Xlink_href
]
#
type textpath = [
| `TextPath
]
#
type textpath_content = [
| `PCDATA
| `A
| `AltGlyph
| `Animate
| `AnimateColor
| `Set
| `Tref
| `Tspan
]
#
type textpath_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `Xlink_href
| `StartOffset
| `Method
| `Spacing
]
#
type altglyph = [
| `AltGlyph
]
#
type altglyph_content = [
| `PCDATA
]
#
type altglyph_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `X_list
| `Y_list
| `Dx_list
| `Dy_list
| `GlyphRef
| `Format
| `Rotate
| `Xlink_href
]
#
type altglyphdef = [
| `AltGlyphDef
]
#
type altglyphdef_attr = [ ]
#
type altglyphitem = [
| `AltGlyphItem
]
#
type altglyphitem_content = [
| `glyphRef
]
#
type altglyphitem_attr = [ ]
#
type glyphref = [
| `GlyphRef
]
#
type glyphref_attr = [
| `Class
| `Style
| `X
| `Y
| `Dx_single
| `Dy_single
| `GlyphRef
| `Format
| `Xlink_href
]
#
type marker = [
| `Marker
]
#
type marker_content = [
| `A
| `AltGlyphDef
| `ClipPath
| `Color_Profile
| `Cursor
| `Filter
| `Font
| `Font_Face
| `ForeignObject
| `Image
| `Marker
| `Mask
| `Pattern
| `Script
| `Style
| `Switch
| `Text
| `View
]
#
type marker_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `ViewBox
| `PreserveAspectRatio
| `RefX
| `RefY
| `MarkerUnits
| `MarkerWidth
| `MarkerHeight
| `Orient
]
#
type colorprofile = [
| `ColorProfile
]
#
type colorprofile_content = [ ]
#
type colorprofile_attr = [
| `Local
| `Name
| `Rendering_Intent
| `Xlink_href
]
#
type lineargradient = [
| `Lineargradient
]
#
type lineargradient_content = [
| `Animate
| `AnimateTransform
| `Set
| `Stop
]
#
type lineargradient_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `X1
| `Y1
| `X2
| `Y2
| `GradientUnits
| `GradientTransform
| `SpreadMethod
| `Xlink_href
]
#
type radialgradient = [
| `Radialgradient
]
#
type radialgradient_content = [
| `Animate
| `AnimateTransform
| `Set
| `Stop
]
#
type radialgradient_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `Cx
| `Cy
| `R
| `Fx
| `Fy
| `GradientUnits
| `GradientTransform
| `SpreadMethod
| `Xlink_href
]
#
type stop = [
| `Stop
]
#
type stop_content = [
| `Animate
| `Animate_Color
| `Set
]
#
type stop_attr = [
| `Class
| `Style
| `Offset
]
#
type pattern = [
| `Pattern
]
#
type pattern_content = [
| `A
| `AltGlyphDef
| `ClipPath
| `Color_Profile
| `Cursor
| `Filter
| `Font
| `Font_Face
| `ForeignObject
| `Image
| `Marker
| `Mask
| `Pattern
| `Script
| `Style
| `Switch
| `Text
| `View
]
#
type pattern_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `ViewBox
| `PreserveAspectRatio
| `X
| `Y
| `Width
| `Height
| `PatternUnits
| `PatternContentUnits
| `PatternTransform
| `Xlink_href
]
#
type clippath = [
| `ClipPath
]
#
type clippath_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `Transform
| `ClipPathUnits
]
#
type clippath_content = [
| `Text
| `Use
]
#
type mask = [
| `Mask
]
#
type mask_content = [
| `A
| `AltGlyphDef
| `ClipPath
| `Color_Profile
| `Cursor
| `Filter
| `Font
| `Font_Face
| `ForeignObject
| `Image
| `Marker
| `Mask
| `Pattern
| `Script
| `Style
| `Switch
| `Text
| `View
]
#
type mask_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `X
| `Y
| `Width
| `Height
| `MaskUnits
| `MaskContentUnits
]
#
type filter = [
| `Filter
]
#
type filter_content = [
| `Animate
| `Set
]
#
type filter_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `X
| `Y
| `Width
| `Height
| `FilterRes
| `FilterUnits
| `PrimitiveUnits
| `Xlink_href
]
#
type fedistantlight = [
| `FeDistantLight
]
#
type fedistantlight_content = [
| `Animate
| `Set
]
#
type fedistantlight_attr = [
| `Azimuth
| `Elevation
]
#
type fepointlight = [
| `FePointLight
]
#
type fepointlight_content = [
| `Animate
| `Set
]
#
type fepointlight_attr = [
| `X
| `Y
| `Z
]
#
type fespotlight = [
| `FeSpotLight
]
#
type fespotlight_content = [
| `Animate
| `Set
]
#
type fespotlight_attr = [
| `X
| `Y
| `Z
| `PointsAtX
| `PointsAtY
| `PointsAtZ
| `SpecularExponent
| `LimitingConeAngle
]
#
type feblend = [
| `FeBlend
]
#
type feblend_content = [
| `Animate
| `Set
]
#
type feblend_attr = [
| `Class
| `Style
| `In
| `In2
| `Mode
]
#
type fecolormatrix = [
| `FeColorMatrix
]
#
type fecolormatrix_content = [
| `Animate
| `Set
]
#
type fecolormatrix_attr = [
| `Class
| `Style
| `Typefecolor
| `Values
| `In
]
#
type fecomponenttransfer = [
| `FeComponentTransfer
]
#
type fecomponenttransfer_content = [
| `FeFuncA
| `FeFuncB
| `FeFuncG
| `FeFuncR
]
#
type fecomponenttransfer_attr = [
| `Class
| `Style
| `In
]
#
type fefunca = [
| `FeFuncA
]
#
type fefunca_content = [
| `Animate
| `Set
]
#
type fefunca_attr = [ ]
#
type fefuncg = [
| `FeFuncA
]
#
type fefuncg_content = [
| `Animate
| `Set
]
#
type fefuncg_attr = [ ]
#
type fefuncb = [
| `FeFuncA
]
#
type fefuncb_content = [
| `Animate
| `Set
]
#
type fefuncb_attr = [ ]
#
type fefuncr = [
| `FeFuncA
]
#
type fefuncr_content = [
| `Animate
| `Set
]
#
type fefuncr_attr = [ ]
#
type fecomposite = [
| `FeComposite
]
#
type fecomposite_content = [
| `Animate
| `Set
]
#
type fecomposite_attr = [
| `Class
| `Style
| `In
| `In2
| `Operator
| `K1
| `K2
| `K3
| `K4
]
#
type feconvolvematrix = [
| `FeConvolveMatrix
]
#
type feconvolvematrix_content = [
| `Animate
| `Set
]
#
type feconvolvematrix_attr = [
| `Class
| `Style
| `In
| `Order
| `KernelMatrix
| `Divisor
| `Bias
| `TargetX
| `TargetY
| `EdgeMode
| `KernelUnitLength
| `PreserveAlpha
]
#
type fediffuselighting = [
| `FeDiffuseLighting
]
#
type fediffuselighting_content = [ ]
#
type fediffuselighting_attr = [
| `Class
| `Style
| `In
| `SurfaceScale
| `DiffuseConstant
| `KernelUnitLength
]
#
type fedisplacementmap = [
| `FeDisplacementMap
]
#
type fedisplacementmap_content = [
| `Animate
| `Set
]
#
type fedisplacementmap_attr = [
| `Class
| `Style
| `In
| `In2
| `Scale
| `XChannelSelector
| `YChannelSelector
]
#
type feflood = [
| `FeFlood
]
#
type feflood_content = [
| `Animate
| `AnimateColor
| `Set
]
#
type feflood_attr = [
| `Class
| `Style
]
#
type fegaussianblur = [
| `FeGaussianBlur
]
#
type fegaussianblur_content = [
| `Animate
| `AnimateColor
| `Set
]
#
type fegaussianblur_attr = [
| `Class
| `Style
| `In
| `StdDeviation
]
#
type feimage = [
| `FeImage
]
#
type feimage_content = [
| `Animate
| `AnimateColor
| `Set
]
#
type feimage_attr = [
| `Xlink_href
| `Class
| `Style
| `ExternalResourcesRequired
| `PreserveAspectRadio
]
#
type femerge = [
| `FeMerge
]
#
type femerge_content = [
| `FeMergeNode
]
#
type femerge_attr = [
| `Class
| `Style
]
#
type femorphology = [
| `FeMorphology
]
#
type femorphology_content = [
| `Animate
| `Set
]
#
type femorphology_attr = [
| `Operator_morphology
| `Class
| `Style
| `In
| `Radius
]
#
type feoffset = [
| `FeOffset
]
#
type feoffset_content = [
| `Animate
| `Set
]
#
type feoffset_attr = [
| `Class
| `Style
| `Dx
| `Dy
| `In
]
#
type fespecularlighting = [
| `FeSpecularLighting
]
#
type fespecularlighting_content = [ ]
#
type fespecularlighting_attr = [
| `Class
| `Style
| `In
| `SurfaceScale
| `SpecularConstant
| `SpecularExponent
| `KernelUnitLength
]
#
type fetile = [
| `FeTile
]
#
type fetile_content = [
| `Animate
| `Set
]
#
type fetile_attr = [
| `Class
| `Style
| `In
]
#
type feturbulence = [
| `FeTurbulence
]
#
type feturbulence_content = [
| `Animate
| `Set
]
#
type feturbulence_attr = [
| `Class
| `Style
| `BaseFrequency
| `NumOctaves
| `Seed
| `StitchTiles
| `Type_stitch
]
#
type cursor = [
| `Cursor
]
#
type cursor_content = descriptive_element
#
type cursor_attr = [
| `X
| `Y
| `ExternalResourcesRequired
| `Xlink_href
]
#
type a = [
| `A
]
#
type a_content = [
| `A
| `AltGlyphDef
| `ClipPath
| `Color_Profile
| `Cursor
| `Filter
| `Font
| `Font_Face
| `ForeignObject
| `Image
| `Marker
| `Mask
| `Pattern
| `Script
| `Style
| `Switch
| `Text
| `View
]
#
type a_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `Transform
| `Xlink_href
| `Xlink_show
| `Xlink_actuate
| `Target
]
#
type view = [
| `View
]
#
type view_content = descriptive_element
#
type view_attr = [
| `ExternalResourcesRequired
| `ViewBox
| `PreserveAspectRatio
| `ZoomAndPan
| `ViewTarget
]
#
type script = [
| `Script
]
#
type script_content = [
| `PCDATA
]
#
type script_attr = [
| `ExternalResourcesRequired
| `Type
| `Xlink_href
]
#
type animation = [
| `Animation
]
#
type animation_content = descriptive_element
#
type set = [
| `Set
]
#
type set_content = descriptive_element
#
type animatemotion = [
| `AnimateMotion
]
#
type animatemotion_content = [
| `Mpath
]
#
type animatemotion_attr = [
| `ExternalResourcesRequired
| `Path
| `KeyPoints
| `Rotate
| `Origin
]
#
type mpath = [
| `Mpath
]
#
type mpath_content = descriptive_element
#
type mpath_attr = [
| `ExternalResourcesRequired
| `Xlink_href
]
#
type animatecolor = [
| `AnimateColor
]
#
type animatecolor_content = descriptive_element
#
type animatetransform = [
| `AnimateTransform
]
#
type animatetransform_content = descriptive_element
#
type font = [
| `Font
]
#
type font_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `HorizOriginX
| `HorizOriginY
| `HorizAdvX
| `VertOriginX
| `VertOriginY
| `VertAdvY
]
#
type font_content = [
| `Font_Face
| `Glyph
| `Hkern
| `MissingGlyph
| `Vkern
]
#
type glyph = [
| `Glyph
]
#
type glyph_content = [
| `A
| `AltGlyphDef
| `ClipPath
| `Color_Profile
| `Cursor
| `Filter
| `Font
| `Font_Face
| `ForeignObject
| `Image
| `Marker
| `Mask
| `Pattern
| `Script
| `Style
| `Switch
| `Text
| `View
]
#
type glyph_attr = [
| `Class
| `Style
| `D
| `HorizAdvX
| `VertOriginX
| `VertOriginY
| `VertAdvY
| `Unicode
| `GlyphName
| `Orientation
| `ArabicForm
| `Lang
]
#
type missingglyph = [
| `MissingGlyph
]
#
type missingglyph_content = [
| `A
| `AltGlyphDef
| `ClipPath
| `Color_Profile
| `Cursor
| `Filter
| `Font
| `Font_Face
| `ForeignObject
| `Image
| `Marker
| `Mask
| `Pattern
| `Script
| `Style
| `Switch
| `Text
| `View
]
#
type missingglyph_attr = [
| `Class
| `Style
| `D
| `HorizAdvX
| `VertOriginX
| `VertOriginY
| `VertAdvY
]
#
type hkern = [
| `Hkern
]
#
type hkern_attr = [
| `U1
| `G1
| `U2
| `G2
| `K
]
#
type vkern = [
| `Vkern
]
#
type vkern_attr = [
| `U1
| `G1
| `U2
| `G2
| `K
]
#
type fontface = [
| `Font_Face
]
#
type fontface_content = [
| `Font_Face_Src
]
#
type fontface_attr = [
| `Font_Family
| `Font_Style
| `Font_Variant
| `Font_Weight
| `Font_Stretch
| `Font_Size
| `UnicodeRange
| `UnitsPerEm
| `Panose1
| `Stemv
| `Stemh
| `Slope
| `CapHeight
| `XHeight
| `AccentHeight
| `Ascent
| `Descent
| `Widths
| `Bbox
| `Ideographic
| `Alphabetic
| `Mathematical
| `Hanging
| `VIdeographic
| `VAlphabetic
| `VMathematical
| `VHanging
| `UnderlinePosition
| `UnderlineThickness
| `StrikethroughPosition
| `StrikethroughThickness
| `OverlinePosition
| `OverlineThickness
]
#
type fontfacesrc = [
| `Font_Face_Src
]
#
type fontfacesrc_content = [
| `Font_Face_Name
| `Font_Face_Uri
]
#
type fontfacesrc_attr = core_attr
#
type fontfaceuri = [
| `Font_Face_Uri
]
#
type fontfaceuri_content = [
| `Font_Face_Format
]
#
type fontfaceuri_attr = [
| `Xlink_href
]
#
type fontfaceformat = [
| `Font_Face_Format
]
#
type fontfaceformat_attr = [
| `String
]
#
type fontfacename = [
| `Font_Face_Name
]
#
type fontfacename_attr = [
| `Name
]
#
type metadata = [
| `Metadata
]
#
type metadata_attr = [ ]
#
type foreignobject = [
| `ForeignObject
]
#
type foreignobject_attr = [
| `Class
| `Style
| `ExternalResourcesRequired
| `Transform
| `X
| `Y
| `Width
| `Height
]
end