PICT rounding issue
@@ -2105,7 +2105,7 @@ public final class PICTImageReader extends ImageReaderBase {
// Get transfer mode
int transferMode = pStream.readUnsignedShort();
if (DEBUG) {
- System.out.print(", mode: " + transferMode);
+ System.out.println(", mode: " + transferMode);
}
// Set up pixel buffer for the RGB values
@@ -2409,7 +2409,7 @@ public final class PICTImageReader extends ImageReaderBase {
* image resolution ratio.
*/
private int getXPtCoord(int pPoint) {
- return (int) (pPoint / screenImageXRatio);
+ return (int) Math.round(pPoint / screenImageXRatio);
}
/*
@@ -2418,7 +2418,7 @@ public final class PICTImageReader extends ImageReaderBase {
* image resolution ratio.
*/
private int getYPtCoord(int pPoint) {
- return (int) (pPoint / screenImageYRatio);
+ return (int) Math.round(pPoint / screenImageYRatio);
}
/*
@@ -2480,7 +2480,6 @@ public final class PICTImageReader extends ImageReaderBase {
// Might need to clear background
g.setComposite(AlphaComposite.Src);
g.setColor(new Color(0x00ffffff, true)); // Transparent white
-// g.setColor(Color.WHITE);
g.fillRect(0, 0, image.getWidth(), image.getHeight());
AffineTransform instance = new AffineTransform();
@@ -2492,12 +2491,7 @@ public final class PICTImageReader extends ImageReaderBase {
instance.scale(screenImageXRatio / subX, screenImageYRatio / subY);
g.setTransform(instance);
-// try {
drawOnto(g);
-// }
-// catch (IOException e) {
-// e.printStackTrace();
-// }
}
finally {
g.dispose();
