From BlenderWiki

Jump to: navigation, search

Editing Text

Mode: Edit mode

Hotkey: see below

Text in Edit mode.

Editing text is quite different than other object types in Blender, and happens mainly in two areas. First, the 3D view, of course, where you type your text, and have a few shortcuts, e.g. for applying styles – note however that most Blender hotkeys you know in Edit mode do not exist for texts! The second place is the Button window (Editing context, F9), especially the Font panel.

The menu of the 3D view header has nearly no use, and there is no Specials menu… You have no transform nor mirror tools, and so on. However, you can apply to texts the same modifiers as to curves.

There is no real “undo/redo” feature in Edit mode – just the Undo Editing command of the Text menu, that tries to reload the original text, but seems to act oddly…

Editing Text is similar to using a standard text editor but is not as full featured and has some differences:

Exit Edit mode
⇆ Tab doesn’t insert a tab character in the text, but rather enters and exits Edit mode, as with other object types.
Copy
To copy text to the buffer use CtrlC.
Cut and Copy
To cut and copy text to the buffer use CtrlX.
Paste
To paste text from the buffer use CtrlV.
Delete all text
To completely erase or delete all text use Ctrl← Backspace.
Home/End
↖ Home and ⇥ End move the cursor to the beginning and end of a line respectively.
Next/Previous word
To move the cursor on a word’s boundary use Ctrl or Ctrl.

The text buffer does not communicate with the desktop. It only works from within Blender. To insert text from outside Blender see Inserting text below.

Inserting Text

You can insert text in three different ways: from the internal text buffer (Editing Text), with the “Lorem” button (used to insert at current position a piece of “Lorem Ipsum” Latin text – yes, the same thing used by web developers!), or from a text file.

To load text from a text file click the Insert Text button on the Font panel. This will bring up a File Browser window for navigating to a valid UTF-8 file. As usual, be careful that the file doesn’t have too many characters as interactive response will slow down.

Fonts

Mode: Edit mode

Panel: Font (Editing context, F9)

Font drop-down list and button.

Blender comes with a built-in font by default and is displayed in the drop-down list next to the Load button on the Font panel. The built-in font is always present and shows in this list as “<builtin>”.

Loading a Type 1 font file.

To use a different Font you need to load it first by clicking the Load button in the Font panel and navigating to a valid font. The File Browser window will highlight all usable fonts by placing a small purplish rectangle next to each valid entry as shown in (Loading a Type 1 font file). The white circle highlights an example of a valid font.

Unix note
Fonts are typically located under /usr/lib/fonts, or some variant like /usr/lib/X11/fonts, but not always. They may be in other locations as well, such as /usr/share/local or /usr/local/share, and possibly related sub-trees.


If you select a font that Blender can’t understand, you will get the error “Not a valid font”.

Remember the same font will be applied to all chars with same style in a text, but that a separate font is required for each style. For example, you will need to load an Italics font in order to make characters or words italic. Once the font is loaded you can apply that font “Style” to the selected characters or the whole object. In all, you would need to load a minimum of four different types of fonts to represent each style (Normal, Italics, Bold, Bold-Italics).

It is important to understand that Blender do not bother what font you load for “normal”, “bold”, etc., style. This is how you can have up to four different fonts in use in the same text – but you have to chose between different styles of a same font, or different fonts…

Objects as Fonts

You can also “create” your own “font” inside Blender! This is a quite complex process, so let’s detail it:

  • First, you must create your chars. Each char is an object, of any type (mesh, curve, meta…). They all must have a name following the schema: common prefix followed by the char name (e.g. “ft.a”, “ft.b”, etc.).
  • Then, for the Text object, you must enable the Dupli Verts button (Object context – F7 –, Anim Settings panel).
  • Back in Editing context (F9), in the Font panel, fill the Ob Family field with the common prefix of your “font” objects.

Now, each time a char in your text matches the suffix part of a “font” object’s name, this object is duplicated on this char. The original chars remain visible (but you can make them invisible by e.g. activating the 3D button of the Text object…). The objects are duplicated so that their center is positioned at the lower right corner of the corresponding chars.

Typography

Mode: Edit mode

Panel: Font (Editing context, F9)

Blender has a number of typographic controls for changing the style and layout of text.

