# Add-on for Generating Writing Animation (Free)

**URL:** <https://blenderartists.org/t/add-on-for-generating-writing-animation-free/1138985>\
**Category:** Released Add-ons and Extensions\
**Tags:** add-ons, free, animation, blender2-80\
**Created:** [December 18, 2018, 9:02am UTC](https://blenderartists.org/t/add-on-for-generating-writing-animation-free/1138985 "2018-12-18T09:02:00Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![Khemadeva](https://blenderartists.org/user_avatar/blenderartists.org/khemadeva/32/682192_2.png) [@Khemadeva](https://blenderartists.org/u/Khemadeva)\
**Post date:** [December 18, 2018, 9:02am UTC](https://blenderartists.org/t/add-on-for-generating-writing-animation-free/1138985/1 "2018-12-18T09:02:00Z")

</div>

![promo](https://blenderartists.org/uploads/default/original/4X/0/0/9/0095cdbe999666526df3885ec845875cb04b3592.gif)

Thanks to those, who attended the premiere.

Download location of the add-on (Blender 2.8x):  
[https://github.com/Shriinivas/writinganimation/raw/master/writinganimstrokefont\_2\_8.zip](https://github.com/Shriinivas/writinganimation/raw/master/writinganimstrokefont_2_8.zip)

Documentation: [https://github.com/Shriinivas/writinganimation](https://github.com/Shriinivas/writinganimation)

Video Tutorials:  
Curve Drawing Animation: [https://youtu.be/\_tATQJhAkIg](https://youtu.be/_tATQJhAkIg)  
Text Writing Animation: [https://youtu.be/WZVMPuyfYTM](https://youtu.be/WZVMPuyfYTM)

---

<div class="post-metadata">

**Author:** ![urkokul](https://blenderartists.org/user_avatar/blenderartists.org/urkokul/32/734469_2.png) [@urkokul](https://blenderartists.org/u/urkokul)\
**Post date:** [December 22, 2018, 10:29am UTC](https://blenderartists.org/t/add-on-for-generating-writing-animation-free/1138985/2 "2018-12-22T10:29:54Z")

</div>

The great idea and addon. Thanks

---

<div class="post-metadata">

**Author:** ![Khemadeva](https://blenderartists.org/user_avatar/blenderartists.org/khemadeva/32/682192_2.png) [@Khemadeva](https://blenderartists.org/u/Khemadeva)\
**Post date:** [December 23, 2018, 4:40am UTC](https://blenderartists.org/t/add-on-for-generating-writing-animation-free/1138985/3 "2018-12-23T04:40:34Z")

</div>

Thank you for the encouraging words!  
Merry Christmas 🙂

---

<div class="post-metadata">

**Author:** ![txusmiCG](https://blenderartists.org/letter_avatar_proxy/v4/letter/t/90ced4/32.png) [@txusmiCG](https://blenderartists.org/u/txusmiCG)\
**Post date:** [December 23, 2018, 10:32am UTC](https://blenderartists.org/t/add-on-for-generating-writing-animation-free/1138985/4 "2018-12-23T10:32:23Z")

</div>

Well done!

Great features and easy to use.

Thanks

---

<div class="post-metadata">

**Author:** ![Khemadeva](https://blenderartists.org/user_avatar/blenderartists.org/khemadeva/32/682192_2.png) [@Khemadeva](https://blenderartists.org/u/Khemadeva)\
**Post date:** [December 24, 2018, 4:56am UTC](https://blenderartists.org/t/add-on-for-generating-writing-animation-free/1138985/5 "2018-12-24T04:56:21Z")

</div>

You are welcome. Appreciate you taking the time to try the features and share your feedback.

---

<div class="post-metadata">

**Author:** ![Khemadeva](https://blenderartists.org/user_avatar/blenderartists.org/khemadeva/32/682192_2.png) [@Khemadeva](https://blenderartists.org/u/Khemadeva)\
**Post date:** [December 30, 2018, 8:12am UTC](https://blenderartists.org/t/add-on-for-generating-writing-animation-free/1138985/6 "2018-12-30T08:12:29Z")

</div>

The add-on is now also ported to Blender 2.8 Beta 🙂

The script file is writinganim\_2\_8.py.  
Dowload repository is the same ([https://github.com/Shriinivas/writinganimation](https://github.com/Shriinivas/writinganimation))

In 2.8 the UI is on ‘Active Tool and Workspace settings’ tab on the properties panel.

I have tested the main use cases with both Cycles and Eevee.  
Do let me know if you happen to try the tool and come across any defects.

Suggestions and feedback are alwyas welcome!

---

<div class="post-metadata">

**Author:** ![Shohrukh](https://blenderartists.org/user_avatar/blenderartists.org/shohrukh/32/527614_2.png) [@Shohrukh](https://blenderartists.org/u/Shohrukh)\
**Post date:** [January 6, 2019, 6:57pm UTC](https://blenderartists.org/t/add-on-for-generating-writing-animation-free/1138985/7 "2019-01-06T18:57:16Z")

</div>

Are other languages ​​supported?

---

<div class="post-metadata">

**Author:** ![Khemadeva](https://blenderartists.org/user_avatar/blenderartists.org/khemadeva/32/682192_2.png) [@Khemadeva](https://blenderartists.org/u/Khemadeva)\
**Post date:** [January 7, 2019, 12:50pm UTC](https://blenderartists.org/t/add-on-for-generating-writing-animation-free/1138985/8 "2019-01-07T12:50:08Z")

</div>

Do you mean the font for writing text in other languages?

In the demo, I am using the single stroke fonts of Inkscape Hershey text extension. It supports English, Greek and Japanese, I guess.

You can of course create text in any language in an SVG editor (by tracing it for instance) and import that in Blender to generate the animation.

(Hershey extension can be extended for custom single stroke fonts also. It involves creating character set in SVG. I have written a script for that. Can share it if there is enough interest. )

---

<div class="post-metadata">

**Author:** ![Shohrukh](https://blenderartists.org/user_avatar/blenderartists.org/shohrukh/32/527614_2.png) [@Shohrukh](https://blenderartists.org/u/Shohrukh)\
**Post date:** [January 7, 2019, 1:01pm UTC](https://blenderartists.org/t/add-on-for-generating-writing-animation-free/1138985/9 "2019-01-07T13:01:31Z")

</div>

Please send this script. I want this addon to support Russian (and my native language is Tajik).  
Does this addon work in blender 2.80?

---

<div class="post-metadata">

**Author:** ![Khemadeva](https://blenderartists.org/user_avatar/blenderartists.org/khemadeva/32/682192_2.png) [@Khemadeva](https://blenderartists.org/u/Khemadeva)\
**Post date:** [January 8, 2019, 4:56pm UTC](https://blenderartists.org/t/add-on-for-generating-writing-animation-free/1138985/10 "2019-01-08T16:56:03Z")

</div>

Yes, it works with 2.80. You need to install writinganim\_2\_8.py (please see my message above).

The add-on creates animation based for the selected bezier curves. For text animation there are two possibilities.

1. You can use the blender text object and convert it to curve. All the fonts have closed curves so there are double strokes for every letter. This does not involve any manual curve creation.

![twostroke](https://blenderartists.org/uploads/default/original/4X/d/4/7/d47ea80d6ab1ce25b9167e1d223977180a2fecf1.gif)

1. You can create the text as curves directly in blender or import it as SVG (by tracing for example). This will allow you to create the single stroke fonts, which is more natural. I have created the following text in Inkscape with the Freehand Drawing tool and imported it using the [Paths & Shape Keys Import add-on](https://blenderartists.org/t/shape-key-import-add-on-added-blender-2-8-and-svg-transform-support/1134802)  
 ![singlestroke](https://blenderartists.org/uploads/default/original/4X/e/1/2/e128f03d551f8745c0247faead9242f2cc52d636.gif)

Inkscape already has 2 single stroke fonts, but they only have roman characters.  
The script I was talking about, joins the letters to make the user given text. But here also the individual letters need to be traced manally. To explain its usage I need to create a tutorial (to use it the SVG nees to be in a particular format). I can do that if there are at least a few users interested in using it.

Let me know if you need more explanation for tracing the text in SVG and importing it into blender.  
PS: I have used google translate for the russian translation of ‘hello’. Excuse me if there are any mistakes 🙂

---

<div class="post-metadata">

**Author:** ![PierreSchiller](https://blenderartists.org/user_avatar/blenderartists.org/pierreschiller/32/1024999_2.png) [@PierreSchiller](https://blenderartists.org/u/PierreSchiller)\
**Post date:** [January 8, 2019, 6:36pm UTC](https://blenderartists.org/t/add-on-for-generating-writing-animation-free/1138985/11 "2019-01-08T18:36:00Z")

</div>

Oh man! This is gold!

---

<div class="post-metadata">

**Author:** ![Shohrukh](https://blenderartists.org/user_avatar/blenderartists.org/shohrukh/32/527614_2.png) [@Shohrukh](https://blenderartists.org/u/Shohrukh)\
**Post date:** [January 9, 2019, 10:32am UTC](https://blenderartists.org/t/add-on-for-generating-writing-animation-free/1138985/12 "2019-01-09T10:32:54Z")

</div>

Oh man, your addon is very mega super awesome!  
But I have a few questions:

1. It is necessary to add the function of erasing letters (a pencil with an eraser).
2. The function of saving the letters I created using curves in Blender as the font used by this addon.
3. I prepared the scene, but the render does not display lines of letters. What am I doing wrong?

---

<div class="post-metadata">

**Author:** ![Khemadeva](https://blenderartists.org/user_avatar/blenderartists.org/khemadeva/32/682192_2.png) [@Khemadeva](https://blenderartists.org/u/Khemadeva)\
**Post date:** [January 10, 2019, 10:24am UTC](https://blenderartists.org/t/add-on-for-generating-writing-animation-free/1138985/13 "2019-01-10T10:24:10Z")

</div>

@PierreSchiller  
These words of appreciation are tremendously motivating. Thank you so much!

---

<div class="post-metadata">

**Author:** ![Khemadeva](https://blenderartists.org/user_avatar/blenderartists.org/khemadeva/32/682192_2.png) [@Khemadeva](https://blenderartists.org/u/Khemadeva)\
**Post date:** [January 10, 2019, 10:46am UTC](https://blenderartists.org/t/add-on-for-generating-writing-animation-free/1138985/14 "2019-01-10T10:46:16Z")

</div>

@Shohrukh  
Thanks for the great feedback!

1. I will add the erase functionality. Along with erase op, there needs to be a procedurally created eraser object as well. So just give me some time to implement that.  
Meanwhile, you can run the following script to convert the writing animation to erasing animation. You need to a) run the standard writing animation op then b) go to the last animation frame so that all curves are fully visible and c) select all the curves and d) execute this code:

```auto
import bpy

for o in bpy.context.selected_objects:
    if(o.type != 'CURVE' or len(o.data.splines) == 0 \
        or o.data.splines[0].type != 'BEZIER' \
            or o.data.animation_data == None \
                or o.data.animation_data.action == None):
            continue

    o.data.bevel_factor_mapping_start = 'SPLINE'
    for fc in o.data.animation_data.action.fcurves:
        if(fc.data_path == 'bevel_factor_end'):
            fc.data_path = 'bevel_factor_start'
    

```

Please let me know if there are any issues running it.

1. A better place to have this function is the SVG editor. The script I mentioned earlier is an inkscape extension that does this. Since inkscape already has the Hershey extension, which implements more or less the functionality of using pre-defined curves as fonts, duplicating that same thing won’t make sense. So to reuse that, I have created another Inkscape extension that creates the data file based on the curves created by user in the format understood by Hershey extension.

2. Try setting the bevel depth of the curves to a higher value, maybe .01 or so. With the grey backgound, in Blender 2.8 the curves are not clearly visible in rendered display, unless they have sufficient bevel depth value. If you still face issues, please share your blend file if possible and I will look into the problem.

---

<div class="post-metadata">

**Author:** ![NewVisitor](https://blenderartists.org/letter_avatar_proxy/v4/letter/n/c37758/32.png) [@NewVisitor](https://blenderartists.org/u/NewVisitor)\
**Post date:** [January 10, 2019, 12:04pm UTC](https://blenderartists.org/t/add-on-for-generating-writing-animation-free/1138985/15 "2019-01-10T12:04:22Z")

</div>

> [@Khemadeva](#):
>
> So to reuse that, I have created another Inkscape extension that creates the data file based on the curves created by user in the format understood by Hershey extension.

Where can I find this Inkscape Extension?

---

<div class="post-metadata">

**Author:** ![Khemadeva](https://blenderartists.org/user_avatar/blenderartists.org/khemadeva/32/682192_2.png) [@Khemadeva](https://blenderartists.org/u/Khemadeva)\
**Post date:** [January 11, 2019, 4:53pm UTC](https://blenderartists.org/t/add-on-for-generating-writing-animation-free/1138985/16 "2019-01-11T16:53:46Z")

</div>

I have not shared it yet, since the funcationality is very specific and I wasn’t sure if many users would be interested in it. I will upload it on Github in a few days and update this thread.

---

<div class="post-metadata">

**Author:** ![NewVisitor](https://blenderartists.org/letter_avatar_proxy/v4/letter/n/c37758/32.png) [@NewVisitor](https://blenderartists.org/u/NewVisitor)\
**Post date:** [January 13, 2019, 11:48am UTC](https://blenderartists.org/t/add-on-for-generating-writing-animation-free/1138985/17 "2019-01-13T11:48:05Z")

</div>

> [@Khemadeva](#):
>
> I will upload it on Github in a few days and update this thread.

Great!  
Many thanks.

---

<div class="post-metadata">

**Author:** ![Khemadeva](https://blenderartists.org/user_avatar/blenderartists.org/khemadeva/32/682192_2.png) [@Khemadeva](https://blenderartists.org/u/Khemadeva)\
**Post date:** [February 7, 2019, 2:57pm UTC](https://blenderartists.org/t/add-on-for-generating-writing-animation-free/1138985/18 "2019-02-07T14:57:08Z")

</div>

@Shohrukh @NewVisitor  
The inkscape extensions are available for download now.  
Initially I had written a single script for my own use. However, to make it generic, it needed to be extended and now it’s a whole framework for stroke font creation and text rendering. That explains the delayed reply 🙂

Dowload Location: [https://github.com/Shriinivas/inkscapestrokefont](https://github.com/Shriinivas/inkscapestrokefont)  
File Name: inkscapestrokefont.zip  
Video Tutorial: [https://youtu.be/iCsnYlVjWA0](https://youtu.be/iCsnYlVjWA0)

Do let me know if you come across any errors. (There’s a known issue with non-english characters; the work-around in mentioned on the repository page.)

---

<div class="post-metadata">

**Author:** ![Shohrukh](https://blenderartists.org/user_avatar/blenderartists.org/shohrukh/32/527614_2.png) [@Shohrukh](https://blenderartists.org/u/Shohrukh)\
**Post date:** [February 7, 2019, 5:08pm UTC](https://blenderartists.org/t/add-on-for-generating-writing-animation-free/1138985/19 "2019-02-07T17:08:23Z")

</div>

Awesome work. Tomorrow I will test it.

---

<div class="post-metadata">

**Author:** ![NewVisitor](https://blenderartists.org/letter_avatar_proxy/v4/letter/n/c37758/32.png) [@NewVisitor](https://blenderartists.org/u/NewVisitor)\
**Post date:** [February 8, 2019, 9:57am UTC](https://blenderartists.org/t/add-on-for-generating-writing-animation-free/1138985/20 "2019-02-08T09:57:51Z")

</div>

Great stuff [Khemadeva](https://blenderartists.org/u/Khemadeva),

many thanks for this.

[Next page](https://blenderartists.org/t/add-on-for-generating-writing-animation-free/1138985.md?page=2)
