【问题标题】:Center an image and the crop it to a fixed pixel size (java)居中图像并将其裁剪为固定像素大小(java)
【发布时间】:2021-09-07 23:14:12
【问题描述】:

我目前正在做一个项目,用户可以绘制图像,然后一个小型神经网络猜测绘制的图像(在 Java 中,相信我,我想用 Python 来做)。 为此,我使用快照导出了画布。现在我想将 a 居中并裁剪为固定大小,比如说 50x50 像素。 Java有这方面的方法吗?

public void guess(ActionEvent actionevent) {

    SnapshotParameters params = new SnapshotParameters();
    params.setFill(Color.TRANSPARENT);
    WritableImage image = new WritableImage((int)canvas.getWidth(),(int)canvas.getHeight());
    image = canvas.snapshot(params, null);
    BufferedImage bufferedImage = new BufferedImage((int)image.getWidth(),(int)image.getHeight(), BufferedImage.TYPE_BYTE_GRAY);
    bufferedImage = SwingFXUtils.fromFXImage(image, null);
    String str = NNInterface.initNN(bufferedImage);
    outputText.setText(str);
}

}

否则我不得不使用双数组或smth。

谢谢

【问题讨论】:

    标签: java image bufferedimage snapshot


    【解决方案1】:

    将 a 裁剪为固定大小,例如 50x50 像素。 Java有这方面的方法吗?

    嗯,在您的问题中,您使用了BufferedImage 标签和Image 标签。

    BufferedImage 类中,您可以找到getSubimage(...) 方法,它可以让您裁剪图像。

    Image 类中,您可以找到getScaledInstance(...) 方法,该方法允许您缩放图像。

    假设您在提问之前阅读了 API。也许我不明白这个问题?

    【讨论】:

    • 我读过但可能我误解了这两种方法。我会仔细看看的。谢谢!
    猜你喜欢
    • 1970-01-01
    • 2015-02-15
    • 2017-07-30
    • 1970-01-01
    • 2012-03-12
    • 2011-10-05
    • 2019-06-16
    • 2013-08-28
    • 2014-09-19
    相关资源
    最近更新 更多