def text.length.translate

gralha-svg-render@0.1.0.1 · svg.bend:3440

import gralha-svg-render@0.1.0.1/svg.bend as Svg
import Base
import gralha-text-scan@0.1.0.1/scan.bend as U
import gralha-xml-doc@0.1.0.1/xml.bend as XML

3440def text.length.translate(xs: List<&2, XML.Element>, +delta: F32) -> List<&2, XML.Element>:
3441  match xs:
3442    case Nil{}: Nil{}
3443    case Con{XML.Element{n, as, kids, txt}, rest}:
3444      +attrs = as
3445      +tagname = n
3446      Con{XML.Element{tagname, U.choose(List<&2, XML.Attr>, U.string.equal(tagname, "#glyph") || U.string.equal(XML.attr.get(attrs, "#length-fixed", ""), "yes"), text.length.attrs(attrs, 1.0, delta), attrs),
3447        text.length.translate(kids, delta), txt}, text.length.translate(rest, delta)}

Uses (9)

Used by (1)