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)}