### Godot version

4.2.dev [6588a4a]

### System information

N/A

### Issue description

While using `Button`s and when setting `text_overrun_behavior` to anything that adds ellipsis, they are drawn completely ignoring the outline values of the text. `Label` is able to do it correctly:

![image](https://github.com/godotengine/godot/assets/30739239/5154c841-479e-478b-aaa5-7b2e61876bed)

### Steps to reproduce

Create a `Button` and set `text_overrun_behavior` to anything that has ellipsis in it.

### Minimal reproduction project

N/A, trivially reproducible.
}
					or3i(ON_LTR));
					prev = i + 1;
				}
			}
			if (prev != p_text.length()) {
				or3i(prev, p_text.length(), TextServer::DIRECTION_AUTO));
			}
		} break;
		case STRUCTURED_TEXT_LIST: {
			if (p_args.size() == 1 && p_args[0].get_type() == Variant::STRING) {
				Vector<String> tags = p_text.split(String(p_args[0]));
				int prev = 0;
				for (int i = 0; i < tags.size(); i++) {
					if (prev != i) {
						or3i(prev, prev + tags[i].length(), TextServer::DIRECTION_INHERITED));
					}
					or3i(prev + tags[i].length(), prev + tags[i].length() + 1, TextServer::DIRECTION_INHERITED));
					prev = prev + tags[i].length() + 1;
				}
			}
		} break;
		case STRUCTURED_TEXT_GDSCRIPT: {
			bool in_string_literal = false;
			bool in_string_literal_single = false;
			bool in_id = false;
			int prev = 0;
			for (int i = 0; i < p_text.length(); i++) {
				char32_t c = p_text[i];
				if (in_string_literal) {