-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
Kannada characters not rendering correctly #2654
Comments
I think this is missing some steps - didn't you have to type something into one of the fields? It would be helpful to get the characters so we can replicate correctly. |
Yes. The issue happens once you start typing couple of Kannada (IN_Kn) characters. I use ibus-m17n engine with itrans keyboard layout for Kannada, in order to type the characters. An Example string in Kannada could be - ಕನ್ನಡ ಒಂದು ಸುಂದರ ಭಾಷೆ |
Is the font you are using this one: https://github.com/aravindavk/Gubbi? |
Yes.. Do you see an issue in the font? |
It would be good if you could outline the specific steps required to replicate the crash - that way I can know if we have fixed the problem, |
|
Today I retried again and the app hung instead of crashing. When I tried running again, it went fine. In all the cases, the font rendering is not proper too. |
Just for posterity this was the code that created the screenshot above: package main
import (
"fyne.io/fyne/v2"
"fyne.io/fyne/v2/app"
"fyne.io/fyne/v2/container"
"fyne.io/fyne/v2/data/binding"
"fyne.io/fyne/v2/widget"
)
func main() {
a := app.New()
w := a.NewWindow("Hello")
str := binding.NewString()
str.Set("ಕನ್ನಡ ಒಂದು ಸುಂದರ ಭಾಷೆ")
e := widget.NewEntryWithData(str)
w.SetContent(container.NewVBox(
widget.NewLabelWithData(str),
e,
))
w.Resize(fyne.NewSize(180, 20))
w.ShowAndRun()
} |
Hi, thanks for trying it out. As I mentioned in my last comment, I couldn't reproduce the crash error due to slice size, again. Now, the only issue that remains is the font rendering. You can easily compare the rendered output in the fyne app and how it renders in the github in the code snippet that you posted. I mean, the value of str.set(...) method. We may close this issue, if font-rendering is a separate problem space. |
It is not as easy as you think - the string rendered in GitHub is system dependent, I do not normally have "Gubbi" font running, so I just see squares. If you want to compare rendering output please post screenshots so we can see exactly what you expect. |
Sorry about that! i missed the point. Please find the screenshot of the Kannada font rendering for your reference. You may compare it with #2654 (comment) to understand the rendering issue. |
Ah, thank you. I now understand that this is a shaping issue. |
Cool! So, it might not be a direct fyne issue here right? If so, we can close the issue. 👍🏽 |
Oh the fix needs to be in Fyne, but the problem is a large one and we are collaborating on the solution :). |
This was fixed in v2.3.0 :) |
Actually this may not yet be sorted - the rendering is in, but we have to set the region for shaping to work well - making it part of a wider localisation work in future release :( |
Thanks for taking it up @andydotxyz |
Please do test our |
Hi @andydotxyz. Thanks for the update. I tried it with "develop" branch using go version 1.20.6. The results are still the same. |
OK, sorry about that. We will have to get the region hinting in then as part of the internationalisation work, which didn't make it into v2.4.0 |
Thanks @andydotxyz. Let me verify it in my local system. |
|
Thanks for confirming :) |
Describe the bug:
I was following the example given at https://developer.fyne.io/tour/binding/twoway. I changed my keyboard layout to Kannada-itrans. I'm using Ubuntu 20.04 LTS 64 bit system and have install ibus-m17n and fonts-indic packages. While running the application via
go run main.go
, after typing couple of characters, the application crashed with the following error.To Reproduce:
Steps to reproduce the behaviour:
export FYNE_FONT=/usr/share/fonts/truetype/Gubbi/Gubbi.ttf
go run main.go
Screenshots:
Example code:
Device (please complete the following information):
The text was updated successfully, but these errors were encountered: