Comments (1)
I do not know how to fix this but I decomposed the string into its code points.
రాష్ట్రముల మధ్య
Code points:
U+0C30 ర
U+0C3E ా
U+0C37 ష
U+0C4D ్
U+0C1F ట
U+0C4D ్
U+0C30 ర
U+0C2E మ
U+0C41 ు
U+0C32 ల
U+0020
U+0C2E మ
U+0C27 ధ
U+0C4D ్
U+0C2F య
The first character looks like a ర with a ◌ా nonspacing mark (U+0C3E) appended. The combining mark is tacked on, but the glyph should render differently when it is applied. They should combine as a రా
.
The next visual glyph appears to be made up of five code points, which render completely differently if any are removed. This is me pressing backspace on the second glyph:
ష్ట్ర ష్ట్ ష్ట ష్ ష
For this glyph, the first two code points U+0C37
U+0C4D
combine to make ష్
but the second and third code point U+0C4D
U+0C1F
combine to make ట్
, yet the fourth and fifth code point combine to make ్ర
. Maybe something is parsing the TTF wrong with the grapheme clusters?
Is this a limitation of the ab_glyph
crate that bevy_text
uses internally?
Does anyone have any thoughts?
EDIT: I wonder if down the line we could make use of something like rustybuzz as a text shaping engine for complex scripts like Indic or Hebrew. Bevy doesn't seem to support right-to-left languages either at the moment.
from bevy.
Related Issues (20)
- Please re-export IntoDynamicImageError as public HOT 2
- `[f32; 4]` conversions missing from `bevy_color` HOT 3
- TrackedRenderPass::wgpu_pass may compromize invariants
- Add `bevy-cpal` crate to `bevy-audio` HOT 2
- Fluent builder methods for bevy_reflect ParsedPaths. HOT 1
- duplicate_vertices silently consumes indices HOT 1
- Allow external plugins to intervene more deeply in the rendering process of Sprite (Mesh2d).
- bevy_reflect::List::iter wraps silently on release
- Window despawns during Update schedule
- Bevy can't render default shapes if `bevy_render` has `shader_format_glsl` enabled. HOT 8
- Bevy panics when running empty scene
- Update `ui_test` to 0.23.0
- Make `bevy_time` optionally depend on `bevy_reflect` HOT 1
- Removing image crate from wasm builds
- `PlaneMeshBuilder` should include a configurable amount of subdivision for the mesh HOT 3
- Main branch fails to compile on Rust beta. HOT 2
- Mesh2d improvements tracking issues
- Remove `check-cfg` when Rust 1.80 is released
- `ci setup` command
- transmission renders black on some GPU HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from bevy.