### Godot version

4.0.dev Beta 14

### System information

Windows 10 and Linux (Pop!_OS 22.04)

### Issue description

When opening a UTF-8 text file with an emoji or other unicode character, the line will not show up and the editor starts producing a number of errors in output. Here is the output:

--- GDScript language server started ---
  U_ILLEGAL_ARGUMENT_ERROR
  modules/text_server_adv/text_server_adv.cpp:4389 - Condition "!sd" is true. Returning: 0.0
  modules/text_server_adv/text_server_adv.cpp:3837 - Condition "!sd" is true. Returning: TextServer::ORIENTATION_HORIZONTAL
  modules/text_server_adv/text_server_adv.cpp:5803 - Condition "!sd" is true. Returning: Size2()
  modules/text_server_adv/text_server_adv.cpp:5803 - Condition "!sd" is true. Returning: Size2()
  modules/text_server_adv/text_server_adv.cpp:5803 - Condition "!sd" is true. Returning: Size2()
  modules/text_server_adv/text_server_adv.cpp:3837 - Condition "!sd" is true. Returning: TextServer::ORIENTATION_HORIZONTAL
  modules/text_server_adv/text_server_adv.cpp:5741 - Condition "!sd" is true. Returning: 0
  modules/text_server_adv/text_server_adv.cpp:5730 - Condition "!sd" is true. Returning: nullptr
  modules/text_server_adv/text_server_adv.cpp:5770 - Condition "!sd" is true. Returning: Vector2i()
  modules/text_server_adv/text_server_adv.cpp:3837 - Condition "!sd" is true. Returning: TextServer::ORIENTATION_HORIZONTAL
  modules/text_server_adv/text_server_adv.cpp:5770 - Condition "!sd" is true. Returning: Vector2i()
  modules/text_server_adv/text_server_adv.cpp:5818 - Condition "!sd" is true. Returning: 0.0
  modules/text_server_adv/text_server_adv.cpp:5829 - Condition "!sd" is true. Returning: 0.0
  modules/text_server_adv/text_server_adv.cpp:5741 - Condition "!sd" is true. Returning: 0
  modules/text_server_adv/text_server_adv.cpp:5730 - Condition "!sd" is true. Returning: nullptr
  U_ILLEGAL_ARGUMENT_ERROR
  modules/text_server_adv/text_server_adv.cpp:4389 - Condition "!sd" is true. Returning: 0.0
  modules/text_server_adv/text_server_adv.cpp:3837 - Condition "!sd" is true. Returning: TextServer::ORIENTATION_HORIZONTAL
  modules/text_server_adv/text_server_adv.cpp:5803 - Condition "!sd" is true. Returning: Size2()
  modules/text_server_adv/text_server_adv.cpp:5803 - Condition "!sd" is true. Returning: Size2()
  modules/text_server_adv/text_server_adv.cpp:5803 - Condition "!sd" is true. Returning: Size2()
  modules/text_server_adv/text_server_adv.cpp:3837 - Condition "!sd" is true. Returning: TextServer::ORIENTATION_HORIZONTAL
  modules/text_server_adv/text_server_adv.cpp:5803 - Condition "!sd" is true. Returning: Size2()
  modules/text_server_adv/text_server_adv.cpp:5770 - Condition "!sd" is true. Returning: Vector2i()
  modules/text_server_adv/text_server_adv.cpp:5730 - Condition "!sd" is true. Returning: nullptr
  modules/text_server_adv/text_server_adv.cpp:5741 - Condition "!sd" is true. Returning: 0
  modules/text_server_adv/text_server_adv.cpp:5818 - Condition "!sd" is true. Returning: 0.0
  modules/text_server_adv/text_server_adv.cpp:5770 - Condition "!sd" is true. Returning: Vector2i()
  modules/text_server_adv/text_server_adv.cpp:5770 - Condition "!sd" is true. Returning: Vector2i()
  modules/text_server_adv/text_server_adv.cpp:5803 - Condition "!sd" is true. Returning: Size2()
  modules/text_server_adv/text_server_adv.cpp:5770 - Condition "!sd" is true. Returning: Vector2i()
  modules/text_server_adv/text_server_adv.cpp:5730 - Condition "!sd" is true. Returning: nullptr
  modules/text_server_adv/text_server_adv.cpp:5741 - Condition "!sd" is true. Returning: 0
  modules/text_server_adv/text_server_adv.cpp:5818 - Condition "!sd" is true. Returning: 0.0
  modules/text_server_adv/text_server_adv.cpp:5770 - Condition "!sd" is true. Returning: Vector2i()
  modules/text_server_adv/text_server_adv.cpp:5770 - Condition "!sd" is true. Returning: Vector2i()
  modules/text_server_adv/text_server_adv.cpp:5803 - Condition "!sd" is true. Returning: Size2()
  modules/text_server_adv/text_server_adv.cpp:5770 - Condition "!sd" is true. Returning: Vector2i()
  modules/text_server_adv/text_server_adv.cpp:5730 - Condition "!sd" is true. Returning: nullptr
  modules/text_server_adv/text_server_adv.cpp:5741 - Condition "!sd" is true. Returning: 0
  modules/text_server_adv/text_server_adv.cpp:5818 - Condition "!sd" is true. Returning: 0.0
  modules/text_server_adv/text_server_adv.cpp:5770 - Condition "!sd" is true. Returning: Vector2i()
  modules/text_server_adv/text_server_adv.cpp:5770 - Condition "!sd" is true. Returning: Vector2i()
  modules/text_server_adv/text_server_adv.cpp:5803 - Condition "!sd" is true. Returning: Size2()
  modules/text_server_adv/text_server_adv.cpp:5770 - Condition "!sd" is true. Returning: Vector2i()
  modules/text_server_adv/text_server_adv.cpp:5730 - Condition "!sd" is true. Returning: nullptr
  modules/text_server_adv/text_server_adv.cpp:5741 - Condition "!sd" is true. Returning: 0
  modules/text_server_adv/text_server_adv.cpp:5818 - Condition "!sd" is true. Returning: 0.0
  modules/text_server_adv/text_server_adv.cpp:5770 - Condition "!sd" is true. Returning: Vector2i()
  modules/text_server_adv/text_server_adv.cpp:5770 - Condition "!sd" is true. Returning: Vector2i()
  modules/text_server_adv/text_server_adv.cpp:5803 - Condition "!sd" is true. Returning: Size2()
  modules/text_server_adv/text_server_adv.cpp:5770 - Condition "!sd" is true. Returning: Vector2i()
  modules/text_server_adv/text_server_adv.cpp:5730 - Condition "!sd" is true. Returning: nullptr
  modules/text_server_adv/text_server_adv.cpp:5741 - Condition "!sd" is true. Returning: 0
  modules/text_server_adv/text_server_adv.cpp:5818 - Condition "!sd" is true. Returning: 0.0
  modules/text_server_adv/text_server_adv.cpp:5770 - Condition "!sd" is true. Returning: Vector2i()
  modules/text_server_adv/text_server_adv.cpp:5770 - Condition "!sd" is true. Returning: Vector2i()
  modules/text_server_adv/text_server_adv.cpp:5803 - Condition "!sd" is true. Returning: Size2()
  modules/text_server_adv/text_server_adv.cpp:5770 - Condition "!sd" is true. Returning: Vector2i()
  modules/text_server_adv/text_server_adv.cpp:5730 - Condition "!sd" is true. Returning: nullptr
  modules/text_server_adv/text_server_adv.cpp:5741 - Condition "!sd" is true. Returning: 0
  modules/text_server_adv/text_server_adv.cpp:5818 - Condition "!sd" is true. Returning: 0.0
  modules/text_server_adv/text_server_adv.cpp:5770 - Condition "!sd" is true. Returning: Vector2i()
  modules/text_server_adv/text_server_adv.cpp:5770 - Condition "!sd" is true. Returning: Vector2i()
  modules/text_server_adv/text_server_adv.cpp:5803 - Condition "!sd" is true. Returning: Size2()
  modules/text_server_adv/text_server_adv.cpp:5770 - Condition "!sd" is true. Returning: Vector2i()
  modules/text_server_adv/text_server_adv.cpp:5730 - Condition "!sd" is true. Returning: nullptr
  modules/text_server_adv/text_server_adv.cpp:5741 - Condition "!sd" is true. Returning: 0
  modules/text_server_adv/text_server_adv.cpp:5818 - Condition "!sd" is true. Returning: 0.0
  modules/text_server_adv/text_server_adv.cpp:5770 - Condition "!sd" is true. Returning: Vector2i()
  modules/text_server_adv/text_server_adv.cpp:5770 - Condition "!sd" is true. Returning: Vector2i()
  modules/text_server_adv/text_server_adv.cpp:5803 - Condition "!sd" is true. Returning: Size2()
  modules/text_server_adv/text_server_adv.cpp:5770 - Condition "!sd" is true. Returning: Vector2i()
  modules/text_server_adv/text_server_adv.cpp:5730 - Condition "!sd" is true. Returning: nullptr
  modules/text_server_adv/text_server_adv.cpp:5741 - Condition "!sd" is true. Returning: 0
  modules/text_server_adv/text_server_adv.cpp:5818 - Condition "!sd" is true. Returning: 0.0
  modules/text_server_adv/text_server_adv.cpp:5770 - Condition "!sd" is true. Returning: Vector2i()
  modules/text_server_adv/text_server_adv.cpp:5770 - Condition "!sd" is true. Returning: Vector2i()
  modules/text_server_adv/text_server_adv.cpp:5803 - Condition "!sd" is true. Returning: Size2()

