PNG متحرک (.apng)

W3C استاندارد

فرمت گرافیک شبکه قابل حمل متحرک (APNG) فرمت PNG استاندارد را گسترش می‌دهد تا از انیمیشن‌های چند فریم با رنگ‌های تمام ۲۴ بیتی Truecolor و شفافیت آلفای ۸ بیتی پشتیبانی کند و با رمزگشاهای استاندارد PNG سازگار است.

تبدیل APNG به GIF

مبدل رایگان APNG به GIF درون مرورگر. فایل‌ها را فورا روی دستگاه خود تبدیل کنید.

بررسی و فراداده

سیستم‌عامل‌ها و تحلیلگرهای فایل، فایل‌های APNG را با بررسی توالی بایت‌های دودویی ابتدایی شناسایی می‌کنند:

انتخاب یا رها کردن فایل‌ها در اینجا

تبدیل ۱۰۰٪ خصوصی در مرورگر - فایل‌ها هرگز دستگاه شما را ترک نمی‌کنند

یا جای‌گذاری کنید Ctrl+V
تضمین حریم خصوصی بدون انتقال شبکه: صفر بایت به سرورهای خارجی آپلود می‌شود. تمام پردازش‌ها به صورت محلی در سندباکس مرورگر شما انجام شد.

امضای هدر در سطح بایت (Magic Bytes)

سیستم‌عامل‌ها و تحلیلگرهای فایل، فایل‌های APNG را با بررسی توالی بایت‌های دودویی ابتدایی شناسایی می‌کنند:

امضای HEX (آفست 0):

89 50 4E 47 0D 0A 1A 0A

نمایش ASCII: ‰PNG....

استانداردسازی: W3C Community Group Report (2021) / Mozilla Extension

مشخصات فنی

معماری کانتینرPNG chunk stream with acTL (animation control), fcTL (frame control), and fdAT (frame data) chunks
فشرده‌سازیDeflate (zlib) sliding-window LZ77 with 2D adaptive filtering applied per-frame
ترتیب بایت‌ها (Endianness)Big-Endian (network byte order)
فضاهای رنگیsRGB, Display P3, Embedded ICC Profile (iCCP)
کانال‌ها و ساختارRGBA (8-bit or 16-bit per channel Truecolor + 8-bit alpha)
حداکثر ابعاد2,147,483,647 x 2,147,483,647 pixels (PNG 31-bit limit)
شفافیت مشخصاتFull 8-bit alpha channel transparency (256 levels of smooth translucency)
استریمینگ و پیش‌روندهProgressive chunk streaming; renders first frame immediately on legacy non-animated PNG parsers

ماتریس مقایسه فنی: APNG در برابر رقبا

ویژگی فنیAPNG (فعلی)GIFWEBPAVIF
عمق رنگ۲۴ بیتی RGB (۱۶.۷ میلیون رنگ)۸ بیتی ایندکس شده (۲۵۶ رنگ)۲۴ بیتی RGB (۱۶.۷ میلیون رنگ)۱۰ بیتی / ۱۲ بیتی HDR
شفافیت آلفاآلفای روان ۸ بیتی (۲۵۶ سطح)ماسک باینری روشن/خاموش ۱ بیتیآلفای روان ۸ بیتیآلفای روان ۸ بیتی / ۱۰ بیتی
سازگاری عقب‌گردنمایش به عنوان PNG ایستا در نمایشگرهای قدیمیGIF قدیمی جهانیهیچ‌کدام در نمایشگرهای قدیمیهیچ‌کدام در نمایشگرهای قدیمی
کارایی فشرده‌سازیDeflate (متوسط)LZW (ضعیف)فریم‌های کلیدی/تفاضلی VP8 (بالا)بین فریم AV1 (بسیار بالا)

حالت‌های رایج خرابی و راهنمای بازیابی هگز

انیمیشن فقط فریم اول را پخش می‌کند و هرگز تکرار یا پیشروی نمی‌کند.

علت ریشه‌ای: قطعه (chunk) کنترل انیمیشن 'acTL' گم شده یا خراب است که قبل از اولین قطعه IDAT قرار دارد.

بازیابی: بازسازی فریم‌ها با استفاده از apngasm یا مبدل انیمیشن File2File برای ساخت مجدد قطعات کنترل انیمیشن معتبر.

تحلیل امنیتی و بردارهای حمله تجزیه‌کننده (Parser)

