Author: solomax
Date: Thu Jun  7 14:04:58 2012
New Revision: 1347622

URL: http://svn.apache.org/viewvc?rev=1347622&view=rev
Log:
Scaling of BufferedImage is corrected

Modified:
    
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/screen/webstart/BaseScreenEncoder.java

Modified: 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/screen/webstart/BaseScreenEncoder.java
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/screen/webstart/BaseScreenEncoder.java?rev=1347622&r1=1347621&r2=1347622&view=diff
==============================================================================
--- 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/screen/webstart/BaseScreenEncoder.java
 (original)
+++ 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/screen/webstart/BaseScreenEncoder.java
 Thu Jun  7 14:04:58 2012
@@ -18,16 +18,24 @@
  */
 package org.openmeetings.screen.webstart;
 
-import java.awt.Image;
+import java.awt.Graphics2D;
 import java.awt.Rectangle;
+import java.awt.RenderingHints;
 import java.awt.image.BufferedImage;
 
 public abstract class BaseScreenEncoder implements IScreenEncoder {
 
        public BufferedImage resize(BufferedImage _img, Rectangle size) {
                BufferedImage img = _img;
-               if (_img.getWidth() != size.width || _img.getHeight() != 
size.height) {
-                       img = (BufferedImage)_img.getScaledInstance(size.width, 
size.height, Image.SCALE_SMOOTH);
+               if (img.getWidth() != size.width || img.getHeight() != 
size.height) {
+                       img = new BufferedImage(size.width, size.height, 
BufferedImage.TYPE_INT_RGB);
+                       
+                       Graphics2D graphics2D = img.createGraphics();
+                       graphics2D.setRenderingHint(
+                               RenderingHints.KEY_INTERPOLATION,
+                               RenderingHints.VALUE_INTERPOLATION_BICUBIC);
+                       graphics2D.drawImage(_img, 0, 0, size.width, 
size.height, null);
+                       graphics2D.dispose();
                }
                return img;
        }


Reply via email to