ايران ويج

نسخه‌ی کامل: GIF Amimation
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
صفحه‌ها: 1 2
سلام.

چطور میتونم کدهای بلوک Image data را استخراج کنم؟
من محل، طول بلوک و الگوریتم lzw رو میدونم، اما نمیتونم به کد تبدیلش کنم.
لطفاً راهنمایی کنید.
من نفهمیدم الان چی میخواید.؟
در ضمن. چرا میخواید مستقیم دستکاری کنید؟ خود دات نت فکر کنم امکاناتی برای تصاویر متحرک داشت.
من می خوام برای برنامه تابلو روانم یه نرم افزار بنویسم که برا انیمیشنش از gif استفاده کنم.
برا همین رفتم و ساختار فایل gif رو یاد گرفتم تا بتونم کدهامو در بیارم، اما یخورده پیچیده هست!!!

خوب حالا مشکل کجاست؟
من در قسمت image data این کد ها رو دارم:
08 0B 00 51 FC 1B 28 70 A0 C1 83 01 01
که از طریق الگوریتم LZW کد شده. که دکود شده این هم میشه:
28 FF FF FF 28 FF FF FF FF FF FF FF FF FF FF
حالا میخوام بدونم چطوری اینطوری شد؟
یه دقیقه صبر کن. کامل توضیح بده چی میخوای احتمال زیاد راه حل های بهتری هم هست.
میخواید حرکت تابلو روانو تبدیل به Gif کنی و ذخیره کنی؟
یا فقط میخواید توی برنامه نمایش بدید؟
میخوام فریم های یک تصویر gif رو جداکنم، کدهای هر کدومش رو بیرون بیارم، تبدیل به کد مناسب تابلو کنم و ....
ببینین مثلا من با این کد میشه فریم های یه gif رو در آورد :
کد:
Dim i As Image = Image.FromFile("angry.gif")
        Dim od = New Imaging.FrameDimension(i.FrameDimensionsList(0))
        Dim fc As Int32 = i.GetFrameCount(od)
        Dim b As New Bitmap(i.Size.Width * fc, i.Size.Height)
        Dim g As Graphics = Graphics.FromImage(b)
        For j As Int32 = 0 To fc - 1
            i.SelectActiveFrame(od, j)
            g.DrawImage(i, i.Size.Width * j ,0)
        Next
        PictureBox2.Image = b
میشه شما یه نمونه از gif ای که میخواید رو بگذارید بفهمم منظورتون از کدهای توش چیه؟ یا توضیح بدید؟



ببخشید حواسم نبود انجمن C# هسته:
کد:
Image i = Image.FromFile("F:\\SMIL\\ivSmiles\\angry.gif");
     var od = new Imaging.FrameDimension(i.FrameDimensionsList(0));
     Int32 fc = i.GetFrameCount(od);
     Label1.Text = fc;
     Bitmap b = new Bitmap(i.Size.Width * fc, i.Size.Height );
     Graphics g = Graphics.FromImage(b);
     for (Int32 j = 0; j < fc ; j++) {
         i.SelectActiveFrame(od, j);
         g.DrawImage(i, i.Size.Width * j, 0);
     }
     PictureBox2.Image = b;
بله، ممنون.
اما فکر کنم بشه با دستور GetPixel هم کدهاشو ساخت. اما این کار زمان بره.
اینطور نیست؟
منظورتون برای در آوردن عکس از فریمه؟ اینجا نمیشه چون دارم از Image استفاده میکنم و GetPixel برای شیئ Bitmap هسته. ولی در کل بله زمانبره و تا بشه نباید ازش استفاده کرد.
کدها کار نمیکنن.
اینم یه مثال از gif
کدا رو داده بودم به مبدل تبدیل کنه برا همین چند تا مشکل داشت. ضمیمه رو ببینید.
من منظورم خود فایل gif بود. اینی که دادید که کد هگزشه. بازم من کدو تبدیل کردم به عکس ولی چیز خاصی نبود که؟ متحرک هم نبود؟
بله، حق با شماست، مشکل از من بود.

این ضمیمه که گذاشته بودم یه تصویر ساده ثابت بود بود.
اما من نمیتونم این قسمت رو دکود کنم:
0B 00 51 FC 1B 28 70 A0 C1 83 01 01
که از طریق الگوریتم LZW کد شده.
یه سوال دیگه هم داشتم.
آیا فایل های فلش (swf) رو هم همینطوری میشه به یه کلاس Bitmap نسبت داد؟
صفحه‌ها: 1 2