DirtyHarry
DirtyHarry

Reputation: 93

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.

Upvotes: 9

Views: 8355

Answers (5)

Wesley Ranger
Wesley Ranger

Reputation: 780

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:

enter image description here

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.

enter image description here

Upvotes: 0

Ravel Tan 陈光雄
Ravel Tan 陈光雄

Reputation: 411

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

Upvotes: 1

gordonk
gordonk

Reputation: 435

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:

enter image description here

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

Upvotes: 8

Carlo Francesco
Carlo Francesco

Reputation: 86

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

Upvotes: 7

Victor Rodriguez
Victor Rodriguez

Reputation: 51

Try to edit NETBEAN_HOME\etc\netbeans.conf and set -J-Dsun.java2d.dpiaware from true to false.

-J-Dsun.java2d.dpiaware=false

Upvotes: 5

Related Questions