2011-08-19 16 views
6

Tôi đã chia nhỏ hình ảnh gif và đây là dữ liệu trong tiêu đề: ['G', 'I', 'F', '8', '9', ' a ','^',' \ x01 ','^',' \ x01 ',' \ x87 ',' \ x00 ',' \ x00 ',' \ x00 ',' \ x00 ',' \ x00 ' , '\ x01', '\ x00', '\ x00', '\ x01']Mục đích của các bit có độ phân giải màu trong hình gif

0x87 đại diện cho byte cờ trong gif. Chuyển đổi kết quả này sang kết quả nhị phân bằng 0b10000111.

Tôi đang sử dụng http://www.matthewflickinger.com/lab/whatsinagif/bits_and_bytes.asp làm tài liệu tham khảo.

Vì vậy, theo trang web đó, gif có độ phân giải màu (không + 1) (2 màu có thể, mặc dù hình ảnh có nhiều màu hơn). Tôi đã thử chỉnh sửa số này và dường như nó không thay đổi gì cả. Ai đó có thể giải thích mục đích của các bit độ phân giải màu?

Trả lời

5

bạn có thể chỉnh sửa nó mà không gây hại vì không cần giải mã dữ liệu - tất cả những gì nó mô tả "nguồn" dữ liệu (ba bit cuối cùng trong byte đó là những gì áp dụng cho hình ảnh cụ thể này).

tiêu chuẩn riêng của mình http://www.w3.org/Graphics/GIF/spec-gif89a.txt (trang 9) nói:

Giá trị này thể hiện kích thước của toàn bộ bảng màu mà từ đó các màu sắc trong đồ họa đã được lựa chọn, không phải là số lượng màu sắc thực sự sử dụng trong đồ họa.

và sau đó tiếp tục thêm:

Giá trị này nên được thiết lập để chỉ ra sự phong phú của bản gốc bảng, ngay cả khi không phải mọi màu sắc từ toàn bộ bảng màu có sẵn trên máy nguồn .

vì vậy có vẻ như ngay cả các tác giả gốc cũng không biết nhiều về cách sử dụng nó. và vì nó không thực sự hữu ích, tôi tưởng tượng nó không được thiết lập chính xác bởi một số phần mềm.

[sử dụng duy nhất tôi có thể thấy là nếu giá trị này lớn hơn độ sâu màu thực tế được sử dụng, bạn có thể thêm chú thích/cửa sổ bật lên "hình ảnh gốc tốt hơn".]

Các vấn đề liên quan