[英]What is the reason for the Java DataBuffer class?
当我要研究Java中BufferedImage类的内部实现时,遇到了DataBuffer 。 最后使用DataBuffer保存空白图像数据,该数据只能用相关的ColorModel和SampleModel实现来解释。 但是,除了事实之外,我不了解DataBuffer的真正用途,因为它用一些读写助手包装了相同类型的数组。
DataBuffer
是一个抽象,因此BufferedImage
不需要了解实际的像素存储。
像素通常存储在阵列中,但是可以是单个打包或交错的阵列,也可以是单个或多个带状阵列。 将其乘以支持的传输类型的数量,您将看到有很多不同的情况需要处理。 将其委托给专门的实现很有意义,并且避免对BufferedImage
本身了解所有这些不同类型。
但这甚至根本不必是数组。 例如,我已经成功实现了由nio ByteBuffer
和内存映射文件支持的DataBuffer
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.