SVG Conformance

Antenna House Formatter V7.4 conforms to W3C Scalable Vector Graphics (SVG) 2 and supports to display SVG images with a newly developed engine. This makes it possible to output high quality SVG images as vectors in the PDF. See also Graphics to learn how to utilize SVG.

The below table shows the implemented SVG elements. They are implemented focusing on basic drawing elements.

  • [yes] in the list means that the element or property is implemented.
  • [partial] means that the element or property is partially implemented.
  • [no] means not implemented.
ElementAttribute/PresentatonAttributeConditionComments
5.1 <svg> yesWhen SVG is referenced in upper XML such as FO or HTML, the following properties specified in upper XML is inherited.
  • font-family
  • font-size
  • font-weight
  • font-style
  • xml:lang
x yes
y yes
width yesYou can choose to treat it as a presentation attribute or as an attribute with width-height-as-presentation-attribute.
height yes
viewBox yes
preserveAspectRatio yes
transform yes
aria attributes no
conditional processing attributes
core attributes
document event attributes no
global event attributes no
document element event attributes no
presentation attributes
5.2 <g> yes
aria attributes no
conditional processing attributes
core attributes
global event attributes no
document element event attributes no
presentation attributes
5.4 <defs> yes
core attributes
global event attributes no
document element event attributes no
presentation attributes
5.5 <symbol> yes
x yes
y yes
width yesYou can choose to treat it as a presentation attribute or as an attribute with width-height-as-presentation-attribute.
height yes
viewBox yes
preserveAspectRatio yes
refX no
refY no
aria attributes no
core attributes
global event attributes no
document element event attributes no
presentation attributes
5.6 <use> yes
x yes
y yes
width yesYou can choose to treat it as a presentation attribute or as an attribute with width-height-as-presentation-attribute.
height yes
href yes
aria attributes no
conditional processing attributes
core attributes
global event attributes no
document element event attributes no
presentation attributes
deprecated xlink attributes
5.7.3 <switch> yes
aria attributes no
conditional processing attributes
core attributes
global event attributes no
document element event attributes no
presentation attributes
5.8 <desc> no
core attributes
global event attributes no
document element event attributes no
5.8 <title> no
core attributes
global event attributes no
document element event attributes no
5.9 <metadata> no
core attributes
global event attributes no
document element event attributes no
6.2 <style> yes
type yesSupports type="text/css" only.
media no
title no
core attributes
global event attributes no
document element event attributes no
9.2 <path> yes
d yes
pathLength no
aria attributes no
conditional processing attributes
core attributes
global event attributes no
document element event attributes no
presentation attributes
10.2 <rect> yes
pathLength no
x yes
y yes
width yesYou can choose to treat it as a presentation attribute or as an attribute with width-height-as-presentation-attribute.
height yes
rx yes
ry yes
aria attributes no
conditional processing attributes
core attributes
global event attributes no
document element event attributes no
presentation attributes
10.3 <circle> yes
pathLength no
cx yes
cy yes
r yes
aria attributes no
conditional processing attributes
core attributes
global event attributes no
document element event attributes no
presentation attributes
10.4 <ellipse> yes
pathLength no
cx yes
cy yes
rx yes
ry yes
aria attributes no
conditional processing attributes
core attributes
global event attributes no
document element event attributes no
presentation attributes
10.5 <line> yes
pathLength no
x1 yes
y1 yes
x2 yes
y2 yes
aria attributes no
conditional processing attributes
core attributes
global event attributes no
document element event attributes no
presentation attributes
10.6 <polyline> yes
pathLength no
points yes
aria attributes no
conditional processing attributes
core attributes
global event attributes no
document element event attributes no
presentation attributes
10.7 <polygon> yes
pathLength no
points yes
aria attributes no
conditional processing attributes
core attributes
global event attributes no
document element event attributes no
presentation attributes
11.2 <text> yes
x yes
y yes
dx yes
dy yes
rotate yes
textLength yes
lengthAdjust yes
aria attributes no
conditional processing attributes
core attributes
global event attributes no
document element event attributes no
presentation attributes
11.2 <tspan> yes
x yes
y yes
dx yes
dy yes
rotate yes
textLength yes
lengthAdjust yes
aria attributes no
conditional processing attributes
core attributes
global event attributes no
document element event attributes no
presentation attributes
deprecated <tref> yesDeprecated in SVG 2.0 but handled according to the SVG 1.1 specification.
xlink:href yes
aria attributes no
conditional processing attributes
core attributes
global event attributes no
document element event attributes no
presentation attributes
11.8.1 <textPath> no
12.3 <image> yesProcesses the reference destination in static secure mode when image-element-eval-as-svg20 is true. So if the reference destination refers to another SVG, that SVG will not be evaluated.
x yes
y yes
width yes
height yes
preserveAspectRatio yes
href yes
crossorigin no
aria attributes no
conditional processing attributes
core attributes
global event attributes no
document element event attributes no
deprecated xlink attributes
presentation attributes
12.5 <foreignObject> no
13.7.1 <marker> yes
viewBox yes
preserveAspectRatio yes
refX yes
refY yes
markerUnits yes
markerWidth yes
markerHeight yes
orient yes
aria attributes no
conditional processing attributes
core attributes
global event attributes no
document element event attributes no
deprecated xlink attributes
presentation attributes
14.2.2 <linearGradient> yes
x1 yes
y1 yes
x2 yes
y2 yes
gradientUnits yes
gradientTransform yes
spreadMethod yes
href yes
conditional processing attributes
core attributes
global event attributes no
document element event attributes no
deprecated xlink attributes
presentation attributes
14.2.3 <radialGradient> yesWhen radial-gradient-eval-as-svg20 is false, truncates the focal circle inside the terminal circle as in the SVG 1.1 specification, ignoring fr.
gradientTransform yes
cx yes
cy yes
r yes
fx yes
fy yes
fr yes
gradientUnits yes
gradientTransform yes
spreadMethod yes
href yes
conditional processing attributes
core attributes
global event attributes no
document element event attributes no
deprecated xlink attributes
presentation attributes
14.2.4 <stop> yes
offset yes
core attributes
global event attributes no
document element event attributes no
presentation attributes
14.3 <pattern> yes
viewBox yes
preserveAspectRatio yes
x yes
y yes
width yes
height yes
patternUnits yes
patternContentUnits yes
patternTransform yes
href yes
conditional processing attributes
core attributes
global event attributes no
document element event attributes no
deprecated xlink attributes
presentation attributes
15.10 <script> no
16.2 <a> yes
href yesFor xlink:href, you can also specify a format such as #nameddest=Chapter6 in Making Link. Hot spots are made rectangular. It does not function in GUI.
target no
download no
ping no
rel no
hreflang no
type no
referrerpolicy no
aria attributes no
conditional processing attributes
core attributes
global event attributes no
document element event attributes no
deprecated xlink attributes
presentation attributes
16.3.3 <view> no
5.1 <clipPath> yesCSS Masking Module Level 1
clipPathUnits yes
class yes
style yes
externalResourcesRequired no
transform yes
Core Attributes
Conditional Processing Attributes
Presentation Attributes
6.1 <mask> yesCSS Masking Module Level 1
class yes
style yes
x yes
y yes
width yes
height yes
maskUnits yes
maskContentUnits yes
Core Attributes
Conditional Processing Attributes
Presentation Attributes
7 <filter> yesFilter Effects Module Level 1
class yes
style yes
externalResourcesRequired no
x yes
y yes
width yes
height yes
filterUnits yes
primitivetUnits yes
Core Attributes
Conditional Processing Attributes
Presentation Attributes
9.5 <feBlend> yesFilter Effects Module Level 1
class yes
style yes
x yes
y yes
width yes
height yes
result yes
in yes
in2 yes
Core Attributes
Presentation Attributes
9.6 <feColorMatrix> yesFilter Effects Module Level 1
class yes
style yes
x yes
y yes
width yes
height yes
result yes
in yes
type yes
value yes
Core Attributes
Presentation Attributes
9.7 <feComponentTransfer> yesFilter Effects Module Level 1
class yes
style yes
x yes
y yes
width yes
height yes
result yes
in yes
Core Attributes
Presentation Attributes
9.7.1 <feFuncR>
9.7.2 <feFuncG>
9.7.3 <feFuncB>
9.7.4 <feFuncA>
yesFilter Effects Module Level 1
type yes
tableValues yes
slope yes
intercept yes
amplitude yes
exponent yes
offset yes
Core Attributes
9.8 <feComposite> yesFilter Effects Module Level 1
class yes
style yes
x yes
y yes
width yes
height yes
result yes
in yes
in2 yes
operator yes
k1 yes
k2 yes
k3 yes
k4 yes
Core Attributes
Presentation Attributes
9.9 <feConvolveMatrix> yesFilter Effects Module Level 1
class yes
style yes
x yes
y yes
width yes
height yes
result yes
in yes
order yes
kernelMatrix yes
divisor yes
bias yes
targetX yes
targetY yes
edgeMode yes
kernelUnitLength yes
preserveAlpha yes
Core Attributes
Presentation Attributes
9.10 <feDiffuseLighting> yesFilter Effects Module Level 1
class yes
style yes
x yes
y yes
width yes
height yes
result yes
in yes
surfaceScale yes
diffuseConstant yes
kernelUnitLength yes
Core Attributes
Presentation Attributes
9.11 <feDisplaceMap> yesFilter Effects Module Level 1
class yes
style yes
x yes
y yes
width yes
height yes
result yes
in yes
in2 yes
scale yes
xChannelSelector yes
yChannelSelector yes
Core Attributes
Presentation Attributes
9.12 <feDropShadow> yesFilter Effects Module Level 1
class yes
style yes
x yes
y yes
width yes
height yes
result yes
in yes
stdDeviation yes
dx yes
dy yes
Core Attributes
Presentation Attributes
9.13 <feFlood> yesFilter Effects Module Level 1
class yes
style yes
x yes
y yes
width yes
height yes
result yes
Core Attributes
Presentation Attributes
9.14 <feGaussianBlur> yesFilter Effects Module Level 1
class yes
style yes
x yes
y yes
width yes
height yes
result yes
in yes
stdDeviation yes
edgeMode yes
Core Attributes
Presentation Attributes
9.15 <feImage> yesFilter Effects Module Level 1
class yes
style yes
x yes
y yes
width yes
height yes
result yes
externalResourceRequired no
preserveAspectRatio yes
xlink:href yes
href yes
crossorigin no
Core Attributes
Presentation Attributes
9.16 <feMerge> yesFilter Effects Module Level 1
class yes
style yes
x yes
y yes
width yes
height yes
result yes
Core Attributes
Presentation Attributes
9.16.1 <feMergeNode> yesFilter Effects Module Level 1
in yes
Core Attributes
9.17 <feMorphology> yesFilter Effects Module Level 1
class yes
style yes
x yes
y yes
width yes
height yes
result yes
in yes
operator yes
radius yes
Core Attributes
Presentation Attributes
9.18 <feOffset> yesFilter Effects Module Level 1
class yes
style yes
x yes
y yes
width yes
height yes
result yes
in yes
dx yes
dy yes
Core Attributes
Presentation Attributes
9.19 <feSpecularLighting> yesFilter Effects Module Level 1
class yes
style yes
x yes
y yes
width yes
height yes
result yes
in yes
surfaceScale yes
specularConstant yes
specularExponent yes
kernelUnitsLength yes
Core Attributes
Presentation Attributes
9.20 <feTile> yesFilter Effects Module Level 1
class yes
style yes
x yes
y yes
width yes
height yes
result yes
in yes
Core Attributes
Presentation Attributes
9.21 <feTurbulence> noFilter Effects Module Level 1
2.13 <animate> noSVG Animations Level 2
2.14 <set> noSVG Animations Level 2
2.15 <discard> noSVG Animations Level 2
2.16 <animateMotion> noSVG Animations Level 2
2.18 <animateTransfer> noSVG Animations Level 2
Core Attributes
id yes
tabindex no
autofocus no
xml:lang, lang yes
xml:space yes
class yes
style yes
Conditional Processing Attributes
requiredExtensions no
systemLanguage yes
deprecated xlink attributes
xlink:href yes
xlink:target no
Presentation Attributes
fill yes
transform no
alignment-baseline no
baseline-shift yes
clip-path yes
clip-rule yes
color yes
color-interpolation no
color-interpolation-filters yes
cusor no
direction yes
display yes
dominant-baseline no
fill-opacity yes
fill-rule yes
filter yes
flood-color yes
flood-opacity yes
font-family yes
font-size yes
font-size-adjust no
font-stretch yes
font-style yes
font-variant yes
font-weight yes
glyph-orientation-horizontal no
glyph-orientation-vertical no
image-rendering no
letter-spacing yes
lighting-color yes
marker-end yes
marker-mid yes
maeker-start yes
mask partialOnly <funciri> | none | inherit are allowed.
mask-type yes
opacity yes
overflow yes
paint-order yes
pointer-events no
shape-rendering no
stop-color yes
stop-opacity yes
stroke-dasharray yes
stroke-dashoffset yes
stroke-linecap yes
stroke-linejoin partialarcs is not supported.
stroke-miterlimit yes
stroke-opacity yes
stroke-width yes
text-anchor yes
text-decoration yes
text-overflow no
text-rendering no
transform-origin yes
unicode-bidi yes
vector-effect no
visibility yes
white-space yes
word-spacing yes
writing-mode yes
6.7 Required properties Enumeration of what is not included in the presentation attributes
isolation yesCompositing and Blending Level 1
transform-box yesCSS Transforms Module Level 1
text-align noCSS Text Module Level 3
text-align-last noCSS Text Module Level 3
text-indent noCSS Text Module Level 3
vertical-align noCSS Inline Layout Module Level 3
text-orientation yesCSS Writing Modes Level 3
11.10.1.4 kerning no
11.10.2.2 line-height yes
line-break yesAllows the same values as axf:line-break.
word-break yesAllows the same values as axf:word-break.
hyphenate yesAllows the same values as hyphenate.
word-wrap yesAllows the same values as axf:word-wrap.
overflow-wrap no
max-height partialEffective only with <svg>.
max-width partial
min-height partial
min-width partial
Other Properties
mix-blend-mode partialCompositing and Blending Level 1. When converted into a raster image, color mixing with the background of the svg image is not performed. Also, if the outermost <svg> has a background, the SVG and background will blend.

