-
Notifications
You must be signed in to change notification settings - Fork 543
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
[BUG] iOS 18 Chinese rendering bug #3029
Comments
I've just added a CoreGraphics part to test repo (https://github.com/cho-trackman/SkiaIos18Bug), but also realized that maybe it should have been done in CoreText to reflect how Skia is drawing (I don't know). |
Can you try the latest preview 3.118? I wonder if there has been an update in the engine. Are you able to also try Mac Catalyst and see if this is an iOS vs Apple issue. Also, was this a device or a simulator? Can you try using SkiaSharp.HarfBuzz and see if shaping makes a difference? Maybe even have a look at RichTextKit. I know this is not ideal, but it will help narrow down where the issue is coming from. Maybe it is the fact that iOS 18 does not like something, or maybe there is some other issue that the other 2 libraries work around because they do more advanced text processing (more similar to the UILabel and CoreGraphics) Also, what happens if you remove the Chinese character? The character might be causing an issue somehow. |
If you ask me, what is to investigate here is how the PingFang SC font changed, the one shipped with iOS 18. An example of this is when you pass an emojy to a system label and specify a font where it doesn't exist. A normal behavior for such control would be to find an installed font where this glyph is present and render it. If you do same with skia low-level So one probability is if that glyph is missing from PingFang SC shipped with iOS 18 this issue is to be closed. To be able to render complex text with emojies and such glyphs without worrying about what font to use when glyph is missing some would use RichTextKit, some would use DrawnUI |
Just tested on |
Don't mix up Unicode and ASCII. |
I just stumbled upon this thread https://forums.developer.apple.com/forums/thread/758189.
|
This must be the issue: |
Description
I've experiencing this regression on iOS 18 when drawing the degree symbol °.
iOS 17.5
iOS 18.0
Code
Simple project to reproduce: https://github.com/cho-trackman/SkiaIos18Bug
Expected Behavior
A normal looking degree symbol (°). It works on all iOS versions prior to 18. It also works in Japanese and Korean on iOS 18.
Actual Behavior
You'll see different character than a degree symbol.
Version of SkiaSharp
2.88.8 (Current)
Last Known Good Version of SkiaSharp
Other (Please indicate in the description)
IDE / Editor
Other (Please indicate in the description)
Platform / Operating System
iOS
Platform / Operating System Version
iOS/iPadOS 18.0
Devices
No response
Relevant Screenshots
No response
Relevant Log Output
No response
Code of Conduct
The text was updated successfully, but these errors were encountered: