skia2/modules/svg
Florin Malita febb1b87a5 [svg] Absolute positioning support for text
Implement per-character position attribute lookup based on [1]:

  - convert "x" and "y" attributes to arrays
  - introduce ScopedPosResolver to handle positioning attribute lookup
    and fallback
  - push a new resolver every time we enter a text positioning element
    scope (<text>, <tspan>, etc).
  - flush/reposition a new text chunk every time we encounter explicit
    absolute positions

The position attribute fallback logic is complex enough to warrant a
unit test.

[1] https://www.w3.org/TR/SVG11/text.html#TSpanElementXAttribute

Bug: skia:10840
Change-Id: I66c478fea4a179fdb8b1a6a9ff00c4dd9509f8d2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/345161
Commit-Queue: Florin Malita <fmalita@chromium.org>
Commit-Queue: Florin Malita <fmalita@google.com>
Reviewed-by: Tyler Denniston <tdenniston@google.com>
2020-12-17 17:31:25 +00:00
..
include [svg] Absolute positioning support for text 2020-12-17 17:31:25 +00:00
src [svg] Absolute positioning support for text 2020-12-17 17:31:25 +00:00
tests [svg] Absolute positioning support for text 2020-12-17 17:31:25 +00:00
utils [svg] Allow clients to pass a custom SkFontMgr 2020-11-11 01:51:44 +00:00
BUILD.gn [svg] Absolute positioning support for text 2020-12-17 17:31:25 +00:00
svg.gni [svg] Add feFlood filter node 2020-12-11 15:02:20 +00:00