Elements and attributes not listed in the above table are not supported.

SVG in gzip file format is supported.

Restrictions

  • Only CSS can be described in <style>. Evaluates CSS2 selectors and a part of CSS3 selectors, but has the following restrictions: The same applies to external CSS.
    • Only the following @rules are evaluated: Others are ignored.
      • @namespace
      • @import
      • @font-face
    • Does not match the selector that includes pseudo elements.
    • Supports the following pseudo classes. Does not match the selector that includes the other pseudo classes.
      • :root
      • :first-child
      • :last-child
      • :only-child
      • :first-of-type
      • :last-of-type
      • :only-of-type
      • :nth-child()
      • :nth-last-child()
      • :nth-of-type()
      • :nth-last-of-type()
      • :empty
      • :not()
      • :target
    • With the [attr=val] attribute selector, only the conformity of the character string is evaluated. For example, the x="1.0" attribute doesn't match the [x="1"] selector. The following selectors are supported.
      • E[foo]
      • E[foo="bar"]
      • E[foo~="bar"]
      • E[foo^="bar"]
      • E[foo$="bar"]
      • E[foo*="bar"]
      • E[foo|="bar"]
    • The following Functions are available: No other function is available.
    • When there is a grammatical violation, no more issues are evaluated after that.
    • In the case of inline svg, selectors are processed as if there are no parent/sibling nodes of the outermost svg. Also, the outermost svg is treated as not matching :root.
  • To reference an external CSS, use <?xml-stylesheet?> and specify as follows:
    <?xml version="1.0"?>
    <?xml-stylesheet type="text/css" href="foobar.css"?>
    <svg xmlns="http://www.w3.org/2000/svg">
    ...
    
  • Supports stop-opacity only for the PDF output.
  • Complicated (three or more colors, repeat, reflect) gradient strokes are invalid except for PDF/SVG output.
  • Transparency is not supported in PDF1.3.
  • When the filter/mask properties are present, the SVG image will be output as a raster image. At this time, conversion to match the color space of the output destination is not performed.
  • The clipPath is not taken into account when calculating the bounding box.
  • When rasterized, text with fonts that are not allowed to be embedded will not be rendered.