1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-26 00:27:43 +00:00

LibWeb: Add initial support for SVG <textPath>

This patch adds basic support for the SVG `<textPath>`, so it supports
placing text along a path, but none of the extra attributes for
controlling the layout of the text. This is enough to correctly display
the MDN example.
This commit is contained in:
MacDue 2023-12-17 18:35:21 +00:00 committed by Andreas Kling
parent d327104910
commit 809c5b0b03
11 changed files with 171 additions and 0 deletions

View file

@ -0,0 +1,23 @@
#import <SVG/SVGTextContentElement.idl>
#import <SVG/SVGURIReference.idl>
// https://svgwg.org/svg2-draft/text.html#InterfaceSVGTextPathElement
[Exposed=Window]
interface SVGTextPathElement : SVGTextContentElement {
// textPath Method Types
const unsigned short TEXTPATH_METHODTYPE_UNKNOWN = 0;
const unsigned short TEXTPATH_METHODTYPE_ALIGN = 1;
const unsigned short TEXTPATH_METHODTYPE_STRETCH = 2;
// textPath Spacing Types
const unsigned short TEXTPATH_SPACINGTYPE_UNKNOWN = 0;
const unsigned short TEXTPATH_SPACINGTYPE_AUTO = 1;
const unsigned short TEXTPATH_SPACINGTYPE_EXACT = 2;
// FIXME: [SameObject] readonly attribute SVGAnimatedLength startOffset;
// FIXME: [SameObject] readonly attribute SVGAnimatedEnumeration method;
// FIXME: [SameObject] readonly attribute SVGAnimatedEnumeration spacing;
};
SVGTextPathElement includes SVGURIReference;