### Godot version

8449592d92eaeef990f5502b419d491ee3eeb7a6

### System information

Windows 11

### Issue description

Zooming in the script editor on an empty script freezes the entire editor for a few seconds, but if the file is large then it freezes for 4-5 seconds (which is unacceptable). Looks like a recent regression.

### Steps to reproduce

Just zoom in/out on the large script file.

### Minimal reproduction project

N/A
PackedInt32Array arr = p_value;
		int len = arr.size();
		ERR_FAIL_COND_V(len % 3, false);
		if (!len) {
			return false;
		}
		for (int i = 0; i < len / 3; i++) {
			const int32_t *kern_data = &arr[i * 3];
			set_kerning(0, 16, Vector2i(kern_data[0], kern_data[1]), Vector2(kern_data[2], 0));
		}
	} else if (tokens.size() == 1 && tokens[0] == "height") {
		
		bmp_height = p_value;
		set_fixed_size(16);
		set_cache_descent(0, 16, bmp_height - bmp_ascent);
	} else if (tokens.size() == 1 && tokens[0] == "ascent") {
		
		bmp_ascent = p_value;
		set_fixed_size(16);
		set_cache_ascent(0, 16, bmp_ascent);
		set_cache_descent(0, 16, bmp_height - bmp_ascent);
	} else if (tokens.size() == 1 && tokens[0] == "fallback") {
		
		Ref<Font> f = p_value;
		if (f.is_valid()) {
			fallbacks.push_back(f);
			return true;
		}
		return false;
	}