gpt4 book ai didi

c++ - GDI+ gif速度问题

转载 作者:太空狗 更新时间:2023-10-29 21:30:55 27 4
gpt4 key购买 nike

我正在使用 C++ GDI+ 打开 gif

但是我发现帧间隔真的很奇怪。与window的图片查看器播放不同。

我写的代码如下。

pMultiPageImg = new Bitmap(XXXXX);
int size = m_pMultiPageImg->GetPropertyItemSize(PropertyTagFrameDelay);
m_pTimeDelays = (PropertyItem*) malloc (size);
m_pMultiPageImg->GetPropertyItem(PropertyTagFrameDelay, size, m_pTimeDelays);
int frameSize = m_pMultiPageImg->GetFrameDimensionsCount();();

// the interal of frame FrameNumber:
long lPause = ((long*)m_pTimeDelays->value)[FrameNumber] * 10;

但是我发现一些帧 lPause <= 0。这是什么意思?

我列出的代码是否适合获取间隔?

非常感谢!

最佳答案

gif header 中的帧持续时间字段只有两个字节长(解释为百分之一秒 - 允许值从 0 到 32.768 秒)。

您似乎将其解释为 long,这在您的平台上可能是 4 个字节,因此您将读取另一个字段以及持续时间。从您提供的代码很难判断,但我认为这就是问题所在。

关于c++ - GDI+ gif速度问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1587388/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com