mirror of
https://github.com/boykopovar/AnyPS5.git
synced 2026-10-31 12:35:51 +00:00
A string created from a text source in the default horizontal form (0x10) reported 0x10. TEKKEN: DARK RESURRECTION (PPSA31371) passes the reported form to sceFontCreateWritingLine, which only accepts 0x11 and 0x12, so the call failed and the layout width was 0. On firmware 13.42 sceFontCreateString decides the direction for a default-form source and sceFontStringGetWritingForm returns the stored form. The string gets 0x12 when its first strong character is left to right, 0x11 when it is right to left, and 0x12 when it has none. Left-to-right and right-to-left marks count as strong, embeddings and overrides do not, and text between an isolate initiator and its PDI is skipped. Explicit 0x11 and 0x12 sources keep their form. The test follows the table reported on the pull request. Which characters are strong is decided by Unicode block ranges here, not by the full bidi class tables.