--- old/src/share/classes/sun/awt/image/SurfaceManager.java 2013-04-08 16:14:39.193485200 +0400 +++ new/src/share/classes/sun/awt/image/SurfaceManager.java 2013-04-08 16:14:39.010474700 +0400 @@ -31,6 +31,7 @@ import java.awt.Image; import java.awt.ImageCapabilities; import java.awt.image.BufferedImage; +import java.awt.image.VolatileImage; import java.util.concurrent.ConcurrentHashMap; import java.util.Iterator; import sun.java2d.SurfaceData; @@ -287,4 +288,18 @@ flush(true); } } + + /** + * Returns a scale factor of the image. This is utility method, which + * fetches information from the SurfaceData of the image. + * + * @see SurfaceData#getDefaultScale + */ + public static int getImageScale(final Image img) { + if (!(img instanceof VolatileImage)) { + return 1; + } + final SurfaceManager sm = getManager(img); + return sm.getPrimarySurfaceData().getDefaultScale(); + } }