Java-使用robot类拍摄的屏幕截图具有不同的字节数
当我使用robot类获取屏幕的多个屏幕截图,然后将BuffereImage转换为字节数组时,字节数组的长度会发生变化,有时变化很大。这应该发生吗?我觉得每张图片中的字节数是一样的Java-使用robot类拍摄的屏幕截图具有不同的字节数,java,arrays,file,byte,awtrobot,Java,Arrays,File,Byte,Awtrobot,当我使用robot类获取屏幕的多个屏幕截图,然后将BuffereImage转换为字节数组时,字节数组的长度会发生变化,有时变化很大。这应该发生吗?我觉得每张图片中的字节数是一样的 作为背景,我试图加快一个简单的屏幕共享程序。现在我把每一张图片都作为一个完整的字节数组发送,它工作得很好(但速度很慢)。我希望将每一张图片都保存在一个缓冲区中,然后只发送上一张图片到下一张图片的字节数组中的更改和索引,从而减少通过套接字发送的数据。这是行不通的,因为每个屏幕截图都有不同大小的字节数组。您的屏幕截图大小不
作为背景,我试图加快一个简单的屏幕共享程序。现在我把每一张图片都作为一个完整的字节数组发送,它工作得很好(但速度很慢)。我希望将每一张图片都保存在一个缓冲区中,然后只发送上一张图片到下一张图片的字节数组中的更改和索引,从而减少通过套接字发送的数据。这是行不通的,因为每个屏幕截图都有不同大小的字节数组。您的屏幕截图大小不同,因为它们的复杂性不同 您的问题中没有包含很多细节,因此我假设您使用的屏幕截图例程返回PNG图像
PNG格式不仅仅是一组(红、绿、蓝)数据,图像的每个像素都有一个条目。相反,该格式压缩图像数据。这意味着(例如)一个仅仅是单一平面颜色的图像将比每个像素都是不同颜色的图像小得多。代码在哪里?
然后将BuffereImage转换为字节数组,
-如何?张贴您的演示问题。感谢您的明确回答。如果我想要一种没有压缩的格式,我会使用像TIFF这样的格式吗?在你的位置上,我会考虑像BuffereImage的getRGB(int x,int y)
方法,你可以用它来建立你想要的像素阵列。