You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Dmitry Irlyanov (JIRA)" <ji...@apache.org> on 2007/06/18 17:48:26 UTC
[jira] Updated: (HARMONY-4221)
[classlib][awt]BufferedImage.getSubimage method is incorrect
[ https://issues.apache.org/jira/browse/HARMONY-4221?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Dmitry Irlyanov updated HARMONY-4221:
-------------------------------------
Attachment: .jpg
RI's result
> [classlib][awt]BufferedImage.getSubimage method is incorrect
> ------------------------------------------------------------
>
> Key: HARMONY-4221
> URL: https://issues.apache.org/jira/browse/HARMONY-4221
> Project: Harmony
> Issue Type: Bug
> Components: Classlib
> Reporter: Dmitry Irlyanov
> Priority: Minor
> Attachments: .jpg
>
>
> according spec, BufferedImage.getSubimage(int x, int y, int w, int h) method takes 2 first ints as a upper-left corner coordinate of subimage. But harmony implementation takes upper-left corner point as (0,0)
> Look at the following code:
> import java.awt.Graphics;
> import java.awt.image.BufferedImage;
> import java.io.File;
> import java.io.IOException;
> import javax.imageio.ImageIO;
> import javax.swing.JFrame;
> import junit.framework.TestCase;
> public class cropTest extends TestCase {
> public void testCrop() throws IOException {
> final BufferedImage image = ImageIO.read(new File(cropTest.class
> .getResource("test.png").getPath()));
>
> JFrame f = new JFrame() {
> @Override
> public void paint(Graphics g) {
> g.drawImage(image.getSubimage(0, 0, 10, 10), 100, 100, 100,
> 100, null);
> g.drawImage(image.getSubimage(0, 10, 10, 10), 100, 200, 100,
> 100, null);
> g.drawImage(image.getSubimage(0, 20, 10, 10), 100, 300, 100,
> 100, null);
> g.drawImage(image.getSubimage(10, 0, 10, 10), 200, 100, 100,
> 100, null);
> g.drawImage(image.getSubimage(10, 10, 10, 10), 200, 200, 100,
> 100, null);
> g.drawImage(image.getSubimage(10, 20, 10, 10), 200, 300, 100,
> 100, null);
> g.drawImage(image.getSubimage(20, 0, 10, 10), 300, 100, 100,
> 100, null);
> g.drawImage(image.getSubimage(20, 10, 10, 10), 300, 200, 100,
> 100, null);
> g.drawImage(image.getSubimage(20, 20, 10, 10), 300, 300, 100,
> 100, null);
> }
> };
> f.setSize(500, 500);
> f.setVisible(true);
> f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
> }
> }
> the results for RI and harmony represented on attached screenshots
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.