1
$\begingroup$

I'm creating a font ad-hoc and modifying It as I need time to time..

Any way to reload the font file linked to the *.blend file so all text objects are immediately refreshed?

Now I need to reload the font file for every text object at every modification...

Is there maybe a way to apply the font to a material via nodes? (or something like [maybe a script?])

font need a refresh

$\endgroup$

2 Answers 2

1
$\begingroup$

Through the interface there is currently no way to replace the file for an existing font (ideally this would be supported),
however from Python you can do this.

eg, run this script:

import bpy
bpy.context.object.data.font.filepath = '//some_font.ttf'

However in 2.76 there is a bug where this won't update immediately (just fixed).

So you have to do...

import bpy
bpy.context.object.data.font.filepath = '//some_font.ttf'
bpy.context.object.data.update_tag()

You could set the file-path to its self to force reloading too.

$\endgroup$
3
  • $\begingroup$ It works! but I'm missing something basic... how to apply this to all the selected text objects and not only the active one? $\endgroup$ Commented Mar 5, 2016 at 7:43
  • $\begingroup$ ock! found out how to do that and discovered an alternative solution! ^_^ thanks for your precious work ideasman!!!!!! $\endgroup$ Commented Mar 6, 2016 at 1:10
  • 1
    $\begingroup$ @FrancescoYoshiGobbo, could you post your solution as an answer? (so anyone who finds this question can use it). $\endgroup$
    – ideasman42
    Commented Mar 6, 2016 at 2:27
1
$\begingroup$

Found out an alternative solution:

Will perform this task performing a selection of all the 'font type' objects by

  1. text object selection RMB
  2. select grouped shiftG: Type T
  3. change the font of the only active element
  4. make links CTRLL: Fonts F

This update applies to all the selected text objects!

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .