- From: Brian Birtles <bbirtles@mozilla.com>
- Date: Mon, 19 Nov 2018 15:56:34 +0900
- To: mmaxfield@apple.com
- Cc: sppatel@adobe.com, public-svgopentype@w3.org, jfkthame@gmail.com, lrosenth@adobe.com, list.adam@twardoch.com, Vladimir.Levantovsky@monotype.com
- Message-ID: <CAF-W_FShKC6i3A6z3pPgE=9Z5dHuy0YVJWct9B--9O-VgmyXfg@mail.gmail.com>
On Sun, Nov 18, 2018 at 1:29 AM Myles C. Maxfield <mmaxfield@apple.com> wrote: > The trouble with animation is it requires a retained-mode drawing model > like an HTML DOM or a UIKit view hierarchy. These systems are built on top > of text engines, which are usually immediate-mode. > > Currently, people describe font animations as using a higher-level > framework to animate a variation axis/axes. I wonder what use cases this > approach doesn’t satisfy. Adding variations in OT-SVG, rather than > animation, would likely fit the bill, would would also be compatible with > existing immediate-mode graphics APIs. > I think there are some fairly reasonable use cases it wouldn't cover such as allowing a different animation duration based on the glyph. At least I can see the animated emoji in Skype have different durations. If the font author wants to define an animation for a glyph 'a' that has a cycle of 1s, and an animation for a glyph 'b' that has a cycle of 2s, then in order to achieve that with variation axes, I imagine the content author would need to do a reverse mapping from glyphs to code points (likely breaking ligatures etc. along the way) and then wrap each character in a <span> with the appropriate class. (And if the text is editable such as for emoji in a messaging app then it would become a contenteditable nightmare.) > I’m not quite sure what you mean by “typographically sound.” All animation > systems that I know of (CSS animations, SMIL, CoreAnimation, etc.) are all > designed such that the object graph at any point in the animation is > representable outside of an animation. Are you suggesting flipbook-style > animations with cross-fades? > That's not quite true, but it probably should be. (For example, we have special internal notation for representing the intermediate state of interpolating 'currentColor' with something else, or mismatched transform lists when percentages are involved.) Brian >
Received on Monday, 19 November 2018 06:57:08 UTC