Size
Controls the size of the whole text (no way to control each char size independently). Note however that chars with different fonts (different styles, see below) might have different visible size.
Shear
Controls the inclination of the whole text. Even if this seems similar to italics style, this is not the same thing!


Bold, Italics and Underline

Italics
Toggled with CtrlI or by using the I button, font set with the I button.
Bold
Toggled with CtrlB or by using the B button, font set with the B button.
Bold and Italics
A combination of the two previous styles, but it uses a forth different font.
Underline
Toggled with CtrlU or by using the U button.
UL position
This allows you to shift vertically the position of the underline.
UL height
This controls the height (or width) of the underline.

Blender’s B and I buttons don’t work the same way as other applications, as thay also serve as placeholders for you to load up certain fonts manually, which get applied when you define corresponding style, see above.

To apply the Bold/Italics/Underline attribute to a set of characters you either turn on Bold/Italics/Underline prior to typing characters, or highlight (select) first and then toggle Bold/Italics/Underline with a hotkey.

Example

Bold text.

In (Bold text), one font is used for “Te” and a different font for “xt”.

Alignment

Left
Aligns text to left of frames when using them, else uses the center point of the Text object as the starting point of the text (which grows to the right).
Center
Centers text in the frames when using them, else uses the center point of the Text object as the mid-point of the text (which grows equally to the left and right).
Right
Aligns text to right of frames when using them, else uses the center point of the Text object as the ending point of the text (which grows to the left).
Justify
Only flushes a line when it is terminated by a wordwrap (not by ↵ Enter), it uses whitespace instead of character spacing (kerning) to fill lines.
Flush
Always flushes the line, even when it’s still being entered, it uses character spacing (kerning) to fill lines.

Both Justify and Flush only work within frames.

Word spacing
A factor by which whitespace is scaled in width.
Spacing (kerning)
Manual kerning, between all pairs of characters. You can also control it, independently for each pair, by pressing Alt or Alt to decrease/increase kerning by steps of 0.1.
Line Dist
A factor by which the vertical space between lines is scaled.
X offset and Y offset
Well, these settings control the X and Y offset of the text, regarding its “normal” positioning. Note that with frames, it applies to all frames’ content…


Text Frames

Mode: Object or Edit modes

Panel: Font (Editing context, F9)

Text frame.

Text “frames” allow you to distribute the text amongst rectangular areas within a single text object. An arbitrary number of freely positionable and re-sizable text frames are allowed per text object.

Text flows continuously from the lowest-numbered frame to the highest-numbered frame with text inside each frame word-wrapped. Text flows between frames when a lower-numbered frame can’t fit anymore text. If the last frame is reached text overflows out of it.

Text frames are very similar to the concept of frames from a desktop publishing application, like Scribus. You use frames to control the placement and flow of text.

Frames are controlled from the upper right corner of the Font panel, see (Text frame).

Frame size

By default the first frame for a new text object, and any additional frames, has a size of zero for both Width and Height, which means the frame is initially not visible.

frames with a width of 0.0 are ignored completely during text flow (no wordwrap happens) and frames with a height of 0.0 flow forever (no flowing to the next text frame).

In order for the frame to become visible the frame’s Width must be greater than 0.0.

Note
Technically the height is never actually 0.0 because the font itself always contributes height.


Frame width.

(Frame width) is a text object with a width of 5.0. And because the frame width is greater than 0.0 it is now visible and is drawn in the active theme color as a dashed rectangle. The text has overflowed because the text has reached the end of the last frame, the default frame.

Adding/Deleting a Frame

To add a frame click the Insert button on the Font panel. A new frame is inserted just after (in text flow order) the current one, with its attributes (position and size). Be sure to modify the offset for the new frame in the X and/or Y fields. Just an X modification will create a new column.

To delete the current frame click the Delete button. Any text in higher frames will be re-flowed downward into lower frames.

Examples

Text Flow

Text 1.

With two or more frames you can organize text to a finer degree. For example, create a text object and enter “Blender is super duper”; see (Text 1). This text object has a frame, it just isn’t visible because its Width is 0.0.

Text 2.

Set the width to 5.0. The frame is now visible and text is wrapping according to the new width, as shown in (Text 2). Notice that the text has overflowed out of the frame. This is because the text has reached the end of the last frame which just happens to be the default/initial frame.

When we add another frame and set its width and height the text will flow into the new frame.

Text 3.

