gif-h库的简单用法示例

时间:2019-04-03 11:38:47

标签: c++ animated-gif

我正在尝试为https://github.com/ginsweater/gif-h创建一个最小用法示例

但是,从大小为vector<uint8_t>的{​​{1}}开始,第二个GifWriteFrame调用会引发访问冲突读取位置异常

我的尝试

imageWidth*imageHeight

对于上述几点,发布的代码只是一个最小的示例。怎么了?

1 个答案:

答案 0 :(得分:0)

这有效

#include <vector>
#include <cstdint>
#include <gif.h>
int main()
{
    int width = 100;
    int height = 200;
    std::vector<uint8_t> vi1(width * height * 4, 0);
    std::vector<uint8_t> vi2(width * height * 4, 255);

    auto fileName = "bwgif.gif";
    int delay = 100;
    GifWriter g;
    GifBegin(&g, fileName, width, height, delay);
    GifWriteFrame(&g, vi1.data(), width, height, delay);
    GifWriteFrame(&g, vi2.data(), width, height, delay);
    GifEnd(&g);

    return 0;
}