Text Size In Designer: Version 8

Have seen a similar topic here, but it doesn’t seem to relate to my issue.

Recently upgraded to version 8, and the font in Designer is almost too large to be useable on my display.

For reference, I’m using a Windows Laptop, running Windows 10, with 1920x1080 resolution, and app font size at 100% (the lowest available option.)

A screenshot is attached of what I’m talking about.

In ‘project properties’ I see font options. Not sure if this is for the Designer, across all projects, or if this is simply for default font size of components in that project. Can’t test it and find out, because when I try to change them and apply the changes I get this error:

java.lang.NullPointerException
at com.inductiveautomation.factorypmi.application.FPMIApp.updateResources(FPMIApp.java:372)
at com.inductiveautomation.factorypmi.designer.model.VisionDesignerImpl$DesignableProjectListener.updateResources(VisionDesignerImpl.java:1757)
at com.inductiveautomation.factorypmi.designer.model.VisionDesignerImpl$DesignableProjectListener.resourcesCreated(VisionDesignerImpl.java:1698)
at com.inductiveautomation.ignition.common.project.AbstractProject.notifyResourceListeners(AbstractProject.java:335)
at com.inductiveautomation.ignition.common.project.AbstractProject.updateEffectiveState(AbstractProject.java:151)
at com.inductiveautomation.ignition.designer.project.DesignerProjectTreeImpl.updateEffectiveState(DesignerProjectTreeImpl.java:84)
at com.inductiveautomation.ignition.designer.project.DesignerProjectTreeImpl.createResource(DesignerProjectTreeImpl.java:188)
at com.inductiveautomation.ignition.designer.project.DesignableProject.createOrModify(DesignableProject.java:143)
at com.inductiveautomation.ignition.designer.propertyeditor.PropertyEditorDialog.doApply(PropertyEditorDialog.java:101)
at com.inductiveautomation.ignition.designer.propertyeditor.PropertyEditorDialog$DialogPane.doApply(PropertyEditorDialog.java:358)
at com.inductiveautomation.ignition.designer.gui.AbstractMultiPageDialogPane$2.actionPerformed(AbstractMultiPageDialogPane.java:60)
at java.desktop/javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at java.desktop/javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.desktop/java.awt.Component.processMouseEvent(Unknown Source)
at java.desktop/javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.desktop/java.awt.Component.processEvent(Unknown Source)
at java.desktop/java.awt.Container.processEvent(Unknown Source)
at java.desktop/java.awt.Component.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Window.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)

Ignition v8.0.0 (b2019040718)
Java: Azul Systems, Inc. 11.0.2

Try adding -Dsun.java2d.uiScale=1.0 to the launch options in your designer launcher configuration.

would that be in the ‘JVM arguments’ in general settings? Based on the tooltip, that seems like the place, however, it does not seem to fix my issue.

We seem to be having other issues with font support… or something, with Ignition V 8. A brand new, stock windows 10 computer was located in our control room, for the purposes of displaying alarm information. During our use of version 7.9.10, we had no issues, after upgrading, I noticed that the vision client launcher seems to be mis-displaying the descriptions of the projects. If a project is clicked on, the description is good, but the login text fields and buttons now have their text mangled. This is a different computer than the one that I uploaded the previous images from.

This “garbled” font thing is a known issue and should be fixed in 8.0.1: [BUG] Username text

Hi all,

Sorry to have let this thread lapse only to bring it back from the dead…

So back in April we rolled ourselves back to Version 7. Later that year, in November, we started in again on upgrading to 8, now that the initial bugs had been ironed out.

Suddenly, in the last week, I’ve been seeing this same UI problem that occurred almost immediately back in April '19.

To clarify, the issue is not that the font is ‘too big’. The issue is that Ignition is not sizing its UI appropriately to handle the size of the font. See the above screenshots of the one I’m attaching now. Again, many items on a list are cut in half because their fontsize is not accomodated by the space Ignition gives each list item. Windows are small and crowded because of how much space is taken up by the expanded text, And some functionality is almost not accessible, as can be seen with the ‘delete pen’ button which is almost completely obscured below the bottom of its container.

Is there any idea what could be causing this?

To reitereate, “adding -Dsun.java2d.uiScale=1.0 to the launch options in your designer launcher configuration.” did not fix the font issue. I set it to 0.5, and all it did was shrink every window size, while leaving the underlying object/container size mismatch in place.

What is the Windows DPI setting at? Looks like it’s not at 100% or 200% but is instead some kind of fraction. I think that’s supposed to work… but maybe there’s a bug.

Kevin, thanks for the quick response.

I need more information. Are you referring to Windows OS or the windows of the Designer app? In either case where do I find that setting, how do I change it, and what should I change it to?

The Windows OS.

Fixed:

It does seem to be a Windows OS issue. When I navigated to Display Settings, there was no status or control for DPI setting, just an easily missed line that says when I log out and in again, the option to view and change that setting will be present (thanks Windows 10).

I don’t really change my resolution around, and it was the exact same as it was after the logout/login. If I had to guess the cause, it would me porting my laptop around from place to place and plugging into spare monitors to get a little more space on my display.

That’s very irritating. Doesn’t noticeably affect any other programs running on my windows box, would it be possible to teach Ignition to play well with whatever is happening on the OS?

It’s more of a Java issue, less of an Ignition issue. It’s plausible that some future Java version would improve things, but I wouldn’t hold your breath. Java >=9 (Ignition 8 is using Java 11) is already a huge improvement over Java <=8, where higher DPI would be completely ignored, so a 4k monitor would render all text at hilariously small sizes.

@PGriffith is right that it’s a Java thing, but I’m surprised it doesn’t work at fractional DPI percentages.

If you feel like playing around with it, try fractional DPI settings (i.e. not 100% or 200%) followed by a reboot. Maybe it doesn’t quite take effect without it.

@PGriffith Please has any more work been done with this issue? My designer is essentially unusable in this state. Unfortunately the setup we have been given involves RDPing over a VPN into our headless production server to do development. All tables have the bottom of their text chopped off so any character that hangs out at the bottom of the table IE commas, periods, underscores, etc. are completely invisible. I understand Java 8 was worse but I really could use an actual solution here. thank you in advance.

Hardcoding the UI scale in the designer launcher is still probably your best bet:

The next 8.1 release is going to have an updated build of the Java Swing 'look and feel' that fixes a variety of issues - we didn't explicitly test high DPI or fractional scaling, but it's possible the LaF itself was changed to work better on high DPI setups.