Clicking on Insert will add a new frame, labeled “Frame 2” in (Text 3), with the same attributes as the previous frame (labeled “Default frame” in (Text 3)).

Notice that the text has not yet flowed into this new frame. That is because the previous, or lower numbered, frame has a Height of 0.0. Remember the height field may be 0.0 but the font itself contributes height. The font’s height does not count. This means the height field value is an addition to the font’s height.

Text 4.

To get text to flow intoFrame 2” we need to change the height of the default/initial frame. In (Text 4) the height of the initial frame – in pink – has been increased to 0.1.

Now the text flows from the initial frame into “Frame 2”. Notice that the text overflows out of “Frame 2”. Again this is because the text has reached the end of the last frame.

Multiple columns

Text 5.

To create two columns of text just create a text object and adjust the initial frame’s Width and Height to your requirements, then insert a new frame. The new frame will have the same size as the initial frame. Set the X position to something greater or less than the width of the initial frame, see (Text 5).

Multiple Materials

Mode: Edit mode

Panel: Link and Materials (Editing context, F9)

Each character can have a different Material index in order to have different materials on different characters.

You can assign indices either as you type, or after by selecting blocks of text and clicking on the Assign button in the Link and Materials panel.

Examples

Red Green Blue.

For example to create (Red Green Blue) you would need to create three separate materials and three separate material indices. Each word would be assigned a Material index by selecting the characters for each word and clicking the Assign button. (Red Green Blue) is still one single Text object.

Curves Attributes

Mode: Object or Edit modes

Panel: Curve and Surface (Editing context, F9)

As you can see in the Curve and Surface panel, texts have most of the same options as curves – you can control both their default and render resolutions, and have all the curves’ extrusion features.

Text on Curve

Mode: Object or Edit modes

Panel: Curve and Surface (Editing context, F9)

TextOnCurve.
Use Modifiers!
As others, this option is an obsolete feature inherited from old Blender versions – you should rather use the Curve modifier, which can do exactly the same thing, but with also more advanced effects, like e.g. the animated text flowing along the curve…


This tool allows you to deform a text on a given curve (in a static fashion). It’s quite easy to use: just type the name of the curve in the TextOnCurve field… The relative position of text and curve has no influence on the result.

Example

Text on curve.

In (Text on curve) you can see a text deformed by a curve (a 2D Bézier curve), labeled “Path”. Its Resolution has been set to the lowest setting to produce very blocky text. Almost as if the text was broken out of a rock mine.

Special Characters

Mode: Edit mode

Menu: Text » Special Characters

There are a few special characters that are available using the Alt key or the Text menu on the 3D window header.

Here is a summary of these characters (just remember you can access these characters from the Char panel as well):

AltC: Copyright (©) AltR: Registered trademark (®)
AltG: Degrees (°) AltX: Multiply symbol (×)
AltS: German “ss” (ß) AltF: Currency sign (¤)
AltL: British Pound (£) AltY: Japanese Yen (¥)
Alt1: Superscript 1 (¹) Alt2: Superscript 2 (²)
Alt3: Superscript 3 (³)
Alt?: Spanish question mark (¿) Alt!: Spanish exclamation mark (¡)
Alt<: Left double quotation mark («) Alt>: Right double quotation mark (»)


All the characters on your keyboard should work, including stressed vowels and so on. If you need special characters (such as accented chars, which are not there on a US keyboard) you can produce many of them using a combination of two other characters. To do so, type the main char, press Alt← Backspace, and then press the desired “modifier” to produce the special character. Some examples are given below:

A, Alt← Backspace, ~: ã         A, Alt← Backspace, ': á         A, Alt← Backspace, `: à        
A, Alt← Backspace, O: å         E, Alt← Backspace, ": ë         O, Alt← Backspace, /: ø        


Unicode Characters

Mode: Edit mode

Panel: Char (Editing context, F9)

The font system understands both ASCII and Unicode character sets with a panel dedicated to assisting in the selection of extended characters.

Since Blender does not support Unicode text input via the keyboard, not all characters are easily accessible from it. For those difficult characters the Char panel is provided. It simply exposes the entire Unicode character set, by default. The character set can be quite large so paging buttons are provided, U and D. You can also select a subset of Unicode with the Unicode Table button, and jump directly to a known character by typing its decimal code in the num field just to the right of this button.

When you find the character you are looking for, just click on it in the grid.