FULL PRODUCT VERSION :
java -version
'openjdk version "1.8.0_25"
but works OK with jdk1.7.0_71
ADDITIONAL OS VERSION INFORMATION :
Linux 3.17.7-300.fc21.x86_64
EXTRA RELEVANT SYSTEM CONFIGURATION :
java rendering via ssh -Y on X11 (Xquartz) to OSX (but unlikely to matter).
I guess (but haven't tried) it will show under any X11.
A DESCRIPTION OF THE PROBLEM :
Rendering of images via AffineTransform doesn't seem to work: renders only
small rectangle.
Key line is drawRenderedImage(image, affineTransform)
Easy Test code below works ok in java 1.7, but not 1.8.
REGRESSION. Last worked in version 7u71
ADDITIONAL REGRESSION INFORMATION:
'openjdk version "1.8.0_25"
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
compile & run code . Makes simple graded colour rectangle from corner to corner. Doesn't work in java 1.8 (on linux being rendered on Xquartz.)
But works fine using java 1.7
Code is fine on OSX's java using native cocoa graphics.
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
As above
ACTUAL -
Wierd sub-square only rendered in java 1.8.
In 1.7, all of rectangle is rendered.
REPRODUCIBILITY :
This bug can be reproduced always.
---------- BEGIN SOURCE ----------
mport javax.swing.*;
import java.io.*;
import java.awt.*;
import java.awt.image.*;
import javax.imageio.*;
import java.awt.geom.AffineTransform;
public class ImageBug extends JPanel
{
BufferedImage BIS;
int n=100;
int width=700,height=400;
public static void main(String [] args)
{
ImageBug IB = new ImageBug();
JFrame f = new JFrame("Window");
f.add(IB);
f.setSize(IB.width,IB.height);
f.setVisible(true);
IB.BIS = new BufferedImage(IB.n,IB.n,BufferedImage.TYPE_INT_RGB);
}
public void paint(Graphics g)
{
int j,k;
for(j=0;j<n;j++)
for (k=0;k<n;k++) BIS.setRGB(j,k,j%255+(k%255)<<8);
// paint image
AffineTransform at = AffineTransform.getScaleInstance(width/(double)n,height/(double)n);
((Graphics2D)g).drawRenderedImage(BIS,at);
}
}
---------- END SOURCE ----------
CUSTOMER SUBMITTED WORKAROUND :
None so far
java -version
'openjdk version "1.8.0_25"
but works OK with jdk1.7.0_71
ADDITIONAL OS VERSION INFORMATION :
Linux 3.17.7-300.fc21.x86_64
EXTRA RELEVANT SYSTEM CONFIGURATION :
java rendering via ssh -Y on X11 (Xquartz) to OSX (but unlikely to matter).
I guess (but haven't tried) it will show under any X11.
A DESCRIPTION OF THE PROBLEM :
Rendering of images via AffineTransform doesn't seem to work: renders only
small rectangle.
Key line is drawRenderedImage(image, affineTransform)
Easy Test code below works ok in java 1.7, but not 1.8.
REGRESSION. Last worked in version 7u71
ADDITIONAL REGRESSION INFORMATION:
'openjdk version "1.8.0_25"
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
compile & run code . Makes simple graded colour rectangle from corner to corner. Doesn't work in java 1.8 (on linux being rendered on Xquartz.)
But works fine using java 1.7
Code is fine on OSX's java using native cocoa graphics.
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
As above
ACTUAL -
Wierd sub-square only rendered in java 1.8.
In 1.7, all of rectangle is rendered.
REPRODUCIBILITY :
This bug can be reproduced always.
---------- BEGIN SOURCE ----------
mport javax.swing.*;
import java.io.*;
import java.awt.*;
import java.awt.image.*;
import javax.imageio.*;
import java.awt.geom.AffineTransform;
public class ImageBug extends JPanel
{
BufferedImage BIS;
int n=100;
int width=700,height=400;
public static void main(String [] args)
{
ImageBug IB = new ImageBug();
JFrame f = new JFrame("Window");
f.add(IB);
f.setSize(IB.width,IB.height);
f.setVisible(true);
IB.BIS = new BufferedImage(IB.n,IB.n,BufferedImage.TYPE_INT_RGB);
}
public void paint(Graphics g)
{
int j,k;
for(j=0;j<n;j++)
for (k=0;k<n;k++) BIS.setRGB(j,k,j%255+(k%255)<<8);
// paint image
AffineTransform at = AffineTransform.getScaleInstance(width/(double)n,height/(double)n);
((Graphics2D)g).drawRenderedImage(BIS,at);
}
}
---------- END SOURCE ----------
CUSTOMER SUBMITTED WORKAROUND :
None so far