我正在寻找一种方法将 JPEG 图像转换为 TIFF 格式,然后将此 TIFF 图像保留为 base64 格式。解决方案可以是 C、C++ 或 Objective C...请告知 提前致谢
最佳答案
我以前使用过 ImageMagick,效果很好。我使用了 RMagick,Ruby 的绑定(bind),但它们有 C++ bindings也。至于将 tiff 图像保持为 base64 格式,您将需要另一个库,例如 libb64 。 ImageMagick 片段应该像这样简单
#include <Magick++.h>
#include <iostream>
using namespace std;
using namespace Magick;
int main(int argc,char **argv)
{
Image image;
try {
image.read( "girl.jpg" );
// convert to tiff
image.write( "girl.tiff" );
}
catch( Exception &error_ )
{
cout << "Caught exception: " << error_.what() << endl;
return 1;
}
return 0;
}
(示例修改自 http://www.imagemagick.org/Magick++/Image.html )
要满足内存要求,很容易。
Image jpg = Image("/path/to/jpg");
jpg.magick("tiff");
Blob blob;
jpg.write(&blob);
我将让您完成了解如何从 blob 获取字节的工作。
关于c++ - 用于将 JPEG 图像转换为 TIFF 格式的 C、C++ 或 Objective-C 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7080510/