JDK-8043869 : [macosx] java -splash does not honor @2x hi dpi notation for retina support
  • Type: Enhancement
  • Component: client-libs
  • Sub-Component: java.awt
  • Affected Version: 8
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • OS: os_x
  • CPU: x86
  • Submitted: 2014-05-23
  • Updated: 2016-05-30
  • Resolved: 2014-06-25
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 8 JDK 9
8u40Fixed 9 b24Fixed
Related Reports
Relates :  
Relates :  
Relates :  
Relates :  
Relates :  
Description
A DESCRIPTION OF THE REQUEST :
Java on OS X by now offers great support for hi dpi/retina displays.
Unfortunately, the launcher "java" does not.
When specifying an image as splash image via

java -splash:splash.png ...

The file splash.png is loaded and shown even when a file splash@2x.png is present and the command is executed on a display with hi dpi/retina support.

JUSTIFICATION :
It's quite disappointing when you spend a significant amount of time on getting hi dpi/Retina right and then realize that the very first impression the user gets when starting your app is a bad one, i.e. a blurry splash screen.


EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
If the provided splash image has a hi dpi version, i.e. the "@2x" version is present, and java is launched with a hi dpi display, show the appropriate high resolution image.

Additionally to providing support for the "@2x" notation, consider supporting multi version tiffs created via tiffutil as described in https://developer.apple.com/library/mac/documentation/GraphicsAnimation/Conceptual/HighResolutionOSX/Optimizing/Optimizing.html
ACTUAL -
On Retina displays, java shows a blurry low resolution image, which leaves a bad first impression on the user who expects polished, professionally looking software.

---------- BEGIN SOURCE ----------
Place two file in the current directory:

splash.png (low resolution version)
splash@2x.png (high resolution version)

Start a java program with:

java -splash:splash.png ...

On a low resolution display this should display the low res variant, on a high resolution/retina display it should show the hi res variant.
---------- END SOURCE ----------


Comments
http://mail.openjdk.java.net/pipermail/macosx-port-dev/2014-May/006610.html
23-05-2014