- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在开发一个“绘图”应用程序。整个“绘图”不断地存储在 BufferedImage
对象中(使用不断的更新循环)。我们称它为 drawingArea
。
我正在使用 BufferedImage
类的 getSubimage()
方法实现一个选择工具。用户使用此工具选择绘图区域,并将其粘贴到绘图上的任意位置。
用户通过拖动鼠标选择一个区域,当他/她释放鼠标时,所选区域存储在BufferedImage
中。这是通过调用 drawingArea
的 getSubimage(/* properties of the selected rectangular area */)
方法完成的,并将返回值放入 BufferedImage
(我们称它为 selectedArea
)。
此操作仅执行一次(又名,一旦selectedArea
中有一个值,就没有任何代码将任何新内容分配给选定区域
).
但是,我发现(并且确信)selectedArea
中存储的值确实发生了变化 - 它存储的图像得到了更新!
含义:如果用户选择了一个区域(此时保存了该区域副本的图像),然后在该区域内绘制一些东西,并且然后粘贴图片 - 粘贴的图片将是绘图之后,而不是之前。
这怎么可能? getSubimage()
是否返回一个 BufferedImage
并在其源更新时得到更新? (又名它被复制的区域)?这看起来很愚蠢,但在我看来这是唯一的选择。
最佳答案
如有疑问,请检查文档:
Returns a subimage defined by a specified rectangular region. The returned BufferedImage shares the same data array as the original image.
换句话说,是的,原始图像或子图像中的修改在另一个中可见。
关于java - BufferedImage 的 getSubimage() 到底做了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22133993/
这个问题已经有答案了: Java getSubimage() outside of raster (2 个回答) 已关闭 6 年前。 我编写了一小段代码来将 Sprite 表分割成单独的图像.....
我正在尝试从 BufferedImage 中提取图像的一部分。我该怎么做呢?它不允许我为 y 设置大于零的值。 例如: getSubimage(0,0,theImage.getWidth(),theI
我正在尝试拍摄一张图像并将其存储在 16x16 子图像数组中。我使用的图像是 512x512 像素。但是,在循环迭代时,getSubimage() 因 Raster 异常而停止。 这是代码: publ
我正在尝试拍摄图像并将其存储在 16x16 子图像数组中。我使用的图像是 512x512 像素。但是,在遍历循环时,getSubimage() 因 Raster 异常而停止。 代码如下: public
我正在尝试用java制作国际象棋游戏,我从谷歌获得了棋子的图像。现在我想将其剪切为 6*2 图像(黑白图像)。但我不明白这个有什么问题。 public static final String
嗯,我第一次尝试制作图形游戏,但是: BufferedImage tileset = null; try{ tileset = ImageIO.read(new File("sets/tile
你好, 我正在运行以下代码来制作 JPanel 的屏幕截图。 private void makePanelImage(Component panel, String saveAs) { Dim
我正在开发一个“绘图”应用程序。整个“绘图”不断地存储在 BufferedImage 对象中(使用不断的更新循环)。我们称它为 drawingArea。 我正在使用 BufferedImage 类的
这里是 Java 8。尝试坚持使用 BufferedImage API,而不是深入研究 JavaFx 领域。 我有一个宽 768 像素、高 432 像素的 JPG 图像。我想使用 BufferedIm
所以我正在开发一个裁剪图像的组件,它工作正常。 如果图像大于它的父容器(只能是max-width: 100vw),选择一个的div要裁剪的图像部分具有将在 BufferedImage.getSubIm
我实现了一个 GetSubImage 函数来提取图像的一部分。我使用 SetROI、Copy 和 ResetROI。但是,当并行任务使用相同的图像时,这不起作用,因为 SetROI 不可并行化。 还有
我正在开发 Java 2D 渲染程序(在 1.6.0_11 上运行),它使用外部图像进行 UI 渲染。这些大图像同时包含多个 UI 图形部分,我现在使用 BufferedImage.getSubima
我有一张尺寸为 16x6080 的图片。这是一个包含 16x16 部分的国家标志的堆叠图像。我的目标是从此图像中仅提取特定国家/地区的国旗并将其保存为自己的文件。这是我当前的代码
我目前正在尝试拆分图像,遇到了一个告密者,我不知道为什么会这样。 这是我的函数的快速伪代码分解 使用 ImageIO.read(File file) 方法读入图像 使用 getSubimage() 方
我是一名优秀的程序员,十分优秀!