PNG động (.apng)
W3C Tiêu chuẩnAPNG mở rộng PNG với hoạt ảnh nhiều khung hình và một hình tĩnh; trình xem không hỗ trợ APNG có thể chỉ hiển thị hình tĩnh.
Chuyển đổi APNG sang GIF
Trình chuyển đổi từ APNG sang GIF miễn phí trên trình duyệt. Chuyển đổi tệp ngay lập tức trên thiết bị của bạn.
Kiểm tra & Siêu dữ liệu
Các hệ điều hành và trình phân tích tệp nhận dạng tệp APNG bằng cách kiểm tra chuỗi byte nhị phân đầu tệp:
Chữ ký ở đầu tệp (mẫu byte nhận diện)
Các hệ điều hành và trình phân tích tệp nhận dạng tệp APNG bằng cách kiểm tra chuỗi byte nhị phân đầu tệp:
CHỮ KÝ HEX (OFFSET 0):
89 50 4E 47 0D 0A 1A 0ABIỂU DIỄN ASCII: ‰PNG....
Tiêu chuẩn hóa: W3C Community Group Report (2021) / Mozilla Extension
Thông số kỹ thuật
| Kiến trúc Container | Luồng khối PNG gồm các khối acTL (điều khiển hoạt ảnh), fcTL (điều khiển khung hình) và fdAT (dữ liệu khung hình) |
| Nén | Cửa sổ trượt Deflate (zlib) LZ77, áp dụng bộ lọc thích ứng 2D riêng cho từng khung hình |
| Thứ tự byte | Big-endian (thứ tự byte mạng) |
| Không gian màu | sRGB, Display P3, Hồ sơ ICC được nhúng (iCCP) |
| Kênh & Cấu trúc | RGBA (8 hoặc 16 bit mỗi kênh, Truecolor + alpha 8 bit) |
| Kích thước tối đa | 2.147.483.647 x 2.147.483.647 điểm ảnh (giới hạn 31 bit của PNG) |
| Độ trong suốt | Độ trong suốt toàn phần với kênh alpha 8 bit (256 mức trong mờ mượt) |
| Truyền phát & Tăng dần | Tệp APNG có kèm hình tĩnh; bộ giải mã bỏ qua các phần hoạt ảnh có thể hiển thị hình đó dưới dạng ảnh tĩnh. |
Ma trận so sánh kỹ thuật: APNG so với các đối thủ
| Thuộc tính kỹ thuật | APNG (Hiện tại) | GIF | WEBP | AVIF |
|---|---|---|---|---|
| Độ sâu màu | RGB 24-bit (16,7 triệu màu) | Chỉ mục 8-bit (256 màu) | RGB 24-bit (16,7 triệu màu) | HDR 10-bit / 12-bit |
| Độ trong suốt Alpha | Alpha mượt mà 8-bit (256 mức) | Mặt nạ nhị phân bật/tắt 1-bit | Alpha mượt mà 8-bit | Alpha mượt mà 8-bit / 10-bit |
| Tương thích ngược | Một số trình xem PNG có thể hiển thị hình tĩnh; hoạt ảnh cần được hỗ trợ APNG. | Khả năng hỗ trợ tùy thuộc vào trình duyệt. | Không có trên trình xem cũ | Không có trên trình xem cũ |
| Hiệu suất nén | Deflate (trung bình) | LZW (kém) | Khung hình chính/khung khác biệt VP8 (cao) | Nén liên khung AV1 (cực cao) |
Các dạng hỏng thường gặp và hướng dẫn khôi phục bằng mã hex
Hoạt ảnh chỉ phát khung hình đầu tiên và không bao giờ lặp lại hoặc chuyển tiếp.
Nguyên nhân gốc rễ: Thiếu hoặc hỏng khối 'acTL' (Điều khiển Hoạt ảnh) nằm trước khối IDAT đầu tiên.
Khắc phục: Ghép lại các khung hình bằng apngasm hoặc File2File.app Animation Converter để xây dựng lại các khối điều khiển hoạt ảnh hợp lệ.
Phân tích bảo mật và các đường tấn công nhằm vào bộ phân tích cú pháp
Trình phân tích cú pháp APNG xử lý các khối điều khiển khung hình lặp lại, trong đó kích thước bị lỗi có thể gây tràn số nguyên hoặc cạn kiệt bộ nhớ heap.
Các véc-tơ tấn công đã biết
- Tràn số nguyên trong việc tính toán độ lệch khung hình (x_offset / y_offset) dẫn đến việc sắp xếp khung hình vượt quá giới hạn.
- Chiều rộng hoặc chiều cao khung hình không khớp gây đọc vượt quá giới hạn bộ đệm khi hòa trộn khung hình.
- Vòng lặp giải nén hoạt ảnh vô hạn làm cạn kiệt CPU trong các dịch vụ tạo hình thu nhỏ ở phía máy chủ.
Biện pháp phòng thủ tốt nhất: Xác thực giới hạn tổng kích thước canvas động và giới hạn số lượng khung hình tối đa cho phép trước khi raster hóa.
Nguồn gốc lịch sử và các cột mốc
Ưu điểm & Lợi ích chính
- Màu RGB 24-bit đầy đủ cộng với độ trong suốt alpha 8-bit, loại bỏ hoàn toàn các hiện tượng răng cưa ở viền của độ trong suốt GIF 1-bit.
- Tệp APNG có kèm hình tĩnh; bộ giải mã bỏ qua các phần hoạt ảnh có thể hiển thị hình đó dưới dạng ảnh tĩnh.
- Nhiều trình duyệt hiện nay hỗ trợ phát APNG; khả năng sử dụng tùy thuộc vào trình duyệt và phiên bản.
Hạn chế & Nhược điểm kỹ thuật
- Kích thước tệp lớn hơn so với các định dạng hoạt ảnh dựa trên video hiện đại như WebM hoặc MP4.
- Độ phức tạp khi mã hóa và mức sử dụng CPU trong quá trình tạo cao hơn so với GIF cũ.
- Thiếu khả năng dự đoán vectơ chuyển động giữa các khung hình được tìm thấy trong các codec video chuyên dụng.
Thông tin kỹ thuật thú vị
- Nhóm Phát triển PNG chính thức đã từ chối APNG vào năm 2007, ưu tiên định dạng MNG riêng biệt nhưng cuối cùng đã không được áp dụng.
- Apple đã sử dụng APNG cho các nhãn dán động trong App Store của Tin nhắn iOS 10, thúc đẩy việc áp dụng rộng rãi trên thiết bị di động.
- Nếu bạn mở tệp APNG trong trình xem ảnh cổ từ những năm 1990, nó sẽ hiển thị khung hình đầu tiên mà không bị treo.
Các câu hỏi kỹ thuật thường gặp
Tại sao APNG tốt hơn GIF?
APNG hỗ trợ 16,7 triệu màu và 256 mức độ trong suốt alpha mượt mà, trong khi GIF bị giới hạn ở 256 màu và độ trong suốt 1-bit cứng nhắc.
Trình duyệt hiện nay có hỗ trợ APNG không?
Nhiều trình duyệt hiện nay hỗ trợ phát APNG; khả năng sử dụng tùy thuộc vào trình duyệt và phiên bản.
Tôi có thể chuyển đổi APNG sang định dạng GIF hoặc MP4 tiêu chuẩn không?
Có. File2File.app có thể chuyển đổi các hoạt ảnh APNG thành các file GIF, MP4 hoặc WebM nhẹ trực tiếp trong trình duyệt web của bạn.
Các cặp chuyển đổi APNG liên quan
Chuyển APNG sang GIF có thể hữu ích nếu ứng dụng hỗ trợ GIF nhưng không hỗ trợ APNG. GIF giới hạn mỗi khung hình ở 256 màu và việc phát tùy thuộc ứng dụng.
Việc chuyển đổi tệp GIF động sang APNG biến hoạt ảnh raster 256 màu cổ điển thành chuỗi hình ảnh hiện đại có màu thực và độ trong suốt mượt mà.
Đặt khung hình mở đầu của APNG lên một trang PDF để làm phiếu thông số. Bản PDF là tài liệu tĩnh; các khung hình tiếp theo và thời gian phát của chúng không được đưa vào.