dotnet / wpf

WPF is a .NET Core UI framework for building Windows desktop applications.
MIT License
7.06k stars 1.17k forks source link

Persian/Arabic Language string Problem #9381

Closed vsfeedback closed 3 months ago

vsfeedback commented 3 months ago

This issue has been moved from a ticket on Developer Community.


[severity:I'm unable to use this version] [regression] [worked-in:17.9.5] as you can see in the image I attached, the letter 'گ' in persian or arabic in strings are look like this. you can test it by adding persian keyboard and press double quotation ("). It is happening from version before this one. I thought you know and fix it fast. I have tested on 3 computers with 2 of them windows 10 and this one is 11. all the thing on latest versions available. ss1 ss2


Original Comments

Feedback Bot on 5/20/2024, 11:27 AM:

(private comment, text removed)

Feedback Bot on 5/21/2024, 02:40 PM:

(private comment, text removed)

Ali Jebali on 5/21/2024, 05:29 PM:

(private comment, text removed)

Ali Jebali on 5/22/2024, 08:59 PM:

(private comment, text removed)

Oleg Tkachenko [MSFT] on 7/2/2024, 06:52 AM:

(private comment, text removed)

Faraz Pourafshin on 7/2/2024, 02:33 PM:

(private comment, text removed)

Ali Jebali on 7/2/2024, 04:33 PM:

(private comment, text removed)

Oleg Tkachenko [MSFT] on 7/2/2024, 10:55 PM:

(private comment, text removed)

Ali Jebali on 7/3/2024, 00:40 AM:

(private comment, text removed)

Ali Jebali on 7/3/2024, 00:42 AM:

(private comment, text removed)

Faraz Pourafshin on 7/3/2024, 00:07 PM:

(private comment, text removed)


Original Solutions

(no solutions)


Additional information

With this code: <TextBlock FontFamily="Cascadia Mono">عنوان انگلیسی</TextBlock>

  1. On Windows 10, both VS and sample WPF app render گ correctly: 1 2

  2. On Windows 11 both VS and sample WPF app render گ incorrectly. This is the bug: 3 4

Increasing font size fixes rendering issue on Windows11: 5

miloush commented 3 months ago

Now that is an exciting bug!

miloush commented 3 months ago

Also familiar, I think I saw a similar thing before. Either way, I can reproduce and this is nothing WPF can resolve. Most likely will go to the font.

miloush commented 3 months ago

Don't be distracted by the Win 10, that clearly fallbacks to a different font.

miloush commented 3 months ago

I filed https://github.com/microsoft/cascadia-code/issues/757

miloush commented 3 months ago

This seems to have been fixed already: https://github.com/microsoft/cascadia-code/issues/743

aliajboy commented 2 months ago

Hi miloush It isn't fixed! here is an image of problem in VS2022 17.10.5 in Windows 11 23H2 22631.3958 Screenshot 2024-08-03 145441

miloush commented 2 months ago

What version of the font do you have?

skycommand commented 2 months ago

@miloush It doesn't matter. The version affected by this bug is 2404.23, which also happens to be the latest version of the Cascadia Code font. Microsoft has not yet released a newer version to include the fix. Before saying, "it isn't fixed," one must either wait for a newer version or compile the font oneself.

aliajboy commented 2 months ago

skycommand Thanks for your fast response. if Microsoft release newer version, will it update automatically with windows update? what will happen if I downgrade? (Can I?)

skycommand commented 2 months ago

@aliajboy None of the Microsoft products that ship Cascadia Code use Windows Update. Windows Terminal is updated via Microsoft Store. Visual Studio is updated via its dedicated installer.

Visual Studio is a traditional desktop app, meaning that it would install Cascadia Code directly into the Windows\Fonts folder. Even if you downgrade Visual Studio, you can always keep the desired version of Cascadia Code. Use the Settings app to remove Cascadia Code and Cascadia Mono. After that, download a later version from GitHub and install it manually.

Windows Terminal doesn't install the font into C:\Windows\Fonts. Rather, it installs the font into its app silo. In this case, two versions of the same font are on your system. I don't know which one takes precedence.

miloush commented 2 months ago

The issue was fixed by https://github.com/microsoft/cascadia-code/pull/746. It is true a new version of the font has not been released yet, but you need to push at the https://github.com/microsoft/cascadia-code/ repo to do so, this is not a WPF issue and we can't do anything about it here.

Yes you can downgrade. Uninstall the fonts from Windows Fonts and install an older release from the repo above. For the terminal, look into folder similar to C:\Program Files\WindowsApps\Microsoft.WindowsTerminal_1.20.11781.0_x64__8wekyb3d8bbwe\. You should be able to just replace the font files there. Both need admin access. You might be able to install an older version per user only and VS might pick it up.