Starting with Java 11, the Java runtime is DPI-aware by default.
On displays configured above 96 DPI (for example 120, 150 or 200 DPI), Java automatically scales UI elements.
For standard isCOBOL GUI applications this may result in:
isCOBOL offers two supported approaches to control DPI behavior, depending on platform requirements.
Option 1: Use non-DPI-aware Windows launchers (Windows only)
Beginning with isCOBOL 2024 R1, additional executable wrappers are available under the sub-folder bin\no_dpi_aware located in the SDK installation folder:
bin\no_dpi_aware\
iscclient.exe
iscrun.exe
isclient.exe
isrun.exe
These wrappers:
Effect on the UI
Limitations
Option 2: Disable Java UI scaling (multi-platform)
A platform-independent alternative is to add the following to the Java command line:
-Dsun.java2d.uiScale.enabled=false
for example via:
Effect on the UI:
Limitation:
Supported platforms
Comparison Summary
|
Method |
Java Support |
Platforms |
Result |
|
Windows no-DPI executables |
Since Java 8 |
Windows only |
Slight blur; stable layout; no icon distortion |
|
-Dsun.java2d.uiScale.enabled=false |
Since Java 11 |
Win / Linux / Mac |
Sharp UI; no scaling; windows remain very small on high DPI |
Recommendations
Use the method that matches your deployment needs and/or constraints:
If you distribute multiple launch modes, we suggest documenting clearly which launcher is intended for high-DPI systems.
Article ID: 357
Created: January 13, 2026
Last Updated: January 13, 2026
Author: Support KB Author
Online URL: https://support.veryant.com/phpkb/article.php?id=357