mIRC Home    About    Download    Register    News    Help

Print Thread
Windows Font Scaling #264067 26/10/18 11:22 AM
Joined: Apr 2016
Posts: 6
D
dylix Offline OP
Nutrimatic drinks dispenser
OP Offline
Nutrimatic drinks dispenser
D
Joined: Apr 2016
Posts: 6
Was this issue ever addressed? I have a 4k monitor and a 1080p.. The 4k monitor uses text size 150%, the other is 100%, but it effects mirc on my other monitor. The fonts look very strange.. https://i.imgur.com/77jTh4E.png

Re: Windows Font Scaling [Re: dylix] #264068 26/10/18 03:14 PM
Joined: Aug 2003
Posts: 246
P
Protopia Offline
Fjord artisan
Offline
Fjord artisan
P
Joined: Aug 2003
Posts: 246
It doesn't look that bad to me except perhaps for slight fuzziness on the menu.

As well as spelling out what the issue is, you need to provide more details of e.g. your windows version, your windows scaling settings and your mIRC version.

Last edited by Protopia; 26/10/18 03:20 PM.
Re: Windows Font Scaling [Re: dylix] #264069 26/10/18 06:33 PM
Joined: Dec 2002
Posts: 4,587
Khaled Offline
Hoopy frood
Offline
Hoopy frood
Joined: Dec 2002
Posts: 4,587
There have been a number of DPI-related changes to improve support for scaling, multiple monitors, and so on, over the last few versions. In your case, it looks like the menubar has been scaled up, which is why the font is fuzzy.

mIRC currently uses <dpiAware>true</dpiAware> in the manifest file to enable DPI awareness, however it seems that for multiple monitors, an application needs to use <dpiAware>true/pm</dpiAware> for per monitor DPI awareness. I have added this to the next version. That said, it is not clear what the side-effects of this will be.

There is also a newer <dpiAwareness> element for Windows 10 that supports a "permonitorv2" option, however when I tested that under Windows 10, it caused MDI windows to be drawn incorrectly, so it does not look like it is an MDI-ready solution at this time.

Re: Windows Font Scaling [Re: Protopia] #264070 27/10/18 01:22 AM
Joined: Apr 2016
Posts: 6
D
dylix Offline OP
Nutrimatic drinks dispenser
OP Offline
Nutrimatic drinks dispenser
D
Joined: Apr 2016
Posts: 6
win10.1607 14392.2580 (enterprise ltsb)

mirc 7.52

windows scaling? 150% on one monitor 100% on the other

@khaled cool, I'll wait for the new version and see how it goes

Re: Windows Font Scaling [Re: dylix] #264076 27/10/18 11:18 PM
Joined: Apr 2016
Posts: 6
D
dylix Offline OP
Nutrimatic drinks dispenser
OP Offline
Nutrimatic drinks dispenser
D
Joined: Apr 2016
Posts: 6
I tried the beta version, and now it doesnt change scaling at all when i move it between monitors..

everything is oversized, compared to another window..
https://i.imgur.com/6D1l498.png

Re: Windows Font Scaling [Re: dylix] #264086 28/10/18 08:13 AM
Joined: Dec 2002
Posts: 4,587
Khaled Offline
Hoopy frood
Offline
Hoopy frood
Joined: Dec 2002
Posts: 4,587
Thanks for testing this. This is indeed odd. The extra setting in the manifest file should have made Windows apply the correct scaling settings. I have just tested mIRC again with the "permonitorv2" but this time I logged out and logged in again and the MDI issue seems to have gone. So it looks like logging out/in is necessary to make this work correctly, even though it looks like it changes immediately. I will add the "permonitorv2" to the next beta.

Update: I am not convinced that "permonitorv2" will resolve your issue. I have tested various combinations of manifest file flags as well as DPI-related API calls and it is very difficult to get the right balance of expected UI scaling, window scaling, text scaling, and so on. We shall have to see if the "permonitorv2" option helps in the next beta. If it does not, it looks like we will need to revert to the v7.52 settings for the time being.

Last edited by Khaled; 28/10/18 10:49 AM.
Re: Windows Font Scaling [Re: dylix] #264106 28/10/18 08:05 PM
Joined: Dec 2002
Posts: 4,587
Khaled Offline
Hoopy frood
Offline
Hoopy frood
Joined: Dec 2002
Posts: 4,587
After more testing at different DPI settings on two monitors, it does not look like this is currently solveable. The issue appears to be due to incomplete Windows support for MDI windows when the DPI per monitor options in the manifest file are enabled. When these are enabled, Windows 10 is sizing the height of the non-client area/menubar/min/max/close buttons, which are beyond mIRC's control, differently depending on whether a client window is maximized/restored. For now, I will be reverting to the v7.52 manifest settings and will look into this again later in the hope that Microsoft fixes it in an update.

Re: Windows Font Scaling [Re: Khaled] #264117 29/10/18 12:47 PM
Joined: Apr 2016
Posts: 6
D
dylix Offline OP
Nutrimatic drinks dispenser
OP Offline
Nutrimatic drinks dispenser
D
Joined: Apr 2016
Posts: 6
Here is what did work...

The solution:
Have the app tell Windows that it is not DPI aware and let it scale everything properly. (Granted, this is not the ideal solution, but it does make the app usable again)

  • Press Windows Button + R, type “regedit”, and then click OK.
  • Navigate to the following registry subkey:
    HKEY_LOCAL_MACHINE > SOFTWARE > Microsoft > Windows > CurrentVersion > SideBySide
  • Right-click, select NEW > DWORD (32 bit) Value
  • Type PreferExternalManifest, and then press ENTER.
  • Right-click PreferExternalManifest, and then click Modify.
  • Enter Value Data 1 and select Decimal.
  • Click OK. Exit Registry Editor.



mirc.exe.manifest
Code:
<?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">

<dependency>
  <dependentAssembly>
    <assemblyIdentity
      type="win32"
      name="Microsoft.Windows.Common-Controls"
      version="6.0.0.0" processorArchitecture="*"
      publicKeyToken="6595b64144ccf1df"
      language="*">
    </assemblyIdentity>
  </dependentAssembly>
</dependency>

<dependency>
  <dependentAssembly>
    <assemblyIdentity
      type="win32"
      name="Microsoft.VC90.CRT"
      version="9.0.21022.8"
      processorArchitecture="amd64"
      publicKeyToken="1fc8b3b9a1e18e3b">
    </assemblyIdentity>
  </dependentAssembly>
</dependency>

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

<asmv3:application>
  <asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">
    <ms_windowsSettings:dpiAware xmlns:ms_windowsSettings="http://schemas.microsoft.com/SMI/2005/WindowsSettings">false</ms_windowsSettings:dpiAware>
  </asmv3:windowsSettings>
</asmv3:application>

</assembly>

Re: Windows Font Scaling [Re: dylix] #264119 29/10/18 05:14 PM
Joined: Dec 2002
Posts: 4,587
Khaled Offline
Hoopy frood
Offline
Hoopy frood
Joined: Dec 2002
Posts: 4,587
Thanks, glad to hear that works for you. Unfortunately that setting in fact reverses the support for DPI that mIRC has added over the last few years. I specifically added "dpiAware " as "true" some years to resolve other DPI-related issues. The specific issue you have is due to Windows incomplete support for MDI non-client scaling. This can only be resolved once Microsoft resolves the issue I mentioned in my previous post.