-
-
Notifications
You must be signed in to change notification settings - Fork 3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Country names in complex (and RTL scripts) improperly rendered on map #12284
Comments
@zackpollard will this be fixed by protomaps' localization thing, or is it another issue? |
Looks like there is a plugin for maplibre that enables RTL text processing. Looking at adding that in now. |
@paluszak Would you be able to login to this instance https://map-rtl.dev.immich.cloud with email: |
@zackpollard Looks fine, at least for the scripts I know (Arabic and Hebrew). Please mind, however, that some other scripts (mainly Indic origin scripts and Vietnamese) also require complex text processing to be rendered properly. I don't know Hindi or Bengali, but my limited knowledge of Burmese tells me that the name of the country may not be rendered properly. |
Hey, appreciate you taking a look. It's possible the font itself isn't fully compatible with some languages, however for now this seems like an improvement for RTL languages so we'll push forward with getting this merged in. As for other languages we'll probably need to wait for someone with more knowledge of those languages to either look into it if there are problems or help us fix them. |
For some more context, it appears that maplibre, or more specifically, GL JS and GL more widely don't support a lot of the features of the more complex languages. Take a look here for more info mapbox/mapbox-gl-js#4009 |
Yes, that seems to be the problem. As a person who occasionally has to dabble with typographical issues I'd like to add that complex text shaping is a must for a lot of scripts, even some Latin-based like Vietnamese, where diacritical marks sometimes need to stacked properly over the letters. Indic scripts (which include most of the scripts used in India, Sinhalese, Burmese, Lao, Thai, Khmer, Tibetan/Dzongkha etc.) generally require some kind of complex text shaping engine (usually harfbuzz) to be rendered in a legible way. Modern browsers tend to do it pretty well. |
The bug
In the map view the country names in complex and RTL scripts are rendered improperly on the web. It seems that the script just renders unicode codepoints without passing it through some kind of text rendering engine like harfbuzz which is crucial to display text correctly. The problem is not present in Android app, only in the web view regardless of the web browser (Firefox or Chromium) used to access immich.
The OS that Immich Server is running on
Gentoo
Version of Immich Server
v1.113.1
Version of Immich Mobile App
n/a
Platform with the issue
Your docker-compose.yml content
Your .env content
Reproduction steps
...
Relevant log output
No response
Additional information
No response
The text was updated successfully, but these errors were encountered: