PDA

View Full Version : سوال: گرفتن مشخصات gif



reza_stb2002
پنج شنبه 08 بهمن 1388, 01:59 صبح
سلام
دوستان کسی میدونه چه جوری میشه مدت هر فریم gif رو بدست آورد.

ممنون :لبخندساده:

reza_stb2002
پنج شنبه 08 بهمن 1388, 12:34 عصر
لطفا یکی جواب بده بد جوری کارم گیره :افسرده:

SMRAH1
پنج شنبه 08 بهمن 1388, 15:47 عصر
سلام
یک جستجو توی گوگل نکات زیادی پیدا می کردی مثلا این (http://www.daniweb.com/forums/thread138789.html#)و این (http://social.msdn.microsoft.com/Forums/en/netfxbcl/thread/fcb7d14d-d15b-4336-971c-94a80e34b85e)
من هم بلد نبودم.ولی به لطف این تاپیک،امروز یاد گرفتم.خلاص کد ها این میشه:

Image img = Image.FromFile(@"C:\1.gif");
FrameDimension fdl = new FrameDimension(img.FrameDimensionsList[0]);
int _FrameCount = img.GetFrameCount(fdl);
byte[] times = img.GetPropertyItem(0x5100).Value;
StringBuilder sb = new StringBuilder("");
sb.Append(" Count Frame : " + _FrameCount.ToString() + Environment.NewLine);
for(int i=0;i<_FrameCount;i++)
{
int k = i * 4;
int j = times[k + 3];
j *= 256;
j += times[k + 2];
j *= 256;
j += times[k + 1];
j *= 256;
j += times[k];
sb.Append("Time of Frame " + (i + 1).ToString() + " : " + j + Environment.NewLine);
}
MessageBox.Show(sb.ToString());
البته افزودن فضای نامی زیر رو فراموش نکن:

using System.Drawing.Imaging;
موفق باشی