关于graphics2d.drawimage失真的信息

发布时间:2023-01-06

本文目录一览:

  1. Graphics2D的问题高分悬赏
  2. java Graphics2D drawImage指向问题
  3. java旋转照片颜色失真太大,求指导

Graphics2D的问题高分悬赏

你其实不需要这样做,只要用一个Graphics就可以实现。你先把不要缩放的信息画好,然后把这个Graphics转成Graphics2D,画缩放的信息,但是位置你要调整好。最后返回一个Graphics去打印就可以了。因为我公司也遇到这样的问题,后来是这样解决的!一定可以的。

java Graphics2D drawImage指向问题

建议不要用Toolkit.getDefaultToolkit().getImage。 用:

img = ImageIO.read(url);

或直接:

img = ImageIO.read(new File("E:\\img\\2.JPEG"));

java旋转照片颜色失真太大,求指导

代码不完整,测试不了。

/**
 * 旋转图片为指定角度
 *
 * @param bufferedimage
 *            目标图像
 * @param degree
 *            旋转角度
 * @return
 */
public static BufferedImage rotateImage(final BufferedImage bufferedimage, final int degree) {
    int w = bufferedimage.getWidth(); // 得到图片宽度。
    int h = bufferedimage.getHeight(); // 得到图片高度。
    int type = bufferedimage.getColorModel().getTransparency(); // 得到图片透明度。
    BufferedImage img; // 空的图片。
    Graphics2D graphics2d; // 空的画笔。
    (graphics2d = (img = new BufferedImage(w, h, type)).createGraphics())
            .setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR);
    graphics2d.rotate(Math.toRadians(degree), w / 2, h / 2); // 旋转,degree是整型,度数,比如垂直90度。
    graphics2d.drawImage(bufferedimage, 0, 0, null); // 从bufferedimage copy图片至img,0,0是img的坐标。
    graphics2d.dispose();
    return img; // 返回复制好的图片,原图片依然没有变,没有旋转,下次还可以使用。
}

看看别人的写法