From a07394ef2cfd8cb54e68e8bfb1e7210ee4b2b1b4 Mon Sep 17 00:00:00 2001 From: Alexander Ewering Date: Mon, 29 Aug 2005 12:46:07 +0000 Subject: More text object fancyness, and fixes: - "Flush" is now split into two seperate Alignment modes "Flush" and "Justify": - Justify does exactly the same as a normal word processor's justify function does, and in addition, it uses *whitespace* instead of *character spacing* (kerning) to fill lines. Much more readable. - Flush is pretty much the old Blender "Flush" mode - and as such it uses character spacing to fill lines. Just as Justify, this only works with at least one textframe. - Underlining for text objects. Not a lot to explain. New button "U" in the editbuttons, and CTRL-U as hotkey toggle underlining for newly entered characters or for the selection, just like CTRL-B/CTRL-I do for bold/italic. Underline height (thickness) and Underline position (vertical) can be set in the editbuttons. Implemented as CU_POLY polygon curves. - The B, U and i buttons (and the corresponding CTRL-B/U/I keystrokes) have been fixed to only affect *one* attribute at a time. Formerly, hitting CTRL-B when no other style was active, on a text portion with italics text, for example, would kill the italics and just apply bold. Now, these attributes always add or substract only, but do not replace the style. - In the past, there were bugs with material indices uninitialized, and thus crashes in the renderer with illegal material indices. Even though I assume they have been fixed, I've put in a check that checks (hah) if the material index of a character is illegal (bigger than ob->totcol), and then sets it to zero, and spits out a warning on stderr. If you see such warnings, please report and link to the .blend. - Bugfix: All alignment modes only worked if there were at least *two* lines of text in the text object. Fixed There's now a regression test file for text objects, please add to the corresponding repository: http://blender.instinctive.de/downloads/release/demo/text-regression.blend.gz --- source/blender/makesdna/DNA_curve_types.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'source/blender/makesdna/DNA_curve_types.h') diff --git a/source/blender/makesdna/DNA_curve_types.h b/source/blender/makesdna/DNA_curve_types.h index 460e5f92431..5c99671dd54 100644 --- a/source/blender/makesdna/DNA_curve_types.h +++ b/source/blender/makesdna/DNA_curve_types.h @@ -149,7 +149,7 @@ typedef struct Curve { /* font part */ short len, lines, pos, spacemode; - float spacing, linedist, shear, fsize, wordspace; + float spacing, linedist, shear, fsize, wordspace, ulpos, ulheight; float xof, yof; float linewidth; @@ -211,8 +211,8 @@ typedef struct IpoCurve { #define CU_LEFT 0 #define CU_MIDDLE 1 #define CU_RIGHT 2 -#define CU_FLUSH 3 -#define CU_FORCEFLUSH 4 +#define CU_JUSTIFY 3 +#define CU_FLUSH 4 /* flag (nurb) */ #define CU_SMOOTH 1 -- cgit v1.2.3