< prev index next >

src/java.desktop/share/classes/sun/java2d/SunGraphics2D.java

Print this page




3101                 return null;
3102             }
3103             sx1 = Region.clipScale(sx1, scaleX);
3104             sx2 = Region.clipScale(sx2, scaleX);
3105             sy1 = Region.clipScale(sy1, scaleY);
3106             sy2 = Region.clipScale(sy2, scaleY);
3107 
3108             AffineTransform tx = null;
3109             if (xform != null) {
3110                 tx = new AffineTransform(transform);
3111                 transform(xform);
3112             }
3113             boolean result = scaleImage(img, dx1, dy1, dx2, dy2,
3114                                         sx1, sy1, sx2, sy2,
3115                                         bgcolor, observer);
3116             if (tx != null) {
3117                 transform.setTransform(tx);
3118                 invalidateTransform();
3119             }
3120             return result;
3121         } else if (resolutionVariantHint != SunHints.INTVAL_RESOLUTION_VARIANT_BASE
3122                    && (img instanceof MultiResolutionImage)) {
3123             // get scaled destination image size
3124 
3125             int width = img.getWidth(observer);
3126             int height = img.getHeight(observer);
3127 
3128             MultiResolutionImage mrImage = (MultiResolutionImage) img;
3129             Image resolutionVariant = getResolutionVariant(mrImage, width, height,
3130                                                            dx1, dy1, dx2, dy2,
3131                                                            sx1, sy1, sx2, sy2,
3132                                                            xform);
3133 
3134             if (resolutionVariant != img && resolutionVariant != null) {
3135                 // recalculate source region for the resolution variant
3136 
3137                 ImageObserver rvObserver = MultiResolutionToolkitImage.
3138                         getResolutionVariantObserver(img, observer,
3139                                 width, height, -1, -1);
3140 
3141                 int rvWidth = resolutionVariant.getWidth(rvObserver);
3142                 int rvHeight = resolutionVariant.getHeight(rvObserver);




3101                 return null;
3102             }
3103             sx1 = Region.clipScale(sx1, scaleX);
3104             sx2 = Region.clipScale(sx2, scaleX);
3105             sy1 = Region.clipScale(sy1, scaleY);
3106             sy2 = Region.clipScale(sy2, scaleY);
3107 
3108             AffineTransform tx = null;
3109             if (xform != null) {
3110                 tx = new AffineTransform(transform);
3111                 transform(xform);
3112             }
3113             boolean result = scaleImage(img, dx1, dy1, dx2, dy2,
3114                                         sx1, sy1, sx2, sy2,
3115                                         bgcolor, observer);
3116             if (tx != null) {
3117                 transform.setTransform(tx);
3118                 invalidateTransform();
3119             }
3120             return result;
3121         } else if (img instanceof MultiResolutionImage) {

3122             // get scaled destination image size
3123 
3124             int width = img.getWidth(observer);
3125             int height = img.getHeight(observer);
3126 
3127             MultiResolutionImage mrImage = (MultiResolutionImage) img;
3128             Image resolutionVariant = getResolutionVariant(mrImage, width, height,
3129                                                            dx1, dy1, dx2, dy2,
3130                                                            sx1, sy1, sx2, sy2,
3131                                                            xform);
3132 
3133             if (resolutionVariant != img && resolutionVariant != null) {
3134                 // recalculate source region for the resolution variant
3135 
3136                 ImageObserver rvObserver = MultiResolutionToolkitImage.
3137                         getResolutionVariantObserver(img, observer,
3138                                 width, height, -1, -1);
3139 
3140                 int rvWidth = resolutionVariant.getWidth(rvObserver);
3141                 int rvHeight = resolutionVariant.getHeight(rvObserver);


< prev index next >