20 Fonts
Contents
20.1 Introduction
Reliable delivery of fonts is a requirement for SVG.
Designers need to create SVG content with arbitrary fonts and
know that the same graphical result will appear when the
content is viewed by all end users, even when end users do not
have the necessary fonts installed on their computers. This
parallels the print world, where the designer uses a given font
when authoring a drawing for print, and the graphical content
appears exactly the same in the printed version as it appeared
on the designer's authoring system.
SVG utilizes the
WebFonts
facility defined in CSS2
([CSS2], section 15.1) as a key
mechanism for reliable delivery of font data to end users. In a
common scenario, SVG authoring applications generate
compressed, subsetted WebFonts
for all text elements used by a given SVG document fragment.
Typically, the WebFonts are saved in a location relative to the referencing
document.
One disadvantage to the WebFont
facility to date is that specifications such as CSS2 do not require
support of particular font formats. The result is that
different implementations support different Web font formats,
thereby making it difficult for Web site creators to post a
single Web site using WebFonts that work across all user
agents.
To provide a common font format for SVG that is guaranteed
to be supported by all conforming SVG
viewers, SVG provides a facility to define fonts in SVG.
This facility is called SVG
fonts.
SVG fonts can improve the semantic richness of graphics that
represent text. For example, many company logos consist of the
company name drawn artistically. In some cases, accessibility may be enhanced by
expressing the logo as a series of glyphs in an SVG font and
then rendering the logo as a Ä�ā‚¬ļæ½textÄ�ā‚¬ā„¢ element which references
this font.
20.2 Overview of SVG fonts
An SVG font is a font defined
using SVG's Ä�ā‚¬ļæ½fontÄ�ā‚¬ā„¢ element.
The purpose of SVG fonts is to allow for delivery of glyph
outlines in display-only environments. SVG fonts that accompany
Web pages must be supported only in browsing and viewing
situations. Graphics editing applications or file translation
tools must not attempt to convert SVG fonts into system fonts.
The intent is that SVG files be interchangeable between two
content creators, but not the SVG fonts that might accompany
these SVG files. Instead, each content creator will need to
license the given font before being able to successfully edit
the SVG file. The Ä�ā‚¬ļæ½font-face-nameÄ�ā‚¬ā„¢ element
indicates the name of licensed font to use for editing.
SVG fonts contain unhinted font outlines. Because of this,
on many implementations there will be limitations regarding the
quality and legibility of text in small font sizes. For
increased quality and legibility in small font sizes, content
creators may want to use an alternate font technology, such as
fonts that ship with operating systems or an alternate WebFont
format.
Because SVG fonts are expressed using SVG elements and
attributes, in some cases the SVG font will take up more space
than if the font were expressed in a different WebFont
format which was especially designed for compact expression of
font data. For the fastest delivery of Web pages, content
creators may want to use an alternate font technology.
A key value of SVG fonts is guaranteed availability in SVG
user agents. In some situations, it might be appropriate for an
SVG font to be the first choice for rendering some text. In
other situations, the SVG font might be an alternate, back-up
font in case the first choice font (perhaps a hinted system
font) is not available to a given user.
The characteristics and attributes of SVG fonts correspond
closely to the font characteristics and parameters described in
the Fonts chapter
of the Cascading Style Sheets (CSS) level 2
specification ([CSS2], chapter 15). In this model,
various font metrics, such as advance values and baseline
locations, and the glyph outlines themselves, are expressed in
units that are relative to an abstract square whose height is
the intended distance between lines of type in the same type
size. This square is called the em
square and it is the design grid on which the glyph
outlines are defined. The value of the Ä�ā‚¬ļæ½units-per-emÄ�ā‚¬ā„¢
attribute on the Ä�ā‚¬ļæ½font-faceÄ�ā‚¬ā„¢ element specifies how
many units the em square is divided into. Common values for
other font types are, for example, 250 (Intellifont), 1000
(Type 1) and 2048 (TrueType, TrueType GX and Open-Type). Unlike
standard graphics in SVG, where the initial coordinate system
has the y-axis pointing downward (see The initial
coordinate system), the design grid for SVG fonts, along
with the initial coordinate system for the glyphs, has the
y-axis pointing upward for consistency with accepted industry
practice for many popular font formats.
SVG fonts and their associated glyphs do not specify
bounding box information. Because the glyph outlines are
expressed as SVG graphics elements, the implementation has the
option to render the glyphs either using standard graphics
calls or by using special-purpose font rendering technology, in
which case any necessary maximum bounding box and overhang
calculations can be performed from analysis of the graphics
elements contained within the glyph outlines.
An SVG font can be either embedded within the same document
that uses the font or saved as part of an external
resource.
Here is an example of how you might embed an SVG font inside
of an SVG document.
<?xml version="1.0" standalone="yes"?>
<svg width="400px" height="300px" version="1.1"
xmlns = 'http://www.w3.org/2000/svg'>
<defs>
<font id="Font1" horiz-adv-x="1000">
<font-face font-family="Super Sans" font-weight="bold" font-style="normal"
units-per-em="1000" cap-height="600" x-height="400"
ascent="700" descent="300"
alphabetic="0" mathematical="350" ideographic="400" hanging="500">
<font-face-src>
<font-face-name name="Super Sans Bold"/>
</font-face-src>
</font-face>
<missing-glyph><path d="M0,0h200v200h-200z"/></missing-glyph>
<glyph unicode="!" horiz-adv-x="300"><!-- Outline of exclam. pt. glyph --></glyph>
<glyph unicode="@"><!-- Outline of @ glyph --></glyph>
<!-- more glyphs -->
</font>
</defs>
<text x="100" y="100"
style="font-family: 'Super Sans', Helvetica, sans-serif;
font-weight: bold; font-style: normal">Text
using embedded font</text>
</svg>
Here is an example of how you might use the
CSS @font-face facility
([CSS2], section 15.3.1) to reference an SVG font which is saved
in an external file. First referenced SVG font file:
<?xml version="1.0" standalone="yes"?>
<svg width="100%" height="100%" version="1.1"
xmlns = 'http://www.w3.org/2000/svg'>
<defs>
<font id="Font2" horiz-adv-x="1000">
<font-face font-family="Super Sans" font-weight="normal" font-style="italic"
units-per-em="1000" cap-height="600" x-height="400"
ascent="700" descent="300"
alphabetic="0" mathematical="350" ideographic="400" hanging="500">
<font-face-src>
<font-face-name name="Super Sans Italic"/>
</font-face-src>
</font-face>
<missing-glyph><path d="M0,0h200v200h-200z"/></missing-glyph>
<glyph unicode="!" horiz-adv-x="300"><!-- Outline of exclam. pt. glyph --></glyph>
<glyph unicode="@"><!-- Outline of @ glyph --></glyph>
<!-- more glyphs -->
</font>
</defs>
</svg>
The SVG file which uses/references the above SVG font
<?xml version="1.0" standalone="yes"?>
<svg width="400px" height="300px" version="1.1"
xmlns = 'http://www.w3.org/2000/svg'>
<defs>
<style type="text/css">
<![CDATA[
@font-face {
font-family: 'Super Sans';
font-weight: normal;
font-style: italic;
src: url("myfont.svg#Font2") format("svg")
}
]]>
</style>
</defs>
<text x="100" y="100"
style="font-family: 'Super Sans'; font-weight:normal;
font-style: italic">Text using referenced font</text>
</svg>
20.3 The Ä�ā‚¬ļæ½fontÄ�ā‚¬ā„¢ element
The Ä�ā‚¬ļæ½fontÄ�ā‚¬ā„¢ element defines an SVG font.
Ä�ā‚¬ļæ½fontÄ�ā‚¬ā„¢
- Categories:
- None
- Content model:
- Any number of the following elements, in any order:
- Attributes:
- core attributes Ä�ā‚¬ā€¯ Ä�ā‚¬ļæ½idÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½xml:baseÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½xml:langÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½xml:spaceÄ�ā‚¬ā„¢
- presentation attributes Ä�ā‚¬ā€¯ Ä�ā‚¬ļæ½alignment-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Ä�ā‚¬ā„¢
- Ä�ā‚¬ļæ½classÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½styleÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½externalResourcesRequiredÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½horiz-origin-xÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½horiz-origin-yÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½horiz-adv-xÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½vert-origin-xÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½vert-origin-yÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½vert-adv-yÄ�ā‚¬ā„¢
- DOM Interfaces:
Attribute definitions:
- horiz-origin-x = "<number>"
- The X-coordinate in the font coordinate system of the
origin of a glyph to be used when drawing horizontally
oriented text. (Note that the origin applies to all glyphs
in the font.)
If the attribute is not specified, the effect is as if a
value of '0' were specified.
Animatable:
no. - horiz-origin-y = "<number>"
- The Y-coordinate in the font coordinate system of the
origin of a glyph to be used when drawing horizontally
oriented text. (Note that the origin applies to all glyphs
in the font.)
If the attribute is not specified, the effect is as if a
value of '0' were specified.
Animatable:
no. - horiz-adv-x = "<number>"
- The default horizontal advance after rendering a glyph
in horizontal orientation. Glyph widths are required to be
non-negative, even if the glyph is typically rendered
right-to-left, as in Hebrew and Arabic scripts.
Animatable:
no. - vert-origin-x = "<number>"
- The default X-coordinate in the font coordinate system
of the origin of a glyph to be used when drawing vertically
oriented text.
If the attribute is not specified, the effect is as if the
attribute were set to half of the effective value of
attribute Ä�ā‚¬ļæ½horiz-adv-xÄ�ā‚¬ā„¢.
Animatable:
no. - vert-origin-y = "<number>"
- The default Y-coordinate in the font coordinate system
of the origin of a glyph to be used when drawing vertically
oriented text.
If the attribute is not specified, the effect is as if the
attribute were set to the position specified by the font's
Ä�ā‚¬ļæ½ascentÄ�ā‚¬ā„¢ attribute.
Animatable:
no. - vert-adv-y = "<number>"
- The default vertical advance after rendering a glyph in
vertical orientation.
If the attribute is not specified, the effect is as if a
value equivalent of one em were specified (see
Ä�ā‚¬ļæ½units-per-emÄ�ā‚¬ā„¢).
Animatable:
no.
Each Ä�ā‚¬ļæ½fontÄ�ā‚¬ā„¢ element must have a Ä�ā‚¬ļæ½font-faceÄ�ā‚¬ā„¢
child element which describes various characteristics of the font.
20.4 The Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢ element
The Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢ element
defines the graphics for a given glyph. The coordinate system
for the glyph is defined by the various attributes in the
Ä�ā‚¬ļæ½fontÄ�ā‚¬ā„¢ element.
The graphics that make up the Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢ can be a single path data specification within
the Ä�ā‚¬ļæ½dÄ�ā‚¬ā„¢ attribute, arbitrary SVG as
content within the Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢, or both.
These two alternatives are processed differently (see
below).
Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢
- Categories:
- Container element
- Content model:
- Any number of the following elements, in any order:
- animation elements Ä�ā‚¬ā€¯ Ä�ā‚¬ļæ½animateÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½animateColorÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½animateMotionÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½animateTransformÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½setÄ�ā‚¬ā„¢
- descriptive elements Ä�ā‚¬ā€¯ Ä�ā‚¬ļæ½descÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½metadataÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½titleÄ�ā‚¬ā„¢
- shape elements Ä�ā‚¬ā€¯ Ä�ā‚¬ļæ½circleÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½ellipseÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½lineÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½pathÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½polygonÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½polylineÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½rectÄ�ā‚¬ā„¢
- structural elements Ä�ā‚¬ā€¯ Ä�ā‚¬ļæ½defsÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½gÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½svgÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½symbolÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½useÄ�ā‚¬ā„¢
- gradient elements Ä�ā‚¬ā€¯ Ä�ā‚¬ļæ½linearGradientÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½radialGradientÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½aÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½altGlyphDefÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½clipPathÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½color-profileÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½cursorÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½filterÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½fontÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½font-faceÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½foreignObjectÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½imageÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½markerÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½maskÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½patternÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½scriptÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½styleÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½switchÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½textÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½viewÄ�ā‚¬ā„¢
- Attributes:
- core attributes Ä�ā‚¬ā€¯ Ä�ā‚¬ļæ½idÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½xml:baseÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½xml:langÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½xml:spaceÄ�ā‚¬ā„¢
- presentation attributes Ä�ā‚¬ā€¯ Ä�ā‚¬ļæ½alignment-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Ä�ā‚¬ā„¢
- Ä�ā‚¬ļæ½classÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½styleÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½dÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½horiz-adv-xÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½vert-origin-xÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½vert-origin-yÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½vert-adv-yÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½unicodeÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½glyph-nameÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½orientationÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½arabic-formÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½langÄ�ā‚¬ā„¢
- DOM Interfaces:
Attribute definitions:
- unicode = "<string>"
- One or more Unicode characters indicating the sequence
of Unicode characters which corresponds to this glyph. If a
character is provided, then this glyph corresponds to the
given Unicode character. If multiple characters are
provided, then this glyph corresponds to the given sequence
of Unicode characters. One use of a sequence of characters
is ligatures. For example, if unicode="ffl", then the given
glyph will be used to render the sequence of characters
"f", "f", and "l".
It is often useful to refer to characters using XML
character references expressed in hexadecimal notation or
decimal notation. For example, unicode="ffl" could be expressed
as XML character references in hexadecimal notation as
unicode="ffl"
or in decimal notation as unicode="ffl".
The Ä�ā‚¬ļæ½unicodeÄ�ā‚¬ā„¢ attribute
contributes to the process for deciding which glyph(s) are
used to represent which character(s). See glyph selection
rules. If the Ä�ā‚¬ļæ½unicodeÄ�ā‚¬ā„¢ attribute is not
provided for a given Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢, then the only way
to use this glyph is via an Ä�ā‚¬ļæ½altGlyphÄ�ā‚¬ā„¢ reference.
Animatable:
no. - glyph-name = "<name> [, <name> ]*
"
- A name for the glyph. It is recommended that glyph
names be unique within a font. The glyph names can be used
in situations where Unicode character numbers do not
provide sufficient information to access the correct glyph,
such as when there are multiple glyphs per Unicode
character. The glyph names can be referenced in kerning
definitions.
Animatable:
no. - d = "path
data"
- The definition of the outline of a glyph, using the
same syntax as for the Ä�ā‚¬ļæ½dÄ�ā‚¬ā„¢ attribute on a Ä�ā‚¬ļæ½pathÄ�ā‚¬ā„¢
element. See Path data.
See below for a discussion of this attribute.
Animatable:
no. - orientation = "h | v"
- Indicates that the given glyph is only to be used for a
particular inline-progression-direction (i.e., horizontal
or vertical). If the attribute is not specified, then the
glyph can be used in all cases (i.e., both horizontal and
vertical inline-progression-direction).
Animatable:
no. - arabic-form = "initial | medial | terminal |
isolated"
- For Arabic glyphs, indicates which of the four possible
forms this glyph represents.
Animatable:
no. - lang = "%LanguageCodes;"
- The attribute value is a comma-separated list of
language names as defined in
BCP 47
[BCP47].
The glyph can be used if the Ä�ā‚¬ļæ½xml:langÄ�ā‚¬ā„¢ attribute exactly
matches one of the languages given in the value of this
parameter, or if the Ä�ā‚¬ļæ½xml:langÄ�ā‚¬ā„¢ attribute exactly
equals a prefix of one of the languages given in the value
of this parameter such that the first tag character
following the prefix is "-".
Animatable:
no. - horiz-adv-x = "<number>"
- The horizontal advance after rendering the glyph in
horizontal orientation. If the attribute is not specified,
the effect is as if the attribute were set to the value of
the font's Ä�ā‚¬ļæ½horiz-adv-xÄ�ā‚¬ā„¢ attribute.
Glyph widths are required to be non-negative, even if the
glyph is typically rendered right-to-left, as in Hebrew and
Arabic scripts.
Animatable:
no. - vert-origin-x = "<number>"
- The X-coordinate in the font coordinate system of the
origin of the glyph to be used when drawing vertically
oriented text.
If the attribute is not specified, the effect is as if the
attribute were set to the value of the font's Ä�ā‚¬ļæ½vert-origin-xÄ�ā‚¬ā„¢
attribute.
Animatable:
no. - vert-origin-y = "<number>"
- The Y-coordinate in the font coordinate system of the
origin of a glyph to be used when drawing vertically
oriented text.
If the attribute is not specified, the effect is as if the
attribute were set to the value of the font's Ä�ā‚¬ļæ½vert-origin-yÄ�ā‚¬ā„¢
attribute.
Animatable:
no. - vert-adv-y = "<number>"
- The vertical advance after rendering a glyph in
vertical orientation.
If the attribute is not specified, the effect is as if the
attribute were set to the value of the font's Ä�ā‚¬ļæ½vert-adv-yÄ�ā‚¬ā„¢ attribute.
Animatable:
no.
The graphics for the Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢ can be specified using
either the Ä�ā‚¬ļæ½dÄ�ā‚¬ā„¢ attribute or arbitrary SVG as
content within the Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢.
If the Ä�ā‚¬ļæ½dÄ�ā‚¬ā„¢ attribute is specified, then the
path data within this attribute is processed as follows:
- Any relative coordinates within the path data
specification are converted into equivalent absolute
coordinates
- Each of these absolute coordinates is transformed from
the font coordinate system into the Ä�ā‚¬ļæ½textÄ�ā‚¬ā„¢ element's current
coordinate system such that the origin of the font coordinate
system is properly positioned and rotated to align with the
current text
position and orientation for the glyph, and scaled so
that the correct Ä�ā‚¬ļæ½font-sizeÄ�ā‚¬ā„¢ is achieved.
- The resulting, transformed path specification is rendered
as if it were a Ä�ā‚¬ļæ½pathÄ�ā‚¬ā„¢ element, using the
styling properties that apply to the characters which
correspond to the given glyph, and ignoring any styling
properties specified on the Ä�ā‚¬ļæ½fontÄ�ā‚¬ā„¢ element or the
Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢ element.
If the Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢ has child
elements, then those child elements are rendered in a manner
similar to how the Ä�ā‚¬ļæ½useÄ�ā‚¬ā„¢ element renders a
referenced symbol. The rendering effect is as if the contents
of the referenced Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢
element were deeply cloned into a separate non-exposed DOM
tree. Because the cloned DOM tree is non-exposed, the SVG DOM
does not show the cloned instance.
For user agents that support Styling with CSS, the
conceptual deep cloning of the referenced Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢ element into a non-exposed
DOM tree also copies any property values resulting from
the CSS cascade
([CSS2], chapter 6)
on the referenced Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢ and
its contents, and also applies any property values on the
Ä�ā‚¬ļæ½fontÄ�ā‚¬ā„¢ element. CSS2 selectors
can be applied to the original (i.e., referenced) elements
because they are part of the formal document structure. CSS2
selectors cannot be applied to the (conceptually) cloned DOM
tree because its contents are not part of the formal document
structure.
Property inheritance, however, works as if the referenced
Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢ had been textually
included as a deeply cloned child within the document tree. The
referenced Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢ inherits
properties from the element that contains the characters that
correspond to the Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢.
The Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢ does not inherit
properties from the Ä�ā‚¬ļæ½fontÄ�ā‚¬ā„¢ element's original
parents.
In the generated content, for each instance of a given Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢, a
Ä�ā‚¬ļæ½gÄ�ā‚¬ā„¢ is created which carries
with it all property values resulting from the CSS cascade
on the Ä�ā‚¬ļæ½fontÄ�ā‚¬ā„¢ element for the
referenced Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢. Within
this Ä�ā‚¬ļæ½gÄ�ā‚¬ā„¢ is another Ä�ā‚¬ļæ½gÄ�ā‚¬ā„¢ which carries with it all
property values resulting from the CSS cascade
on the Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢ element. The
original contents of the Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢ element are deep-cloned
within the inner Ä�ā‚¬ļæ½gÄ�ā‚¬ā„¢ element.
If the Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢ has both a
Ä�ā‚¬ļæ½dÄ�ā‚¬ā„¢ attribute and child elements,
the Ä�ā‚¬ļæ½dÄ�ā‚¬ā„¢ attribute is rendered first, and
then the child elements.
In general, the Ä�ā‚¬ļæ½dÄ�ā‚¬ā„¢ attribute renders in the same
manner as system fonts. For example, a dashed pattern will
usually look the same if applied to a system font or to an SVG
font which defines its glyphs using the Ä�ā‚¬ļæ½dÄ�ā‚¬ā„¢ attribute. Many implementations
will be able to render glyphs defined with the Ä�ā‚¬ļæ½dÄ�ā‚¬ā„¢ attribute quickly and will be
able to use a font cache for further performance gains.
Defining a glyph by including child elements within the
Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢ gives greater
flexibility but more complexity. Different fill and stroke
techniques can be used on different parts of the glyphs. For
example, the base of an "i" could be red, and the dot could be
blue. This approach has an inherent complexity with units. Any
properties specified on a text elements which represents a
length, such as the Ä�ā‚¬ļæ½stroke-widthÄ�ā‚¬ā„¢ property, might
produce surprising results since the length value will be
processed in the coordinate system of the glyph.
20.5 The Ä�ā‚¬ļæ½missing-glyphÄ�ā‚¬ā„¢ element
The Ä�ā‚¬ļæ½missing-glyphÄ�ā‚¬ā„¢ element defines the graphics to use if
there is an attempt to draw a glyph from a given font and the given
glyph has not been defined. The attributes on the Ä�ā‚¬ļæ½missing-glyphÄ�ā‚¬ā„¢
element have the same meaning as the corresponding attributes on the
Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢ element.
Ä�ā‚¬ļæ½missing-glyphÄ�ā‚¬ā„¢
- Categories:
- Container element
- Content model:
- Any number of the following elements, in any order:
- animation elements Ä�ā‚¬ā€¯ Ä�ā‚¬ļæ½animateÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½animateColorÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½animateMotionÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½animateTransformÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½setÄ�ā‚¬ā„¢
- descriptive elements Ä�ā‚¬ā€¯ Ä�ā‚¬ļæ½descÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½metadataÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½titleÄ�ā‚¬ā„¢
- shape elements Ä�ā‚¬ā€¯ Ä�ā‚¬ļæ½circleÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½ellipseÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½lineÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½pathÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½polygonÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½polylineÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½rectÄ�ā‚¬ā„¢
- structural elements Ä�ā‚¬ā€¯ Ä�ā‚¬ļæ½defsÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½gÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½svgÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½symbolÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½useÄ�ā‚¬ā„¢
- gradient elements Ä�ā‚¬ā€¯ Ä�ā‚¬ļæ½linearGradientÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½radialGradientÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½aÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½altGlyphDefÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½clipPathÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½color-profileÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½cursorÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½filterÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½fontÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½font-faceÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½foreignObjectÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½imageÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½markerÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½maskÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½patternÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½scriptÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½styleÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½switchÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½textÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½viewÄ�ā‚¬ā„¢
- Attributes:
- core attributes Ä�ā‚¬ā€¯ Ä�ā‚¬ļæ½idÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½xml:baseÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½xml:langÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½xml:spaceÄ�ā‚¬ā„¢
- presentation attributes Ä�ā‚¬ā€¯ Ä�ā‚¬ļæ½alignment-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Ä�ā‚¬ā„¢
- Ä�ā‚¬ļæ½classÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½styleÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½dÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½horiz-adv-xÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½vert-origin-xÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½vert-origin-yÄ�ā‚¬ā„¢
- Ä�ā‚¬ļæ½vert-adv-yÄ�ā‚¬ā„¢
- DOM Interfaces:
20.6 Glyph selection rules
When determining the glyph(s) to draw a given character sequence, the
Ä�ā‚¬ļæ½fontÄ�ā‚¬ā„¢ element is searched from its first Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢
element to its last in logical order to see if the upcoming sequence
of Unicode characters to be rendered matches the sequence of Unicode
characters specified in the Ä�ā‚¬ļæ½unicodeÄ�ā‚¬ā„¢ attribute for the
given Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢ element. The first successful match is used. Thus,
the "ffl" ligature needs to be defined in the font before the "f" glyph;
otherwise, the "ffl" will never be selected.
Note that any occurrences of Ä�ā‚¬ļæ½altGlyphÄ�ā‚¬ā„¢ take precedence over
the above glyph selection rules within an SVG font.
20.7 The Ä�ā‚¬ļæ½hkernÄ�ā‚¬ā„¢ and Ä�ā‚¬ļæ½vkernÄ�ā‚¬ā„¢ elements
The Ä�ā‚¬ļæ½hkernÄ�ā‚¬ā„¢ and Ä�ā‚¬ļæ½vkernÄ�ā‚¬ā„¢ elements define kerning
pairs for horizontally-oriented and vertically-oriented pairs
of glyphs, respectively.
Kern pairs identify pairs of glyphs within a single font
whose inter-glyph spacing is adjusted when the pair of glyphs
are rendered next to each other. In addition to the requirement
that the pair of glyphs are from the same font, SVG font
kerning happens only when the two glyphs correspond to
characters which have the same values for properties Ä�ā‚¬ļæ½font-familyÄ�ā‚¬ā„¢,
Ä�ā‚¬ļæ½font-sizeÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½font-styleÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½font-weightÄ�ā‚¬ā„¢,
Ä�ā‚¬ļæ½font-variantÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½font-stretchÄ�ā‚¬ā„¢, Ä�ā‚¬ļæ½font-size-adjustÄ�ā‚¬ā„¢
and Ä�ā‚¬ļæ½fontÄ�ā‚¬ā„¢.
An example of a kerning pair are the letters "Va", where the
typographic result might look better if the letters "V" and the
"a" were rendered slightly closer together.
Right-to-left and bidirectional text in SVG is laid out in a
two-step process, which is described in Relationship
with bidirectionality. If SVG fonts are used, before
kerning is applied, characters are re-ordered into
left-to-right (or top-to-bottom, for vertical text) visual
rendering order. Kerning from SVG fonts is then applied on
pairs of glyphs which are rendered contiguously. The first
glyph in the kerning pair is the left (or top) glyph in visual
rendering order. The second glyph in the kerning pair is the
right (or bottom) glyph in the pair.
For convenience to font designers and to minimize file
sizes, a single Ä�ā‚¬ļæ½hkernÄ�ā‚¬ā„¢ and
Ä�ā‚¬ļæ½vkernÄ�ā‚¬ā„¢ can define a single
kerning adjustment value between one set of glyphs (e.g., a
range of Unicode characters) and another set of glyphs (e.g.,
another range of Unicode characters).
The Ä�ā‚¬ļæ½hkernÄ�ā‚¬ā„¢ element
defines kerning pairs and adjustment values in the horizontal
advance value when drawing pairs of glyphs which the two glyphs
are contiguous and are both rendered horizontally (i.e.,
side-by-side). The spacing between characters is reduced by the
kerning adjustment. (Negative kerning adjustments increase the
spacing between characters.)
The Ä�ā‚¬ļæ½vkernÄ�ā‚¬ā„¢ element
defines kerning pairs and adjustment values in the vertical
advance value when drawing pairs of glyphs together when
stacked vertically. The spacing between characters is reduced
by the kerning adjustment.
Ä�ā‚¬ļæ½hkernÄ�ā‚¬ā„¢
- Categories:
- None
- Content model:
- Empty.
- Attributes:
- DOM Interfaces:
Ä�ā‚¬ļæ½vkernÄ�ā‚¬ā„¢
- Categories:
- None
- Content model:
- Empty.
- Attributes:
- DOM Interfaces:
Attribute definitions:
- u1 = "[<character> | <urange> ] [,
[<character> | <urange>] ]* "
- A sequence (comma-separated) of Unicode characters
(refer to the description of the Ä�ā‚¬ļæ½unicodeÄ�ā‚¬ā„¢
attribute to the Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢ element for a
description of how to express individual Unicode
characters) and/or ranges of Unicode characters (see
description of ranges of Unicode characters in CSS2;
[CSS2], section 15.3.3) which
identify a set of possible first glyphs in the kerning
pair. If a given Unicode character within the set has
multiple corresponding Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢ elements (i.e.,
there are multiple Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢ elements with the
same Ä�ā‚¬ļæ½unicodeÄ�ā‚¬ā„¢ attribute value, but
different Ä�ā‚¬ļæ½glyph-nameÄ�ā‚¬ā„¢ values), then all
such glyphs are included in the set. Comma is the separator
character; thus, to kern a comma, specify the comma as part
of a range of Unicode characters or as a glyph name using
the Ä�ā‚¬ļæ½g1Ä�ā‚¬ā„¢ attribute. The total set of
possible first glyphs in the kerning pair is the union of
glyphs specified by the Ä�ā‚¬ļæ½u1Ä�ā‚¬ā„¢ and Ä�ā‚¬ļæ½g1Ä�ā‚¬ā„¢ attributes.
Animatable:
no. - g1 = "<name> [, <name> ]*
"
- A sequence (comma-separated) of glyph names (i.e.,
values that match Ä�ā‚¬ļæ½glyph-nameÄ�ā‚¬ā„¢ attributes
on Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢ elements) which
identify a set of possible first glyphs in the kerning
pair. All glyphs with the given glyph name are included in
the set. The total set of possible first glyphs in the
kerning pair is the union of glyphs specified by the
Ä�ā‚¬ļæ½u1Ä�ā‚¬ā„¢ and Ä�ā‚¬ļæ½g1Ä�ā‚¬ā„¢ attributes.
Animatable:
no. - u2 = "[<character> | <urange>] [,
[<character> | <urange>] ]* "
- Same as the Ä�ā‚¬ļæ½u1Ä�ā‚¬ā„¢ attribute, except that Ä�ā‚¬ļæ½u2Ä�ā‚¬ā„¢
specifies possible second glyphs in the kerning pair.
Animatable:
no. - g2 = "<name> [, <name> ]*
"
- Same as the Ä�ā‚¬ļæ½g1Ä�ā‚¬ā„¢ attribute, except that Ä�ā‚¬ļæ½g2Ä�ā‚¬ā„¢
specifies possible second
glyphs in the kerning pair.
Animatable:
no. - k = "<number>"
- The amount to decrease the spacing between the two
glyphs in the kerning pair. The value is in the font
coordinate system. This attribute is required.
Animatable:
no.
At least one each of Ä�ā‚¬ļæ½u1Ä�ā‚¬ā„¢ or Ä�ā‚¬ļæ½g1Ä�ā‚¬ā„¢ and at least one
of Ä�ā‚¬ļæ½u2Ä�ā‚¬ā„¢ or Ä�ā‚¬ļæ½g2Ä�ā‚¬ā„¢ must be provided.
20.8 Describing a font
20.8.1 Overview of font descriptions
A font description provides the bridge between an author's
font specification and the font data, which is the data needed
to format text and to render the abstract glyphs to which the
characters map Ä�ā‚¬ā€¯ the actual scalable outlines or bitmaps. Fonts
are referenced by properties, such as the Ä�ā‚¬ļæ½font-familyÄ�ā‚¬ā„¢ property.
Each specified font description is added to the font
database and so that it can be used to select the relevant font
data. The font description contains descriptors such as the
location of the font data on the Web, and characterizations of
that font data. The font descriptors are also needed to match
the font properties to particular font data. The level of
detail of a font description can vary from just the name of the
font up to a list of glyph widths.
For more about font descriptions, refer to the Fonts chapter
in the CSS2 specification ([CSS2], chapter 15).
20.8.2 Alternative ways for providing a font description
Font descriptions can be specified in either of the
following ways:
20.8.3 The Ä�ā‚¬ļæ½font-faceÄ�ā‚¬ā„¢ element
The Ä�ā‚¬ļæ½font-faceÄ�ā‚¬ā„¢ element
corresponds directly to the @font-face facility
in CSS2 ([CSS2], section 15.3.1). It can be used to describe the
characteristics of any font, SVG font or otherwise.
When used to describe the characteristics of an SVG font
contained within the same document, it is recommended that the
Ä�ā‚¬ļæ½font-faceÄ�ā‚¬ā„¢ element be a
child of the Ä�ā‚¬ļæ½fontÄ�ā‚¬ā„¢ element it is describing
so that the Ä�ā‚¬ļæ½fontÄ�ā‚¬ā„¢ element can be
self-contained and fully-described. In this case, any
Ä�ā‚¬ļæ½font-face-srcÄ�ā‚¬ā„¢ elements within
the Ä�ā‚¬ļæ½font-faceÄ�ā‚¬ā„¢ element are
ignored as it is assumed that the Ä�ā‚¬ļæ½font-faceÄ�ā‚¬ā„¢ element is describing
the characteristics of its parent Ä�ā‚¬ļæ½fontÄ�ā‚¬ā„¢ element.
Attribute definitions:
- font-family = "<string>"
- Same syntax and semantics as the
Ä�ā‚¬ļæ½font-familyÄ�ā‚¬ā„¢ descriptor
within an
@font-face rule.
Animatable:
no. - font-style = "all | [ normal | italic | oblique] [,
[normal | italic | oblique]]*"
- Same syntax and semantics as the
Ä�ā‚¬ļæ½font-styleÄ�ā‚¬ā„¢ descriptor
within an
@font-face rule. The style of a font. Takes on the same
values as the Ä�ā‚¬ļæ½font-styleÄ�ā‚¬ā„¢
property, except that a comma-separated list is
permitted.
If the attribute is not specified, the effect is as if a
value of 'all' were specified.
Animatable:
no. - font-variant = "[normal | small-caps] [,[normal |
small-caps]]*"
- Same syntax and semantics as the
Ä�ā‚¬ļæ½font-variantÄ�ā‚¬ā„¢
descriptor within an
@font-face rule. Indication of whether this face is the
small-caps variant of a font. Takes on the same values as
the Ä�ā‚¬ļæ½font-variantÄ�ā‚¬ā„¢
property, except that a comma-separated list is
permitted.
If the attribute is not specified, the effect is as if a
value of 'normal' were specified.
Animatable:
no. - font-weight = "all | [normal | bold | 100 | 200 | 300 |
400 | 500 | 600 | 700 | 800 | 900] [, [normal | bold | 100 |
200 | 300 | 400 | 500 | 600 | 700 | 800 |
900]]*"
-
Same syntax and semantics as the
Ä�ā‚¬ļæ½font-weightÄ�ā‚¬ā„¢
descriptor within an
@font-face rule.
The weight of a face relative to others in the same font
family. Takes on the same values as the Ä�ā‚¬ļæ½font-weightÄ�ā‚¬ā„¢
property with three exceptions:
- relative keywords (bolder, lighter) are not
permitted
- a comma-separated list of values is permitted, for
fonts that contain multiple weights
- an additional keyword, 'all', is permitted, which
means that the font will match for all possible
weights; either because it contains multiple weights,
or because that face only has a single weight.
If the attribute is not specified, the effect is as if a
value of 'all' were specified.
Animatable: no.
- font-stretch = "all | [ normal | ultra-condensed |
extra-condensed | condensed | semi-condensed |
semi-expanded | expanded | extra-expanded | ultra-expanded]
[, [ normal | ultra-condensed | extra-condensed | condensed
| semi-condensed | semi-expanded | expanded |
extra-expanded | ultra-expanded] ]*"
-
Same syntax and semantics as the
Ä�ā‚¬ļæ½font-stretchÄ�ā‚¬ā„¢
descriptor within an
@font-face rule. Indication of the condensed or
expanded nature of the face relative to others in the
same font family. Takes on the same values as the Ä�ā‚¬ļæ½font-stretchÄ�ā‚¬ā„¢
property except that:
- relative keywords (wider, narrower) are not
permitted
- a comma-separated list is permitted
- the keyword 'all' is permitted
If the attribute is not specified, the effect is as if a
value of 'normal' were specified.
Animatable: no.
- font-size = "<string>"
- Same syntax and semantics as the
Ä�ā‚¬ļæ½font-sizeÄ�ā‚¬ā„¢ descriptor
within an
@font-face rule.
Animatable:
no. - unicode-range = "<urange> [,
<urange>]*"
- Same syntax and semantics as the
Ä�ā‚¬ļæ½unicode-rangeÄ�ā‚¬ā„¢
descriptor within an
@font-face rule. The range of ISO 10646 characters [UNICODE]
possibly covered by the glyphs in the font. Except for any
additional information provided in this specification, the
normative definition of the attribute
is in CSS2 ([CSS2], section 15.3.3).
If the attribute is not specified, the effect is as if a
value of 'U+0-10FFFF' were specified.
Animatable:
no. - units-per-em = "<number>"
- Same syntax and semantics as the
Ä�ā‚¬ļæ½units-per-emÄ�ā‚¬ā„¢
descriptor within an
@font-face rule. The number of coordinate units on the
em square, the size of the design grid on which glyphs are
laid out.
This value is almost always necessary as nearly every
other attribute requires the definition of a design
grid.
If the attribute is not specified, the effect is as if a
value of '1000' were specified.
Animatable:
no. - panose-1 = "[<integer>]{10}"
- Same syntax and semantics as the
Ä�ā‚¬ļæ½panose-1Ä�ā‚¬ā„¢ descriptor
within an
@font-face rule. The Panose-1 number, consisting of ten
decimal integers, separated by whitespace. Except for any
additional information provided in this specification, the
normative definition of the attribute
is in CSS2 ([CSS2], section 15.3.6).
If the attribute is not specified, the effect is as if a
value of '0 0 0 0 0 0 0 0 0 0' were specified.
Animatable:
no. - stemv = "<number>"
- Same syntax and semantics as the
Ä�ā‚¬ļæ½stemvÄ�ā‚¬ā„¢ descriptor
within an
@font-face rule.
Animatable:
no. - stemh = "<number>"
- Same syntax and semantics as the
Ä�ā‚¬ļæ½stemhÄ�ā‚¬ā„¢ descriptor
within an
@font-face rule.
Animatable:
no. - slope = "<number>"
- Same syntax and semantics as the
Ä�ā‚¬ļæ½slopeÄ�ā‚¬ā„¢ descriptor
within an
@font-face rule. The vertical stroke angle of the font.
Except for any additional information provided in this
specification, the normative definition of the attribute
is in CSS2 ([CSS2], section 15.3.6).
If the attribute is not specified, the effect is as if a
value of '0' were specified.
Animatable:
no. - cap-height = "<number>"
- Same syntax and semantics as the
Ä�ā‚¬ļæ½cap-heightÄ�ā‚¬ā„¢ descriptor
within an
@font-face rule. The height of uppercase glyphs in the
font within the font coordinate system.
Animatable:
no. - x-height = "<number>"
- Same syntax and semantics as the
Ä�ā‚¬ļæ½x-heightÄ�ā‚¬ā„¢ descriptor
within an
@font-face rule. The height of lowercase glyphs in the
font within the font coordinate system.
Animatable:
no. - accent-height = "<number>"
- The distance from the origin to the top of accent
characters, measured by a distance within the font
coordinate system.
If the attribute is not specified, the effect is as if the
attribute were set to the value of the Ä�ā‚¬ļæ½ascentÄ�ā‚¬ā„¢ attribute.
Animatable:
no. - ascent = "<number>"
- Same syntax and semantics as the
Ä�ā‚¬ļæ½ascentÄ�ā‚¬ā„¢ descriptor
within an
@font-face rule. The maximum unaccented height of the
font within the font coordinate system.
If the attribute is not specified, the effect is as if the
attribute were set to the difference between the Ä�ā‚¬ļæ½units-per-emÄ�ā‚¬ā„¢
value and the Ä�ā‚¬ļæ½vert-origin-yÄ�ā‚¬ā„¢ value for the
corresponding font.
Animatable:
no. - descent = "<number>"
- Same syntax and semantics as the
Ä�ā‚¬ļæ½descentÄ�ā‚¬ā„¢ descriptor
within an
@font-face rule. The maximum unaccented depth of the
font within the font coordinate system.
If the attribute is not specified, the effect is as if the
attribute were set to the Ä�ā‚¬ļæ½vert-origin-yÄ�ā‚¬ā„¢ value for the
corresponding font.
Animatable:
no. - widths = "<string>"
- Same syntax and semantics as the
Ä�ā‚¬ļæ½widthsÄ�ā‚¬ā„¢ descriptor
within an
@font-face rule.
Animatable:
no. - bbox = "<string>"
- Same syntax and semantics as the
Ä�ā‚¬ļæ½bboxÄ�ā‚¬ā„¢ descriptor within
an
@font-face rule.
Animatable:
no. - ideographic = "<number>"
- For horizontally oriented glyph layouts, indicates the
alignment coordinate for glyphs to achieve ideographic
baseline alignment. The value is an offset in the font
coordinate system.
Animatable:
no. - alphabetic = "<number>"
- Same syntax and semantics as the
Ä�ā‚¬ļæ½baselineÄ�ā‚¬ā„¢ descriptor
within an
@font-face rule. For horizontally oriented glyph
layouts, indicates the alignment coordinate for glyphs to
achieve alphabetic baseline alignment. The value is an
offset in the font coordinate system.
Animatable:
no. - mathematical = "<number>"
- Same syntax and semantics as the
Ä�ā‚¬ļæ½mathlineÄ�ā‚¬ā„¢ descriptor
within an
@font-face rule. For horizontally oriented glyph
layouts, indicates the alignment coordinate for glyphs to
achieve mathematical baseline alignment. The value is an
offset in the font coordinate system.
Animatable:
no. - hanging = "<number>"
- For horizontally oriented glyph layouts, indicates the
alignment coordinate for glyphs to achieve hanging baseline
alignment. The value is an offset in the font coordinate
system.
Animatable:
no. - v-ideographic = "<number>"
- For vertically oriented glyph layouts, indicates the
alignment coordinate for glyphs to achieve ideographic
baseline alignment. The value is an offset in the font
coordinate system relative to the glyph-specific Ä�ā‚¬ļæ½vert-origin-xÄ�ā‚¬ā„¢ attribute.
Animatable:
no. - v-alphabetic = "<number>"
- For vertically oriented glyph layouts, indicates the
alignment coordinate for glyphs to achieve alphabetic
baseline alignment. The value is an offset in the font
coordinate system relative to the glyph-specific Ä�ā‚¬ļæ½vert-origin-xÄ�ā‚¬ā„¢ attribute.
Animatable:
no. - v-mathematical = "<number>"
- For vertically oriented glyph layouts, indicates the
alignment coordinate for glyphs to achieve mathematical
baseline alignment. The value is an offset in the font
coordinate system relative to the glyph-specific Ä�ā‚¬ļæ½vert-origin-xÄ�ā‚¬ā„¢ attribute.
Animatable:
no. - v-hanging = "<number>"
- For vertically oriented glyph layouts, indicates the
alignment coordinate for glyphs to achieve hanging baseline
alignment. The value is an offset in the font coordinate
system relative to the glyph-specific Ä�ā‚¬ļæ½vert-origin-xÄ�ā‚¬ā„¢ attribute.
Animatable:
no. - underline-position = "<number>"
- The ideal position of an underline within the font
coordinate system.
Animatable:
no. - underline-thickness = "<number>"
- The ideal thickness of an underline, expressed as a
length within the font coordinate system.
Animatable:
no. - strikethrough-position = "<number>"
- The ideal position of a strike-through within the font
coordinate system.
Animatable:
no. - strikethrough-thickness = "<number>"
- The ideal thickness of a strike-through, expressed as a
length within the font coordinate system.
Animatable:
no. - overline-position = "<number>"
- The ideal position of an overline within the font
coordinate system.
Animatable:
no. - overline-thickness = "<number>"
- The ideal thickness of an overline, expressed as a
length within the font coordinate system.
Animatable:
no.
The following elements and attributes correspond to the
Ä�ā‚¬ļæ½srcÄ�ā‚¬ā„¢ descriptor within an
@font-face rule. (Refer to the descriptions of the
@font-face rule and
'src' descriptor
in the CSS2 specification ([CSS2],
sections 15.3.1 and 15.3.5.)
20.8.4 The Ä�ā‚¬ļæ½font-face-srcÄ�ā‚¬ā„¢ element
The Ä�ā‚¬ļæ½font-face-srcÄ�ā‚¬ā„¢ element, together with the
Ä�ā‚¬ļæ½font-face-uriÄ�ā‚¬ā„¢ and Ä�ā‚¬ļæ½font-face-formatÄ�ā‚¬ā„¢ elements described in the
following sections, correspond to the Ä�ā‚¬ļæ½srcÄ�ā‚¬ā„¢
descriptor within an @font-face rule. (Refer to the descriptions of the
@font-face rule
and 'src' descriptor
in the CSS2 specification ([CSS2], sections
15.3.1 and 15.3.5).
A Ä�ā‚¬ļæ½font-face-srcÄ�ā‚¬ā„¢ element contains Ä�ā‚¬ļæ½font-face-uriÄ�ā‚¬ā„¢ and
Ä�ā‚¬ļæ½font-face-nameÄ�ā‚¬ā„¢ elements, which are used for referencing external
and local fonts, respectively.
Ä�ā‚¬ļæ½font-face-srcÄ�ā‚¬ā„¢
- Categories:
- None
- Content model:
- One or more of the following elements, in any order:
- Attributes:
- DOM Interfaces:
20.8.5 The Ä�ā‚¬ļæ½font-face-uriÄ�ā‚¬ā„¢ and Ä�ā‚¬ļæ½font-face-formatÄ�ā‚¬ā„¢ elements
The Ä�ā‚¬ļæ½font-face-uriÄ�ā‚¬ā„¢ element is used within a Ä�ā‚¬ļæ½font-face-srcÄ�ā‚¬ā„¢
element to reference a font defined inside or outside of the current SVG
document.
When a Ä�ā‚¬ļæ½font-face-uriÄ�ā‚¬ā„¢ is referencing an SVG font,
then that reference must be to an SVG Ä�ā‚¬ļæ½fontÄ�ā‚¬ā„¢ element, therefore
requiring the use of a fragment identifier [RFC3986].
The referenced Ä�ā‚¬ļæ½fontÄ�ā‚¬ā„¢ element can be local (i.e., within the same
document as the Ä�ā‚¬ļæ½font-face-uriÄ�ā‚¬ā„¢ element) or remote (i.e., within a
different document).
Ä�ā‚¬ļæ½font-face-uriÄ�ā‚¬ā„¢
- Categories:
- None
- Content model:
- Any number of the following elements, in any order:
- Attributes:
- DOM Interfaces:
Child Ä�ā‚¬ļæ½font-face-formatÄ�ā‚¬ā„¢ elements of a Ä�ā‚¬ļæ½font-face-uriÄ�ā‚¬ā„¢
element are used to specify the supported formats of the font referenced by that
Ä�ā‚¬ļæ½font-face-uriÄ�ā‚¬ā„¢ element. They correspond to entries in a
format(Ä�ā‚¬Ā¦) clause of the
Ä�ā‚¬ļæ½srcÄ�ā‚¬ā„¢ descriptor in an @font-face rule.
20.8.6 The Ä�ā‚¬ļæ½font-face-nameÄ�ā‚¬ā„¢ element
The Ä�ā‚¬ļæ½font-face-nameÄ�ā‚¬ā„¢ element is used within a Ä�ā‚¬ļæ½font-face-srcÄ�ā‚¬ā„¢
element to reference a local font by name. It corresponds to a local(Ä�ā‚¬Ā¦)
clause in an @font-face rule Ä�ā‚¬ļæ½srcÄ�ā‚¬ā„¢ descriptor.
Ä�ā‚¬ļæ½font-face-nameÄ�ā‚¬ā„¢
- Categories:
- None
- Content model:
- Empty.
- Attributes:
- DOM Interfaces:
Attribute definitions:
- name =
"<anything>"
-
The Ä�ā‚¬ļæ½nameÄ�ā‚¬ā„¢ attribute specifies the name of a local font. Unlike
the syntax allowed between the parentheses of the local(Ä�ā‚¬Ā¦)
clause in an @font-face rule Ä�ā‚¬ļæ½srcÄ�ā‚¬ā„¢ descriptor,
the font name specified in this attribute is not surrounded in single or
double quotes. Refer to the description of the 'src' descriptor
in CSS2 for details on how the font name is interpreted
([CSS2], section 15.3.5).
Animatable: no.
20.9 DOM interfaces
20.9.1 Interface SVGFontElement
The SVGFontElement interface corresponds to the
Ä�ā‚¬ļæ½fontÄ�ā‚¬ā„¢ element.
Object-oriented access to the attributes of the Ä�ā‚¬ļæ½fontÄ�ā‚¬ā„¢ element
via the SVG DOM is not available.
interface SVGFontElement : SVGElement,
SVGExternalResourcesRequired,
SVGStylable {
};
20.9.2 Interface SVGGlyphElement
The SVGGlyphElement interface corresponds to the
Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢ element.
Object-oriented access to the attributes of the Ä�ā‚¬ļæ½glyphÄ�ā‚¬ā„¢ element
via the SVG DOM is not available.
interface SVGGlyphElement : SVGElement,
SVGStylable {
};
20.9.3 Interface SVGMissingGlyphElement
The SVGMissingGlyphElement interface corresponds to the
Ä�ā‚¬ļæ½missing-glyphÄ�ā‚¬ā„¢ element.
Object-oriented access to the attributes of the Ä�ā‚¬ļæ½missing-glyphÄ�ā‚¬ā„¢ element
via the SVG DOM is not available.
interface SVGMissingGlyphElement : SVGElement,
SVGStylable {
};
20.9.4 Interface SVGHKernElement
The SVGHKernElement interface corresponds to the
Ä�ā‚¬ļæ½hkernÄ�ā‚¬ā„¢ element.
Object-oriented access to the attributes of the Ä�ā‚¬ļæ½hkernÄ�ā‚¬ā„¢ element
via the SVG DOM is not available.
interface SVGHKernElement : SVGElement {
};
20.9.5 Interface SVGVKernElement
The SVGVKernElement interface corresponds to the
Ä�ā‚¬ļæ½vkernÄ�ā‚¬ā„¢ element.
Object-oriented access to the attributes of the Ä�ā‚¬ļæ½vkernÄ�ā‚¬ā„¢ element
via the SVG DOM is not available.
interface SVGVKernElement : SVGElement {
};
20.9.6 Interface SVGFontFaceElement
The SVGFontFaceElement interface corresponds to the
Ä�ā‚¬ļæ½font-faceÄ�ā‚¬ā„¢ element.
Object-oriented access to the attributes of the Ä�ā‚¬ļæ½font-faceÄ�ā‚¬ā„¢ element
via the SVG DOM is not available.
interface SVGFontFaceElement : SVGElement {
};
20.9.7 Interface SVGFontFaceSrcElement
The SVGFontFaceSrcElement interface corresponds to the
Ä�ā‚¬ļæ½font-face-srcÄ�ā‚¬ā„¢ element.
Object-oriented access to the attributes of the Ä�ā‚¬ļæ½font-face-srcÄ�ā‚¬ā„¢ element
via the SVG DOM is not available.
interface SVGFontFaceSrcElement : SVGElement {
};
20.9.8 Interface SVGFontFaceUriElement
The SVGFontFaceUriElement interface corresponds to the
Ä�ā‚¬ļæ½font-face-uriÄ�ā‚¬ā„¢ element.
Object-oriented access to the attributes of the Ä�ā‚¬ļæ½font-face-uriÄ�ā‚¬ā„¢ element
via the SVG DOM is not available.
interface SVGFontFaceUriElement : SVGElement {
};
The SVGFontFaceFormatElement interface corresponds to the
Ä�ā‚¬ļæ½font-face-formatÄ�ā‚¬ā„¢ element.
Object-oriented access to the attributes of the Ä�ā‚¬ļæ½font-face-formatÄ�ā‚¬ā„¢ element
via the SVG DOM is not available.
interface SVGFontFaceFormatElement : SVGElement {
};
20.9.10 Interface SVGFontFaceNameElement
The SVGFontFaceNameElement interface corresponds to the
Ä�ā‚¬ļæ½font-face-nameÄ�ā‚¬ā„¢ element.
Object-oriented access to the attributes of the Ä�ā‚¬ļæ½font-face-nameÄ�ā‚¬ā„¢ element
via the SVG DOM is not available.
interface SVGFontFaceNameElement : SVGElement {
};