Re: animation in SVG-in-OT glyphs

> On Nov 18, 2018, at 10:56 PM, Brian Birtles <bbirtles@mozilla.com> wrote:
> 
> On Sun, Nov 18, 2018 at 1:29 AM Myles C. Maxfield <mmaxfield@apple.com <mailto: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.)

The could also use two axes.

>  
> 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 Wednesday, 21 November 2018 20:44:45 UTC