Bug 269186 - REGRESSION (iOS 17.3): Unicode characters with "variation selectors" are not rendered in the iPhone Safari browser (webkit) with iOS 17.3
Summary: REGRESSION (iOS 17.3): Unicode characters with "variation selectors" are not ...
Status: RESOLVED WORKSFORME
Alias: None
Product: WebKit
Classification: Unclassified
Component: Text (show other bugs)
Version: Safari 17
Hardware: iPhone / iPad iOS 17
: P2 Major
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2024-02-12 03:57 PST by jeffreyx
Modified: 2024-03-07 15:04 PST (History)
4 users (show)

See Also:


Attachments
Screen capture from an issue case in iOS 17.3 (bad) (13.28 KB, image/jpeg)
2024-02-12 03:57 PST, jeffreyx
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description jeffreyx 2024-02-12 03:57:18 PST
Created attachment 469819 [details]
Screen capture from an issue case in iOS 17.3 (bad)

Environment: iPhone 14/15, iOS 17.3


Description: Unicode characters with "Variation Selectors Supplement" code can be rendered correctly in all iPhone before iOS 17.3 . But in iOS 17.3, these characters become "blank" in iPhone.
Fonts with Variation Selectors are used for displaying alternative Chinese characters reprensenting different pronoucation and different stroke styles.


Issue URL(HTML version of this bug report):
https://toneoz.com/ivsdemo/index.html
https://forums.developer.apple.com/forums/thread/746406


Screen capture from an issue case in iOS 17.3 (bad):
https://toneoz.com/ivsdemo/bad.jpg


Screen capture from a good case in other OS (good):
https://toneoz.com/ivsdemo/good.jpg


Reproduce steps:
1. Download a "Variation Selectors" supported TTF font
https://github.com/ButTaiwan/bpmfvs/releases/download/v1.400/BpmfZihiKaiStd.zip
2. Unzip the ttf font file "BpmfZihiKaiStd-Regular.ttf" from the zip to a folder
3. In the same folder, create an file "index.html" with the following content:
<head>
<meta charset="utf-8">
<style>
@font-face { font-family: zihaibpmf; src: url('BpmfZihiKaiStd-Regular.ttf'); }
</style>
</head>
<body>
<table class="redboder" border>
<tr><td>
Unicode Text
</td><td style="font-family:zihaibpmf;">一</td><td style="font-family:zihaibpmf;">一󠇡</td><td style="font-family:zihaibpmf;">一󠇢
</td></tr><tr><td>	 
Unicode Hex Code</td><td>
0x4E00</td><td>0x4E00 0xE01E1</td><td>0x4E00 0xE01E2
</td></tr>
</table>
</body>
		
4. Upload the files to a web server
5. Browser the "index.html" with an iOS 17.3 iPhone 14 or 15
6. There should be a character displayed in each table cells. But with iOS 17.3, two of the cells are blank.


Reference: opensource IVS TTF font github: "BpmfZihiKaiStd" TTF Font file download : https://github.com/ButTaiwan/bpmfvs/releases/download/v1.400/BpmfZihiKaiStd.zip

"Variation Selectors Supplement" is supported by all other OS (Windows, Android, Linux, old iOS, macOS), see :

wiki : Variation Selectors Supplement https://en.wikipedia.org/wiki/Variation_Selectors_Supplement

wiki : Variant form (Unicode) https://en.wikipedia.org/wiki/Variant_form_(Unicode)

...Variation Selectors Supplement is a Unicode block containing additional variation selectors beyond those found in the Variation Selectors block. These combining characters are named variation selector-17 (for U+E0100) through to variation selector-256 (U+E01EF), abbreviated VS17 – VS256.
Comment 1 Radar WebKit Bug Importer 2024-02-12 05:55:56 PST
<rdar://problem/122795690>
Comment 2 Smoley 2024-03-07 15:04:59 PST
Thanks for filing, this does not reproduce for me on iOS 17.4 (21E219)