我已经在我的mac上安装了libjpeg-turbo,并将jar和libs添加到我的eclipse项目中。我正在尝试从我的bufferedimage创建jpeg byte[]:
TJCompressor tj = new TJCompressor();
tj.compress(image, TJ.PF_BGR);我得到的错误是: java.lang.Exception: tjBufSize():无效参数
我使用一个定制的机器人来创建类型为TYPE_3BYTE_BGR的bufferedimage。我可以使用ImageIO创建一个byte[],但它太慢了。
我试着去找一些关于java包装器的教程,但是我没有找到任何从bufferedimage中编码jpeg的教程。如果有人能帮助我,我将不胜感激。
发布于 2013-05-09 01:25:39
您似乎向该方法传入了错误类型的参数。当您应该从TJ类传入零个或多个标志(以“FLAG_”为前缀)时,您正在传递像素格式。像素格式类型将由TJCompressor对象自动检测。
在使用TJCompressor之前,请确保将色度二次采样级别和JPEG质量设置为所需的级别。
示例代码:
TJCompressor tj = new TJCompressor();
tj.setJPEGQuality(75);
tj.setSubsamp(TJ.SAMP_420);
byte[] jpegBytes = tj.compress(image, 0);https://stackoverflow.com/questions/14965399
复制相似问题