### Steps to reproduce

Add a text file and paste in an emoji into the text resource file then open it in the editor.

### Minimal reproduction project

[FileIOGuide.zip](https://github.com/godotengine/godot/files/10477742/FileIOGuide.zip)

FT_Outline_Embolden(&fd->face->glyph->outline, strength);
		}
		if (p_font_data->transform != Transform2D()) {
			FT_Matrix mat = { FT_Fixed(p_font_data->transform[0][0] * 65536), FT_Fixed(p_font_data->transform[0][1] * 65536), FT_Fixed(p_font_data->transform[1][0] * 65536), FT_Fixed(p_font_data->transform[1][1] * 65536) }; 
			FT_Outline_Transform(&fd->face->glyph->outline, &mat);
		}
		FT_Render_Mode aa_mode = FT_RENDER_MODE_NORMAL;
		bool bgra = false;
		switch (p_font_data->antialiasing) {
			case FONT_ANTIALIASING_NONE: {
				aa_mode = FT_RENDER_MODE_MONO;
			} 
			case FONT_ANTIALIASING_GRAY: {
				aa_mode = FT_RENDER_MODE_NORMAL;
			} 
			case FONT_ANTIALIASING_LCD: {
				int aa_layout = (int)((p_glyph >> 24) & 7);
				switch (aa_layout) {
					case FONT_LCD_SUBPIXEL_LAYOUT_HRGB: {
						aa_mode = FT_RENDER_MODE_LCD;
						bgra = false;
					} 
					case FONT_LCD_SUBPIXEL_LAYOUT_HBGR: {
						aa_mode = FT_RENDER_MODE_LCD;
						bgra = true;
					} 
					case FONT_LCD_SUBPIXEL_LAYOUT_VRGB: {
						aa_mode = FT_RENDER_MODE_LCD_V;
						bgra = false;
					}