SAB 6.0.2 Windows 10 scaling problem

I’ve updated SAB for the first time in a few months, and I find the scaling of text in the SAB window has a problem - it’s way to small to read. I’m on Windows 10 on a 3200 x 1800 screen and 200% scaling, which always worked on other versions of SAB. If I change the windows scaling parameter in windows settings, it changes everything else but SAB remains the same small size.

Instead of scaling to 200% change the Display resolution to 1600 x 900 or something close to that.

If you want I can change this to a Feature Request. So that Scaling works.

Thanks, yes please do make this a feature request - as switching screen resolutions for one application isn’t ideal. I never had problems with scaling of SAB before, so something has broken it either in recent Windows 10 updates or in SAB 6.x

I just installed SAB 6.2 (Feb 2020) and I’ve still got a screen scale problem. I use a 4K laptop screen, and by default have everything show at 300%, but everything is still extremely small in SAB. Text is probably the equivalent to 0.25 font size (notice the settings tabs in SAB, compared with Windows settings on the left)

If I had an external monitor I think I could set it to a lower screen resolution and just use SAB on that external monitor.
Is there a work around to make SAB display larger?

I found this elsewhere. But I don’t have the 4k screen to test with.

Windows 10, however, possibly has a fix. Right click on the Scripture App Builder program, choose Properties, click the compatibility tab and select “disable display scaling on high DPI settings.”

But I don’t have a compatibility tab showing in my properties.

A little more investigation, You do have a Compatibility tab if you right click on the Javaw.exe that is the exe that runs SAB.

You might have multiple javaw.exe files on your computer. So you have to get the one that runs SAB.

Again untested as I can’t test.

Ian,
When I click on the SAB icon, it’s shortcut points to “C:\Program Files (x86)\SIL\Scripture App Builder\bin\scripture-app-builder.jar”, so for a .jar I don’t get the same options that I would get for compatibility for an .exe.

I will look around and see if I can find which Javaw.exe is the one that runs SAB. But could you give some pointers on which folder it might be located in?

Maybe:

  • C:\programs\javafx\bin\javaw.exe
  • C:\Program Files\Amazon Corretto\jdk1.8.0_212\bin\javaw.exe
  • C:\Program Files\Amazon Corretto\jdk1.8.0_212\jre\bin\javaw.exe

If you Click on Windows (Start) buton and type : environment
And click on Edit system environment variables.
Click on the Environment Variables button
Look for JAVA_HOME
Use that path and add \bin to the end of that path and that is the one you want.

Ian, thanks for the tip because my SAB icon just launches scripture-app-builder .jar which doesn’t have DPI compatibility settings.
A quick search and I found 7 copies of javaw.exe on my C drive, so I tried adjusting compatibility settings one file at a time, starting with what looked like the latest version of javaw.exe and relaunching SAB to see which one worked. Adjusting the files in the (x86) folders had no effect. The one that worked was located in
C:\Program Files\Java\jre1.8.0_221\bin

In that folder right click on javaw.exe, then select Properties, then select Compatibility tab.


On the DPI settings window I tried several different options, but what worked for me was check the box at the bottom that says “Override high DPI scaling behavior” and set Scaling performed by Application. Then select OK and Apply before restarting SAB.

Before this fix, all the SAB menus were so tiny I couldn’t read anything.
After the compatibility DPI fix, now I can read the menu and settings options.
I hope this works for others with high resolution monitors.

@Andy_Weathers that is great.

Does that path match with your JAVA_HOME Environment variables path except for the bin part?

I’m not sure where to find my JAVA_HOME Environment variables, but I do know that when I edited the other javaw.exe it didn’t work, and for this one once I set the DPI compatibility then it did work.

Here is an example of what SAB displays like now (readable font size):

I don’t have a JAVA_HOME on the list, so maybe I don’t have something installed correctly on this computer. We’ll see when I try to build an app the next couple of days!

Back a few posts I edited my post to say how to get the environment variable one way.

Or you can open a cmd prompt.
[In Windows Explorer click in the area highlighted yellow below and type cmd]
image
Type in the window C:\Windows\System32\cmd.exe set java press enter and it will tell you the JAVA_HOME path.

Andy if you open a Command prompt. See my last post, and type in where java what do you get?

It looks like mine is not set yet:

I can understand if you are getting tired of this.

But could you check from a command prompt:

reg query "HKLM\SOFTWARE\JavaSoft\Java Runtime Environment\1.8" /v JavaHome

I pasted that into a command prompt and got this:


So yes, it does nearly match the javaw.exe that I had adjusted the DPI settings for (the only difference is the \bin):
C:\Program Files\Java\jre1.8.0_221\bin

So my recommendation for others with DPI problems on high rez screens (like my 4k screen) is to run the reg query that Ian mentions above, then look for the javaw.exe in that \bin folder. Then right click on it and change the Compatability, DPI settings, as in the javaw.exe image I pasted above. (9th post in this thread)
You’ll want to check the box for Override hight DPI scaling behavior, and set to performed by: Application.

@mcquayi I’m not sure if this should be a new thread, but after our previous fix for a 4k screen, I can read everything well EXCEPT for the app expiration date :
Error%20App%20expires%20calendar
I’m not bothered that I can’t see the whole calendar BUT I’m NOT allowed to type in a date either. Please allow users to type in a date, or at least add a button to advance the day. Currently the arrows at the top advance the month, but there is no way to select any days other than select 1-9 for the month of April.
Can you propose any other work around?
I’m not sure if it is a bug or not, but the tiny calendar stays visible until the 3 dots are clicked that opened it, even if I move to different tabs in SAB.

@Andy_Weathers @Phil_M,

Do you have HighDPI monitors with Windows? Was this still a problem with SAB 10 (and Java 11)?

FYI, SAB 11.0 comes out today and is using Java 17. I would like to see what the state of this issue is.

Thanks,

Chris