# How to switch between two fonts using a decoding animation while the letters rain in from the sky

So far ive found a tutorial for the decoding animation and got that setup.

I want the random letters to be font-A and have them decode into into font-B while falling into place from the sky, then decode backwards into another word. The falling from the sky part is kinda optional, i just need to know how to use 1 font for the random characters and another english font for the decoded word

You can try per character animation using Decompose Text node. I think this node is much more flexible to use. In this example i used falloff to offset size between two text instead of slicing.

For multiple text we can create text list. To appear each element once in a circular fashion we can use Shift List node. The setup below makes text element appea every 40 frame one by one.

Full node tree with a above setup added:

For back and forth effect we can create switches for matrices. Each switch will have two inputs reversed and non-reversed matrices list and output is altered using modulo function.

• Okay I think i understand what you're doing here. So basically its 2 text objects and one is being revealed while the other is being hidden simultaneously each with their own fonts. Very clever, exactly what i was looking for thank you! Im curious if you would know how to make it pause once a word is completed, then animate in reverse to reveal a new word? Im hoping to make this loop forwards and backwords for however many text inputs I want to add – Devin Forrest Kennedy Sep 23 at 22:58
• @DevinForrestKennedy Hi, I have updated my answer. – HariSreedhar Sep 24 at 5:09
• @Hari Sreedhar, do you have a channel in Youtube? – Rita Geraghty stands by Monica Sep 25 at 18:29
• @RitaGeraghtystandsbyMonica Yes i do. youtube.com/bluefoxcreations – HariSreedhar Sep 25 at 18:38
• @RitaGeraghtystandsbyMonica No worries :) – HariSreedhar Sep 25 at 18:50

I did not succeed to set the font of a text object from Animation Nodes.

Though, you can use two texts objects, each with its font and set the result string to it (or an empty string for the one you don't want to display).

Here the nodes compare the decoded length to the text length to choose the text object that will receive the text or "".

• This might work if it could be done so that each letters font gets changed as it decodes, instead of the the whole word changing font at the end. I found that there as an option for fonts in the text object output node if you enable it in the "N" Panel, although im not sure what to do with it yet. – Devin Forrest Kennedy Sep 21 at 19:42
• @RitaGeraghtystandsbyMonica, or you are kidding or you underestimate what Omar can do. – lemon Sep 25 at 16:52
• @Lemon, I just deleted my comment before you answered. I have always thought of Omar as a wizard at maths & node compositing. I wish I could steal his brain for cloning. – Rita Geraghty stands by Monica Sep 25 at 17:07
• @RitaGeraghtystandsbyMonica, you see from this bad answer (did not understand what the OP exactly wanted) that I'm certainly not him! Though prefer these ones for instance: blender.stackexchange.com/a/144493/19156 or blender.stackexchange.com/a/76788/19156 which are much more fun ^^ – lemon Sep 25 at 17:15
• @Lemon, do you have channel in Youtube? You have bags of tricks (I have viewed your other posts.) – Rita Geraghty stands by Monica Sep 25 at 18:29

So after messing around with it for a bit I found a solution. I ended up making my own TrueType Font using fontLab that had the letters A-Z of one font for capitol and the other font for lowercase letters. I then set the random letters to only be lowercase and made sure the text input only had capital letters. To get the different words, i just duplicated the string of nodes for each new word and changed the text input node for each string. I then keyframed the words disappearing as the next word appears. the results...

The issue im having now is Blender keeps crashing while trying to render it (I think i was careless duplicating the strings of nodes like that). I ended up rendering as an image sequence and then used an online tool to convert it to a gif.