It seems that when Microsoft deployed their latest versions of Office, they forgot to adjust the DPI (dots per inch) settings for PowerPoint rendering the menus on second monitors extremely large.  With the menu and its fonts so large, the design space on a secondary monitor is very limited, if not useless altogether.

Take a look at the two images comparing PowerPoint’s menu to that of Word’s (same monitor/resolution).

PowerPoint
powerpoint-large
Word
word-normal

The great news is that it’s an easy fix.

To handle compatibility issues such as these, Microsoft’s applications use a manifest file.  We simply need to update PowerPoint’s manifest file to disable the feature dpiAware.

  1. Open NotePad as an Administrator (right-click on NotePad and choose “Run as Administrator” from the context menu)
  2. In NotePad, open the file “C:\Program Files (x86)\Microsoft Office\root\Office16\powerpnt.exe.manifest” (note: this is the path for Office 2016, but Office 2015 and older would be similar)
  3. Around line 27, you’ll see the following:
    <dpiAware>True/PM</dpiAware>
  4. Change it to:
    <dpiAware>False</dpiAware>
  5. Save the file and restart PowerPoint

Voila!

PowerPoint Fixed
powerpoint-normal

 

BONUS!

You can also apply the same fix to other applications. (But, you’ll need to tell Windows to look for the manifests.)

  1. Open up the registry editor (run regedit.exe)
  2. Navigate to Computer -> HKEY_LOCAL_MACHINE -> SOFTWARE -> Microsoft -> Windows -> CurrentVersion -> SideBySide
  3. In the right pane, right-click in the empty area and choose New -> DWORD (32-bit) Value
  4. Type PreferExternalManifest and press ENTER
  5. Right-click on PreferExternalManifest and choose Modify
  6. Type 1 and click OK
    preferexternalmanifest-registry
  7. Exit the registry editor
  8. Now, for whichever program you are using that has resolution issues:
    1. Find that application’s executable file (e.g. for Photoshop, “C:\Program Files\Adobe\Adobe Photoshop…\Photoshop.exe”)
    2. In the same directory, create a new text file with the same name and append “.manifest” (e.g. Photoshop.exe.manifest)
    3. Open the file and add the following 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>
    4. Save the file and restart your application

Like What You See?

Subscribe to receive new posts in your inbox.

Privacy Preference Center