تجزیه‌کننده‌های APNG قطعات کنترل فریم تکراری را پردازش می‌کنند که در آن‌ها ابعاد بدست آمده غیرمعتبر می‌تواند باعث سرریز عدد صحیح یا اتمام حافظه پشته (Heap) شود.

بردارهای حمله شناخته‌شده

  • سرریز عدد صحیح در محاسبه افست فریم (x_offset / y_offset) که منجر به ترکیب فریم خارج از محدوده می‌شود.
  • عرض/ارتفاع ناسازگار فریم که منجر به خواندن بیش از حد بافر در طول ترکیب فریم می‌شود.
  • حلقه‌های فشرده‌زدایی انیمیشن بی‌نهایت که باعث اتمام CPU در خدمات تولید بندانگشتی (thumbnail) بک‌اند می‌شود.

بهترین روش‌های پدافندی:

تاریخچه و نقاط عطف

2021کنسرسیوم وب جهان‌شمول (W3C) رسماً مشخصات APNG را به عنوان یک استاندارد جامعه شناخته‌شده ثبت می‌کند.
2017گوگل کروم (نسخه ۵۹) پشتیبانی بومی از APNG را اضافه می‌کند و پذیرش جهانی در مرورگرهای دسکتاپ و موبایل را تکمیل می‌سازد.
2008اپل از APNG برای استیکرهای متحرک iOS و گرافیک مرورگر سافاری استفاده می‌کند.
2004استوارت پارمنتر و ولادیمیر ووکیسویچ مشخصات APNG را برای انیمیشن‌های وضعیت شبکه موزیلا فایرفاکس تعیین می‌کنند.

مزایا و نقاط قوت کلیدی

  • رنگ کامل ۲۴ بیتی RGB به همراه شفافیت آلفای ۸ بیتی، که به طور کامل آرتیفکت‌های لبه‌دار شفافیت ۱ بیتی GIF را از بین می‌برد.
  • سازگاری عقب‌گرد ۱۰۰ درصدی با رمزگشاهای قدیمی PNG (که فریم اصلی پشتیبان را به طور یکپارچه نمایش می‌دهند).
  • پخش بومی شتاب‌دفته سخت‌افزاری جهانی در تمام مرورگرهای مدرن دسکتاپ، iOS و اندروید.

محدودیت‌ها و معایب فنی

  • حجم فایل‌های بزرگ‌تر نسبت به فرمت‌های انیمیشن مبتنی بر ویدیوی مدرن مانند WebM یا MP4.
  • پیچیدگی رمزگذاری بالاتر و مصرف CPU بیشتر در طول تولید در مقایسه با فرمت قدیمی GIF.
  • عدم وجود پیش‌بینی بردار حرکت بین فریم که در کدک‌های ویدیویی تخصصی یافت می‌شود.

نکات فنی جالب

  • گروه توسعه رسمی PNG در سال ۲۰۰۷، فرمت APNG را رد کرد و فرمت جداگانه MNG را ترجیح داد که در نهایت نتوانست پذیرش عمومی کسب کند.
  • اپل از APNG برای استیکرهای متحرک در فروشگاه اپلیکیشن پیام‌رسان iOS 10 استفاده کرد که باعث پذیرش گسترده در موبایل شد.
  • اگر یک فایل APNG را در یک نمایشگر تصویر قدیمی متعلق به دهه ۱۹۹۰ باز کنید، بدون کرش کردن، صرفاً فریم اول را نمایش می‌دهد.

سوالات فنی متداول

چرا فرمت APNG از GIF بهتر است؟

فرمت APNG از ۱۶.۷ میلیون رنگ و ۲۵۶ سطح شفافیت آلفای روان پشتیبانی می‌کند، در حالی که GIF به ۲۵۶ رنگ و شفافیت سخت ۱ بیتی محدود شده است.

آیا همه مرورگرها از APNG پشتیبانی می‌کنند؟

بله. هر مرورگر مدرنی (کروم، سافاری، فایرفاکس، اج) از سال ۲۰۱۷ به طور بومی از APNG پشتیبانی می‌کند.

آیا می‌توانم یک APNG را به یک فایل استاندارد GIF یا MP4 تبدیل کنم؟

بله. سایت File2File.app می‌تواند انیمیشن‌های APNG را مستقیماً در مرورگر وب شما به فایل‌های سبک وزن GIF، MP4 یا WebM تبدیل کند.