'Netbeans Scaling on 4K Screen
I got a new 4K Monitor and everything looks amazing but coding with NetBeans is difficult. The controls are very small and a java frame looks very small.
I've seen some Stackoverflow posts about this problem and they said I should add a line in the preferences file so that hi-dpi mode is disabled but my java frame is still small.
Solution 1:[1]
For those who land here like me in 2019.
Currently using Apache Netbeans 11 in a 4k monitor and changing the dpiaware
option has no effect for me.
What worked is adding the option -J-Dsun.java2d.uiScale=2.5
to the file netbeans.conf
just before -J-Dsun.java2d.dpiaware=true
.
The indicted piece of the file:
netbeans_default_options="-J-XX:+UseStringDeduplication -J-Djdk.lang.Process.allowAmbiguousCommands=true -J-Xss2m -J-Djdk.gtk.version=2.2 -J-Dapple.laf.useScreenMenuBar=true -J-Dapple.awt.graphics.UseQuartz=true -J-Dsun.java2d.noddraw=true -J-Dsun.java2d.uiScale=2.5 -J-Dsun.java2d.dpiaware=true -J-Dsun.zip.disableMemoryMapping=true -J-Dplugin.manager.check.updates=false -J-Dnetbeans.extbrowser.manual_chrome_plugin_install=yes -J--add-opens=java.base/java.net=ALL-UNNAMED -J--add-opens=java.base/java.lang.ref=ALL-UNNAMED -J--add-opens=java.base/java.lang=ALL-UNNAMED -J--add-opens=java.base/java.security=ALL-UNNAMED -J--add-opens=java.base/java.util=ALL-UNNAMED -J--add-opens=java.desktop/javax.swing.plaf.basic=ALL-UNNAMED -J--add-opens=java.desktop/javax.swing.text=ALL-UNNAMED -J--add-opens=java.desktop/javax.swing=ALL-UNNAMED -J--add-opens=java.desktop/java.awt=ALL-UNNAMED -J--add-opens=java.desktop/java.awt.event=ALL-UNNAMED -J--add-opens=java.prefs/java.util.prefs=ALL-UNNAMED -J--add-opens=jdk.jshell/jdk.jshell=ALL-UNNAMED -J--add-modules=jdk.jshell -J--add-exports=java.desktop/sun.awt=ALL-UNNAMED -J--add-exports=java.desktop/java.awt.peer=ALL-UNNAMED -J--add-exports=java.desktop/com.sun.beans.editors=ALL-UNNAMED -J--add-exports=java.desktop/sun.swing=ALL-UNNAMED -J--add-exports=java.desktop/sun.awt.im=ALL-UNNAMED -J--add-exports=jdk.internal.jvmstat/sun.jvmstat.monitor=ALL-UNNAMED -J--add-exports=java.management/sun.management=ALL-UNNAMED -J--add-exports=java.base/sun.reflect.annotation=ALL-UNNAMED -J--add-exports=jdk.javadoc/com.sun.tools.javadoc.main=ALL-UNNAMED -J-XX:+IgnoreUnrecognizedVMOptions"
Thanks to ron190 that help us pointing this out:
Use -Dsun.java2d.uiScale=2.5 instead: superuser.com/a/1194728/465745
Solution 2:[2]
Try to edit NETBEAN_HOME\etc\netbeans.conf
and set -J-Dsun.java2d.dpiaware
from true to false.
-J-Dsun.java2d.dpiaware=false
Solution 3:[3]
For those who land here in 2021.
I am using Netbeans 12.4 on Windows 10 and the solutions mentioned here did nothing for me.
What did work was setting the high DPI settings in Compatibility Mode like so:
Big thanks to the following post that set me on the right path, it offers a powershell command to do this automatically for all java exes: https://superuser.com/a/1276743/648833
Solution 4:[4]
If you are on Linux, other than trying to set
-J-Dsun.java2d.uiScale=2
make sure that you are using jdk 11+, as jdk 8 does not seems to pick up that config
Solution 5:[5]
I am on windows and using ney beans 8.2 with JDK 8. None of the above approaches works for me.
For me, the best route is to add --fontsize 32
at the end of the netbeans_default_options
variable:
You can use whatever font size you like. Remember to change the editor font size to a larger value at 1st boot. The code navigation bar beneath the editor area looks strange, but enough for me.
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
Solution | Source |
---|---|
Solution 1 | Carlo Francesco |
Solution 2 | Stephen Kennedy |
Solution 3 | gordonk |
Solution 4 | Ravel Tan ??? |
Solution 5 | Wesley Ranger |