diff options
author | Campbell Barton <ideasman42@gmail.com> | 2014-05-15 11:27:06 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2014-05-15 11:43:27 +0400 |
commit | e5b8d84613f3aa808adf275ea3e0dbec2d484915 (patch) | |
tree | 90aeaf2a7513995ae6acadca331ded6aa5c5acb4 /source/blender/blenkernel/intern/font.c | |
parent | ac9eaf9c91cf460d3530b09615c911ed40856f12 (diff) |
Fix T40204: x-offset textbox failed with center/justify/flush
Diffstat (limited to 'source/blender/blenkernel/intern/font.c')
-rw-r--r-- | source/blender/blenkernel/intern/font.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/source/blender/blenkernel/intern/font.c b/source/blender/blenkernel/intern/font.c index 35328a88360..0b707b29d02 100644 --- a/source/blender/blenkernel/intern/font.c +++ b/source/blender/blenkernel/intern/font.c @@ -815,7 +815,7 @@ makebreak: } } else if (cu->spacemode == CU_MIDDLE) { - for (i = 0; i < lnr; i++) linedata[i] = (linedata3[i] - linedata[i]) / 2; + for (i = 0; i < lnr; i++) linedata[i] = ((linedata3[i] - linedata[i]) + cu->xof) / 2; for (i = 0; i <= slen; i++) { ct->xof += linedata[ct->linenr]; ct++; @@ -824,7 +824,7 @@ makebreak: else if ((cu->spacemode == CU_FLUSH) && (cu->tb[0].w != 0.0f)) { for (i = 0; i < lnr; i++) if (linedata2[i] > 1) - linedata[i] = (linedata3[i] - linedata[i]) / (linedata2[i] - 1); + linedata[i] = ((linedata3[i] - linedata[i]) + cu->xof) / (linedata2[i] - 1); for (i = 0; i <= slen; i++) { for (j = i; (!ELEM3(mem[j], '\0', '\n', '\r')) && (chartransdata[j].dobreak == 0) && (j < slen); j++) { /* do nothing */ @@ -849,7 +849,8 @@ makebreak: if ((mem[j] != '\r') && (mem[j] != '\n') && ((chartransdata[j].dobreak != 0))) { - if (mem[i] == ' ') curofs += (linedata3[ct->linenr] - linedata[ct->linenr]) / linedata4[ct->linenr]; + if (mem[i] == ' ') + curofs += ((linedata3[ct->linenr] - linedata[ct->linenr]) + cu->xof) / linedata4[ct->linenr]; ct->xof += curofs; } if (mem[i] == '\n' || mem[i] == '\r' || chartransdata[i].dobreak) curofs = 0; |