Symptom
Currently, when a PB application is used on a 4K or 8K monitors with Windows DPI greater than 100%, you will see fuzzy fonts. Different monitors and OS DPI settings will result in different display effects.
Environment
PowerBuilder 2017 and above
Cause
This is due to a difference when an application developed on a low resolution monitor is used on a high resolution monitor with OS DPI setting.
Resolution
We suggest that you adopt the following methods to optimize this issue.
1. Change your current application font to a high resolution font.
For example, you can change the default Tahoma font to Segoe UI. Font size 10 or higher is recommended.
2. Add a manifest file and modify the associated settings.
You can choose "External Manifest" in the security tab when generating the exe. At this time, it will generate in the exe folder a file named <applicationame>.exe.manifest. You can add the content below into the generated manifest file:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3"> <asmv3:application> <asmv3:windowsSettings> <dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true</dpiAware> <dpiAwareness xmlns="http://schemas.microsoft.com/SMI/2016/WindowsSettings">PerMonitorV2</dpiAwareness> </asmv3:windowsSettings> </asmv3:application> </assembly>
Here is the effect comparison before and after applying the solution: