[okular] [Bug 484303] New: On high DPI screens, text on UI controls is too small to read

Peter Meilstrup bugzilla_noreply at kde.org
Sat Mar 23 06:56:48 GMT 2024


https://bugs.kde.org/show_bug.cgi?id=484303

            Bug ID: 484303
           Summary: On high DPI screens, text on UI controls is too small
                    to read
    Classification: Applications
           Product: okular
           Version: 23.08.4
          Platform: Microsoft Windows
                OS: Microsoft Windows
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: general
          Assignee: okular-devel at kde.org
          Reporter: peter.meilstrup at gmail.com
  Target Milestone: ---

Created attachment 167637
  --> https://bugs.kde.org/attachment.cgi?id=167637&action=edit
Showing too small UI text before and after correction

SUMMARY

On high DPI screens where UI scale is set to 200%, text on UI controls and
popup menus is too small to read.

STEPS TO REPRODUCE
1. Okular 23.08.04 is installed from from the windows store.  
2. Using a 4k display, and have Scaling in Windows
Settings>System>Display>Scale is set to 200%.
3. Launch Okular.

OBSERVED RESULT

Labels on buttons/toolbar controls and popup menus is too small to read (see
attached screenshot, upper half.)

EXPECTED RESULT

(see screenshot, lower half)

SOFTWARE/OS VERSIONS
Windows:
    Edition     Windows 11 Pro
    Version     23H2
    Installed on        ‎12/‎8/‎2023
    OS build    22631.3296
    Experience  Windows Feature Experience Pack 1000.22687.1000.0

Okular: Okular reports its version as 23.08.04, The Windows Store app reports
the installed version as 23.801.1522.0.

ADDITIONAL INFORMATION

I have found a way to correct the issue by manually updating the application
manifest information.

1. Install the Windows SDK. Then locate the program `mt.exe`. On my system it
is located at `C:\Program Files (x86)\Windows
Kits\10\bin\10.0.22621.0\x64\mt.exe`.

2. At an administrator prompt, use `mt.exe` to extract the manifest from the
okular binary. I used the commands:

        cd "C:\Program Files\Okular\bin"
        "C:\Program Files (x86)\Windows Kits\10\bin\10.0.22621.0\x64\mt.exe"
"-inputresource:okular.exe;#1" -out:okular.manifest

    Examine the resulting file `okular manifest`. I found:

  <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel level="asInvoker"
uiAccess="false"></requestedExecutionLevel>
      </requestedPrivileges>
    </security>
  </trustInfo>
</assembly>

 3.  Edit `okular.manifest` to inludes a dpi awareness setting. After editing,
mine looked like this:

```{html}
<?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">
  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel level="asInvoker"
uiAccess="false"></requestedExecutionLevel>
      </requestedPrivileges>
    </security>
  </trustInfo>
  <asmv3:application>
    <asmv3:windowsSettings
xmlns="http://schemas.microsoft.com/SMI/2016/WindowsSettings">
      <dpiAwareness>system</dpiAwareness>
    </asmv3:windowsSettings>
  </asmv3:application>
</assembly>
```

4. Make a backup of `okular.exe`, then apply the changed manifest back to the
okular binary. I ran:

    "C:\Program Files (x86)\Windows Kits\10\bin\10.0.22621.0\x64\mt.exe"
-manifest okular.manifest "-updateresource:okular.exe;#1"

After relaunching Okular, it now shows reasonable font sizes in its UI.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the Okular-devel mailing list