不使用DLL的情况下进行JPEG压缩

3

我希望将原始的RGB图像数据(如果需要,可以添加BMP头)转换为JPEG格式,但是不想使用DLL。在Windows上是否有可能实现这一点?我尝试了静态编译IJG jpeglib,但是我使用的是VC++ 9,而它只适用于VC++ 10。

3个回答

2

0

是的,你可以编写自己的JPEG编码器或使用其他库,例如OpenCV。但是在静态链接它们时,请注意其许可要求。


0

参考实现是免费提供的,可用于任何类型的项目。

此外,您可以使用GDI+编写JPEG图像(无需任何Windows没有的额外库)。

为此,创建一个BitmapLockBits以获取可写指针,写入数据,然后UnlockBits

如果图像是从OpenGL中捕获的,则必须RotateFlip它,否则它将颠倒。

现在创建并初始化一个PropertyItem,填写元数据,然后在BitmapSetPropertyItem

创建并初始化一个EncoderParameters,在这里设置质量等参数。

最后,在Bitmap上调用Save


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接