You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-04 12:00:25 +00:00
Merge pull request #111964 from bruvzg/zw_sp_1
[TextServer] Fix range for zero-width glyphs extra spacing.
This commit is contained in:
@@ -6859,8 +6859,8 @@ void TextServerAdvanced::_shape_run(ShapedTextDataAdvanced *p_sd, int64_t p_star
|
||||
|
||||
unsigned int last_non_zero_w = glyph_count - 1;
|
||||
if (last_run) {
|
||||
for (unsigned int i = glyph_count - 1; i > 0; i--) {
|
||||
last_non_zero_w = i;
|
||||
for (int64_t i = glyph_count - 1; i >= 0; i--) {
|
||||
last_non_zero_w = (unsigned int)i;
|
||||
if (p_sd->orientation == ORIENTATION_HORIZONTAL) {
|
||||
if (glyph_pos[i].x_advance != 0) {
|
||||
break;
|
||||
|
||||
@@ -4822,7 +4822,7 @@ bool TextServerFallback::_shaped_text_shape(const RID &p_shaped) {
|
||||
// Text span.
|
||||
int last_non_zero_w = sd->end - 1;
|
||||
if (i == sd->spans.size() - 1) {
|
||||
for (int j = span.end - 1; j > span.start; j--) {
|
||||
for (int j = span.end - 1; j >= span.start; j--) {
|
||||
last_non_zero_w = j;
|
||||
uint32_t idx = (int32_t)sd->text[j - sd->start];
|
||||
if (!is_control(idx) && !(idx >= 0x200B && idx <= 0x200D)) {
|
||||
|
||||
Reference in New Issue
Block a user