emptygif
ಭಾಷೆ: ಕನ್ನಡ

ಅತಿ ಚಿಕ್ಕ ಪಾರದರ್ಶಕ GIF 43 ಬೈಟ್‌ಗಳದ್ದು.

ಇಡೀ ಫೈಲ್ ಇಷ್ಟೇ. ಯಾವುದೇ ಬೈಟ್ ಏನು ಮಾಡುತ್ತದೆ ಎಂದು ನೋಡಲು ಅದನ್ನು ಆರಿಸಿ, ನಂತರ ಫೈಲ್ ಅನ್ನು ಕಾಪಿ ಮಾಡಿ, ಡೌನ್‌ಲೋಡ್ ಮಾಡಿ, ಹಾಟ್‌ಲಿಂಕ್ ಮಾಡಿ ಅಥವಾ ನಿಮ್ಮ ಸ್ವಂತ ಕೋಡ್‌ನಿಂದ ಸರ್ವ್ ಮಾಡಿ.

43 ಬೈಟ್‌ನ GIF, ದೊಡ್ಡದಾಗಿಸಿ ತೋರಿಸಲಾಗಿದೆ: ಒಂದು ಪಾರದರ್ಶಕ ಪಿಕ್ಸೆಲ್
0000
0010
0020
1×1.gif ಡೌನ್‌ಲೋಡ್ ಮಾಡಿ

R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==

ಪ್ರತಿ ಬೈಟ್ ಏನು ಮಾಡುತ್ತದೆ

GIF ಎಂಬುದು ಬ್ಲಾಕ್‌ಗಳ ಅನುಕ್ರಮ. ಈ ಫೈಲ್‌ನಲ್ಲಿ ಏಳು ಬ್ಲಾಕ್‌ಗಳಿವೆ, ಮತ್ತು ಈ ಪುಟದ ಪ್ರತಿ ಬಣ್ಣವೂ ಅವುಗಳಲ್ಲಿ ಒಂದಕ್ಕೆ ಸೇರಿದೆ. ಓದಲು ಒಂದು ಬೈಟ್ ಅಥವಾ ಬ್ಲಾಕ್ ಆರಿಸಿ. ಸಂಖ್ಯೆಗಳನ್ನು little-endian ಆಗಿ ಸಂಗ್ರಹಿಸಲಾಗುತ್ತದೆ: ಕೆಳಗಿನ ಬೈಟ್ ಮೊದಲು ಬರುತ್ತದೆ, ಆದ್ದರಿಂದ 01 00 ಎಂದರೆ 1.

ಬೈಟ್‌ಗಳುಫೀಲ್ಡ್ಅರ್ಥ
ಹೆಡರ್ ಇದು GIF ಎಂದು ಮತ್ತು ಫಾರ್ಮ್ಯಾಟ್‌ನ ಯಾವ ಆವೃತ್ತಿಯನ್ನು ನಿರೀಕ್ಷಿಸಬೇಕು ಎಂದು ಡಿಕೋಡರ್‌ಗೆ ತಿಳಿಸುತ್ತದೆ.
47 49 46ಸಿಗ್ನೇಚರ್ASCII ಅಕ್ಷರಗಳು “GIF”. ಪ್ರತಿ GIF ಫೈಲ್ ಇವುಗಳಿಂದಲೇ ಆರಂಭವಾಗುತ್ತದೆ.
38 39 61ಆವೃತ್ತಿ“89a”. ಪಾರದರ್ಶಕತೆಗೆ 89a ಅಗತ್ಯ; 87a ನಲ್ಲಿ ಗ್ರಾಫಿಕ್ ಕಂಟ್ರೋಲ್ ಎಕ್ಸ್‌ಟೆನ್ಶನ್ ಇಲ್ಲ.
ಲಾಜಿಕಲ್ ಸ್ಕ್ರೀನ್ ಡಿಸ್ಕ್ರಿಪ್ಟರ್ ಕ್ಯಾನ್ವಾಸ್‌ನ ಗಾತ್ರ ಮತ್ತು ಅದರ ಕಲರ್ ಟೇಬಲ್ ಅನ್ನು ಹೇಗೆ ಹೊಂದಿಸಲಾಗಿದೆ.
01 00ಕ್ಯಾನ್ವಾಸ್ ಅಗಲ1 px.
01 00ಕ್ಯಾನ್ವಾಸ್ ಎತ್ತರ1 px.
80ಪ್ಯಾಕ್ಡ್ ಫ್ಲ್ಯಾಗ್‌ಗಳುಒಂದೇ ಬೈಟ್‌ನಲ್ಲಿ ಅಡಕವಾದ ನಾಲ್ಕು ಸೆಟ್ಟಿಂಗ್‌ಗಳು. ಮೇಲಿನ ಬಿಟ್ ಮುಂದೆ ಗ್ಲೋಬಲ್ ಕಲರ್ ಟೇಬಲ್ ಇದೆ ಎಂದು ಹೇಳುತ್ತದೆ; ಕೊನೆಯ ಮೂರು ಬಿಟ್‌ಗಳು ಅದರ ಗಾತ್ರವನ್ನು ನೀಡುತ್ತವೆ.
00ಹಿನ್ನೆಲೆ ಬಣ್ಣದ ಇಂಡೆಕ್ಸ್ಪ್ಯಾಲೆಟ್ ಎಂಟ್ರಿ 0. ಬ್ರೌಸರ್‌ಗಳು ಇದನ್ನು ನಿರ್ಲಕ್ಷಿಸಿ, ಚಿತ್ರದ ಹಿಂದೆ ಇರುವುದನ್ನು ತೋರಿಸುತ್ತವೆ.
00ಪಿಕ್ಸೆಲ್ ಆಸ್ಪೆಕ್ಟ್ ರೇಶಿಯೋ0 ಎಂದರೆ ಚೌಕಾಕಾರದ ಪಿಕ್ಸೆಲ್‌ಗಳು, ಯಾವುದೇ ತಿದ್ದುಪಡಿ ಇಲ್ಲ.
ಗ್ಲೋಬಲ್ ಕಲರ್ ಟೇಬಲ್ ಪ್ಯಾಲೆಟ್. ಪಿಕ್ಸೆಲ್‌ಗಳು ಬಣ್ಣದ ಬದಲು ಈ ಪಟ್ಟಿಯೊಳಗಿನ ಇಂಡೆಕ್ಸ್ ಅನ್ನು ಸಂಗ್ರಹಿಸುತ್ತವೆ.
FF FF FFಪ್ಯಾಲೆಟ್ ಎಂಟ್ರಿಕೆಂಪು, ಹಸಿರು ಮತ್ತು ನೀಲಿ, ಪ್ರತಿಯೊಂದಕ್ಕೂ ಒಂದು ಬೈಟ್: #ffffff. GIF ಹೊಂದಬಹುದಾದ ಅತಿ ಚಿಕ್ಕ ಟೇಬಲ್ ಎರಡು ಎಂಟ್ರಿಗಳದ್ದು.
00 00 00ಪ್ಯಾಲೆಟ್ ಎಂಟ್ರಿಕೆಂಪು, ಹಸಿರು ಮತ್ತು ನೀಲಿ, ಪ್ರತಿಯೊಂದಕ್ಕೂ ಒಂದು ಬೈಟ್: #000000. GIF ಹೊಂದಬಹುದಾದ ಅತಿ ಚಿಕ್ಕ ಟೇಬಲ್ ಎರಡು ಎಂಟ್ರಿಗಳದ್ದು.
ಗ್ರಾಫಿಕ್ ಕಂಟ್ರೋಲ್ ಎಕ್ಸ್‌ಟೆನ್ಶನ್ GIF89a ನಲ್ಲಿ ಸೇರಿಸಲಾದ ಐಚ್ಛಿಕ ಬ್ಲಾಕ್. ಇಲ್ಲಿ ಇದು ಪ್ಯಾಲೆಟ್ ಎಂಟ್ರಿ 0 ಅನ್ನು ಪಾರದರ್ಶಕವಾಗಿಸುತ್ತದೆ.
21ಎಕ್ಸ್‌ಟೆನ್ಶನ್ ಇಂಟ್ರೊಡ್ಯೂಸರ್0x21 (“!”) ಒಂದು ಎಕ್ಸ್‌ಟೆನ್ಶನ್ ಬ್ಲಾಕ್‌ನ ಆರಂಭವನ್ನು ಘೋಷಿಸುತ್ತದೆ.
F9ಗ್ರಾಫಿಕ್ ಕಂಟ್ರೋಲ್ ಲೇಬಲ್ಈ ಎಕ್ಸ್‌ಟೆನ್ಶನ್ ಗ್ರಾಫಿಕ್ ಕಂಟ್ರೋಲ್ ಎಕ್ಸ್‌ಟೆನ್ಶನ್ ಎಂದು 0xF9 ಹೇಳುತ್ತದೆ.
04ಬ್ಲಾಕ್ ಗಾತ್ರಮುಂದೆ 4 ಬೈಟ್‌ಗಳ ಸೆಟ್ಟಿಂಗ್‌ಗಳು ಬರುತ್ತವೆ.
01ಪ್ಯಾಕ್ಡ್ ಫ್ಲ್ಯಾಗ್‌ಗಳುಅತಿ ಕೆಳಗಿನ ಬಿಟ್ ಪಾರದರ್ಶಕತೆಯ ಫ್ಲ್ಯಾಗ್. ಅದು ಆನ್ ಆಗಿದೆ, ಆದ್ದರಿಂದ ಕೆಳಗಿನ ಪಾರದರ್ಶಕ ಇಂಡೆಕ್ಸ್ ಬಳಕೆಯಾಗುತ್ತದೆ.
00 00ವಿಳಂಬಸೆಕೆಂಡಿನ 0 ನೂರನೇ ಭಾಗಗಳು. ಇದು ಅನಿಮೇಶನ್‌ಗಳಿಗೆ ಮಾತ್ರ ಮುಖ್ಯ.
00ಪಾರದರ್ಶಕ ಬಣ್ಣದ ಇಂಡೆಕ್ಸ್ಪ್ಯಾಲೆಟ್ ಎಂಟ್ರಿ 0 ಅನ್ನು ಸಂಪೂರ್ಣ ಪಾರದರ್ಶಕವಾಗಿ ಚಿತ್ರಿಸಲಾಗುತ್ತದೆ.
00ಬ್ಲಾಕ್ ಟರ್ಮಿನೇಟರ್ಬ್ಲಾಕ್ ಅನ್ನು ಮುಚ್ಚುವ ಶೂನ್ಯ ಉದ್ದದ ಸಬ್-ಬ್ಲಾಕ್.
ಇಮೇಜ್ ಡಿಸ್ಕ್ರಿಪ್ಟರ್ ಚಿತ್ರ ಕ್ಯಾನ್ವಾಸ್‌ನಲ್ಲಿ ಎಲ್ಲಿದೆ ಮತ್ತು ಎಷ್ಟು ದೊಡ್ಡದಿದೆ.
2Cಇಮೇಜ್ ಸೆಪರೇಟರ್0x2C (“,”) ಒಂದು ಚಿತ್ರವನ್ನು ಆರಂಭಿಸುತ್ತದೆ.
00 00ಎಡಚಿತ್ರ ಕ್ಯಾನ್ವಾಸ್‌ನ ಎಡ ಅಂಚಿನಿಂದ 0 px ದೂರದಲ್ಲಿ ಆರಂಭವಾಗುತ್ತದೆ.
00 00ಮೇಲೆಚಿತ್ರ ಕ್ಯಾನ್ವಾಸ್‌ನ ಮೇಲಿನ ಅಂಚಿನಿಂದ 0 px ದೂರದಲ್ಲಿ ಆರಂಭವಾಗುತ್ತದೆ.
01 00ಚಿತ್ರದ ಅಗಲ1 px.
01 00ಚಿತ್ರದ ಎತ್ತರ1 px.
00ಪ್ಯಾಕ್ಡ್ ಫ್ಲ್ಯಾಗ್‌ಗಳುಲೋಕಲ್ ಕಲರ್ ಟೇಬಲ್ ಇಲ್ಲ, ಇಂಟರ್‌ಲೇಸ್ ಇಲ್ಲ. ಚಿತ್ರ ಗ್ಲೋಬಲ್ ಪ್ಯಾಲೆಟ್ ಅನ್ನು ಬಳಸುತ್ತದೆ.
ಇಮೇಜ್ ಡೇಟಾ LZW ನಿಂದ ಕಂಪ್ರೆಸ್ ಮಾಡಿ, ಗರಿಷ್ಠ 255 ಬೈಟ್‌ಗಳ ಸಬ್-ಬ್ಲಾಕ್‌ಗಳಾಗಿ ವಿಭಜಿಸಲಾದ ಪಿಕ್ಸೆಲ್‌ಗಳು.
02LZW ಕನಿಷ್ಠ ಕೋಡ್ ಗಾತ್ರ2, ಆದ್ದರಿಂದ ಕಂಪ್ರೆಸ್ಡ್ ಕೋಡ್‌ಗಳು 3 ಬಿಟ್ ಅಗಲದಿಂದ ಆರಂಭವಾಗುತ್ತವೆ.
02ಸಬ್-ಬ್ಲಾಕ್ ಗಾತ್ರಮುಂದೆ 2 ಬೈಟ್‌ಗಳ ಕಂಪ್ರೆಸ್ಡ್ ಡೇಟಾ ಬರುತ್ತದೆ.
44 01ಕಂಪ್ರೆಸ್ಡ್ ಪಿಕ್ಸೆಲ್‌ಗಳುಅತಿ ಕೆಳಗಿನ ಬಿಟ್‌ನಿಂದ ಮೇಲಕ್ಕೆ ಪ್ಯಾಕ್ ಮಾಡಲಾದ LZW ಕೋಡ್‌ಗಳು. ಅವು ಹೇಗೆ ಡಿಕೋಡ್ ಆಗುತ್ತವೆ ಎಂದು ಕೆಳಗೆ ನೋಡಿ.
00ಬ್ಲಾಕ್ ಟರ್ಮಿನೇಟರ್ಬ್ಲಾಕ್ ಅನ್ನು ಮುಚ್ಚುವ ಶೂನ್ಯ ಉದ್ದದ ಸಬ್-ಬ್ಲಾಕ್.
ಟ್ರೈಲರ್ ಫೈಲ್‌ನ ಅಂತ್ಯವನ್ನು ಸೂಚಿಸುವ ಒಂದು ಬೈಟ್.
3Bಟ್ರೈಲರ್0x3B (“;”) ಫೈಲ್ ಅನ್ನು ಕೊನೆಗೊಳಿಸುತ್ತದೆ.

ಪ್ಯಾಕ್ಡ್ ಬೈಟ್‌ಗಳ ಒಳಗೆ

ಮೂರು ಬೈಟ್‌ಗಳಲ್ಲಿ ಪ್ರತಿಯೊಂದೂ ಹಲವು ಸಣ್ಣ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಸಂಗ್ರಹಿಸುತ್ತದೆ. ಬಿಟ್ 7 ಅತ್ಯಂತ ಎಡದ್ದು.

ಲಾಜಿಕಲ್ ಸ್ಕ್ರೀನ್ ಡಿಸ್ಕ್ರಿಪ್ಟರ್ 0x80
1ಗ್ಲೋಬಲ್ ಕಲರ್ ಟೇಬಲ್ ಇದೆ
000ಕಲರ್ ರೆಸಲ್ಯೂಶನ್
0ಪ್ರಾಮುಖ್ಯತೆಯ ಪ್ರಕಾರ ವಿಂಗಡಿಸಿದ ಪ್ಯಾಲೆಟ್
000ಟೇಬಲ್ ಗಾತ್ರ: 2^(n+1) ಎಂಟ್ರಿಗಳು
ಗ್ರಾಫಿಕ್ ಕಂಟ್ರೋಲ್ ಎಕ್ಸ್‌ಟೆನ್ಶನ್ 0x01
000ಕಾಯ್ದಿರಿಸಲಾಗಿದೆ
000ಡಿಸ್ಪೋಸಲ್ ವಿಧಾನ
0ಬಳಕೆದಾರರ ಇನ್‌ಪುಟ್‌ಗಾಗಿ ಕಾಯಿರಿ
1ಪಾರದರ್ಶಕತೆ ಆನ್
ಇಮೇಜ್ ಡಿಸ್ಕ್ರಿಪ್ಟರ್ 0x00
0ಲೋಕಲ್ ಕಲರ್ ಟೇಬಲ್ ಇದೆ
0ಇಂಟರ್‌ಲೇಸ್ಡ್
0ಪ್ರಾಮುಖ್ಯತೆಯ ಪ್ರಕಾರ ವಿಂಗಡಿಸಿದ ಪ್ಯಾಲೆಟ್
00ಕಾಯ್ದಿರಿಸಲಾಗಿದೆ
000ಲೋಕಲ್ ಟೇಬಲ್ ಗಾತ್ರ

ಎರಡು ಬೈಟ್‌ಗಳು ಒಂದು ಪಿಕ್ಸೆಲ್ ಅನ್ನು ಹೇಗೆ ಹಿಡಿದಿಡುತ್ತವೆ

ಕನಿಷ್ಠ ಕೋಡ್ ಗಾತ್ರ 2 ಇದ್ದಾಗ, ಡಿಕೋಡರ್ 3-ಬಿಟ್ ಕೋಡ್‌ಗಳನ್ನು ಓದುತ್ತದೆ. ಕೋಡ್ 4 ಟೇಬಲ್ ಅನ್ನು ತೆರವುಗೊಳಿಸುತ್ತದೆ, ಕೋಡ್ 5 ಚಿತ್ರವನ್ನು ಕೊನೆಗೊಳಿಸುತ್ತದೆ, ಮತ್ತು 0 ರಿಂದ 3 ರವರೆಗಿನ ಕೋಡ್‌ಗಳು ಪ್ಯಾಲೆಟ್ ಎಂಟ್ರಿಗಳು. 44 01 ಬೈಟ್‌ಗಳನ್ನು ಅತಿ ಕೆಳಗಿನ ಬಿಟ್‌ನಿಂದ ಮೇಲಕ್ಕೆ ಓದಲಾಗುತ್ತದೆ:

0x44 010001000x01 00000001

  1. 001100 = 4ಕ್ಲಿಯರ್: ಹೊಸ ಟೇಬಲ್‌ನೊಂದಿಗೆ ಆರಂಭಿಸಿ
  2. 000000 = 0ಪಿಕ್ಸೆಲ್: ಪ್ಯಾಲೆಟ್ ಎಂಟ್ರಿ 0
  3. 101101 = 5ಚಿತ್ರದ ಅಂತ್ಯ
  4. 0000000 ಬಳಕೆಯಾಗದ ಪ್ಯಾಡಿಂಗ್ ಬಿಟ್‌ಗಳು

ದೊಡ್ಡ ಚಿತ್ರಗಳೂ ಇದೇ ತಂತ್ರವನ್ನು ಬಳಸುತ್ತವೆ: ಪ್ರತಿ ಹೊಸ ಕೋಡ್ ಹಿಂದಿನದಕ್ಕಿಂತ ಒಂದು ಪಿಕ್ಸೆಲ್ ಉದ್ದದ ಸರಣಿಯನ್ನು ಪ್ರತಿನಿಧಿಸುತ್ತದೆ, ಆದ್ದರಿಂದ 1000×1000 ಪಾರದರ್ಶಕ GIF ಕೇವಲ 1,743 ಬೈಟ್‌ಗಳನ್ನು ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ.

ಇದು ಇನ್ನೂ ಚಿಕ್ಕದಾಗಬಹುದೇ?

ಹೌದು, ಡಿಕೋಡರ್‌ಗಳು ಇಲ್ಲದಿದ್ದರೂ ಸಹಿಸಿಕೊಳ್ಳುವ ಭಾಗಗಳನ್ನು ತೆಗೆದರೆ. ನಾವು ಪ್ರತಿ ವೇರಿಯಂಟ್ ಅನ್ನು ಮೂರು ಬ್ರೌಸರ್ ಎಂಜಿನ್‌ಗಳಿಗೆ ಮತ್ತು Pillow ಗೆ ನೀಡಿ, ಅವು ಏನು ಚಿತ್ರಿಸಿದವು ಎಂದು ದಾಖಲಿಸಿದ್ದೇವೆ.

ಗಾತ್ರವೇರಿಯಂಟ್ChromiumFirefoxWebKitPillow
43ಈ ಪುಟದ ಪ್ರಮಾಣಿತ ಫೈಲ್.ಪಾರದರ್ಶಕಪಾರದರ್ಶಕಪಾರದರ್ಶಕಪಾರದರ್ಶಕ
42ಟ್ರೈಲರ್ ಬೈಟ್ ಇಲ್ಲ. ಡಿಕೋಡರ್‌ಗಳು ಹೇಗಿದ್ದರೂ ಡೇಟಾದ ಕೊನೆಯಲ್ಲಿ ನಿಲ್ಲುತ್ತವೆ.ಪಾರದರ್ಶಕಪಾರದರ್ಶಕಪಾರದರ್ಶಕಪಾರದರ್ಶಕ
37ಪ್ಯಾಲೆಟ್ ಇಲ್ಲವೇ ಇಲ್ಲ. ಆದರೂ ಮಾನ್ಯ: ಸ್ಪೆಸಿಫಿಕೇಶನ್ ಡಿಕೋಡರ್‌ಗಳಿಗೆ ತಮ್ಮದೇ ಪ್ಯಾಲೆಟ್ ಬಳಸಲು ಅನುಮತಿಸುತ್ತದೆ, ಮತ್ತು ಇಂಡೆಕ್ಸ್ 0 ಹೇಗಿದ್ದರೂ ಪಾರದರ್ಶಕ.ಪಾರದರ್ಶಕಪಾರದರ್ಶಕಪಾರದರ್ಶಕಪಾರದರ್ಶಕ
36ಪ್ಯಾಲೆಟ್ ಇಲ್ಲ, ಟ್ರೈಲರ್ ಇಲ್ಲ.ಪಾರದರ್ಶಕಪಾರದರ್ಶಕಪಾರದರ್ಶಕಪಾರದರ್ಶಕ
35ಪಾರದರ್ಶಕತೆ ಬ್ಲಾಕ್ ಇಲ್ಲ: ಪಿಕ್ಸೆಲ್ ಅನ್ನು ಪ್ಯಾಲೆಟ್ ಬಣ್ಣ 0, ಅಂದರೆ ಬಿಳಿ, ಯಲ್ಲಿ ಚಿತ್ರಿಸಲಾಗುತ್ತದೆ.ಬಿಳಿಬಿಳಿಬಿಳಿಬಿಳಿ
351987 ರ ಫಾರ್ಮ್ಯಾಟ್. ಇದರಲ್ಲಿ ಬಣ್ಣವನ್ನು ಪಾರದರ್ಶಕ ಎಂದು ಗುರುತಿಸಲು ಯಾವುದೇ ಮಾರ್ಗವಿಲ್ಲ.ಬಿಳಿಬಿಳಿಬಿಳಿಬಿಳಿ
34ಪಾರದರ್ಶಕತೆ ಬ್ಲಾಕ್ ಇದೆ, ಆದರೆ ಕಂಪ್ರೆಸ್ಡ್ ಪಿಕ್ಸೆಲ್‌ಗಳಿಲ್ಲ.ಪಾರದರ್ಶಕಪಾರದರ್ಶಕಪಾರದರ್ಶಕದೋಷ
33ಅದೇ, ಟ್ರೈಲರ್ ಇಲ್ಲದೆ.ಪಾರದರ್ಶಕಪಾರದರ್ಶಕಪಾರದರ್ಶಕದೋಷ
29ಪ್ಯಾಲೆಟ್ ಇಲ್ಲ, ಪಾರದರ್ಶಕತೆ ಇಲ್ಲ. ಪ್ರತಿ ಎಂಜಿನ್ ತನ್ನದೇ ಬಣ್ಣವನ್ನು ಆರಿಸುತ್ತದೆ.ಕಪ್ಪುಬಿಳಿಪಾರದರ್ಶಕಕಪ್ಪು
26ಯಾವುದೇ ಕಂಪ್ರೆಸ್ಡ್ ಡೇಟಾ ಇಲ್ಲದ ಚಿತ್ರ.ಪಾರದರ್ಶಕಪಾರದರ್ಶಕಪಾರದರ್ಶಕದೋಷ
14ಹೆಡರ್, ಕ್ಯಾನ್ವಾಸ್ ಗಾತ್ರ ಮತ್ತು ಟ್ರೈಲರ್ ಮಾತ್ರ. ಇದರಲ್ಲಿ ಯಾವುದೇ ಚಿತ್ರವಿಲ್ಲ.ಪಾರದರ್ಶಕದೋಷಪಾರದರ್ಶಕದೋಷ

ಎಲ್ಲೆಡೆ ಕೆಲಸ ಮಾಡಲೇಬೇಕಾದಾಗ 43 ಬೈಟ್‌ಗಳನ್ನು ಬಳಸಿ. 37 ಬೈಟ್‌ಗಳದ್ದೂ ಮಾನ್ಯ GIF ಆಗಿದ್ದು, ನಾವು ಪರೀಕ್ಷಿಸಿದ ಎಲ್ಲಾ ಎಂಜಿನ್‌ಗಳಲ್ಲಿ ಪಾರದರ್ಶಕವಾಗಿತ್ತು. ಅದಕ್ಕಿಂತ ಕಡಿಮೆಯಾದರೆ ನೀವು ಡಿಕೋಡರ್‌ನ ಸಡಿಲತೆಯನ್ನು ಅವಲಂಬಿಸುತ್ತೀರಿ; ಎಂಜಿನ್‌ಗಳು ಹೇಗೆ ಭಿನ್ನವಾಗಿ ವರ್ತಿಸುತ್ತವೆ ಎಂದು 29 ಬೈಟ್‌ನ ಫೈಲ್ ತೋರಿಸುತ್ತದೆ.

ಸೆಪ್ಟೆಂಬರ್ 23, 2026 ರಂದು Chromium 153.0.8010.12, Firefox 155.0, WebKit 26.6, Pillow 12.2.0 ನಲ್ಲಿ ಪರಿಶೀಲಿಸಲಾಗಿದೆ.

ಯಾವುದೇ ಗಾತ್ರದಲ್ಲಿ ರಚಿಸಿ

ಪಾರದರ್ಶಕ ಅಥವಾ ಏಕವರ್ಣ, 1×1 ರಿಂದ 65535×65535 ರವರೆಗೆ. ಇದು ನಿಮ್ಮ ಬ್ರೌಸರ್‌ನಲ್ಲೇ ರಚನೆಯಾಗುತ್ತದೆ; ಏನನ್ನೂ ಅಪ್‌ಲೋಡ್ ಮಾಡಲಾಗುವುದಿಲ್ಲ.

ಭರ್ತಿ
ಸಾಮಾನ್ಯ ಗಾತ್ರಗಳು

1×1 · 43 ಬೈಟ್‌ಗಳು

GIF ಡೌನ್‌ಲೋಡ್ ಮಾಡಿ

ನಿಮ್ಮ ಸ್ಟ್ಯಾಕ್‌ನಿಂದ ಸರ್ವ್ ಮಾಡಿ

ರನ್ ಮಾಡಲು ಸಿದ್ಧವಾದ 173 ಸ್ನಿಪೆಟ್‌ಗಳು. ನಿಮ್ಮದನ್ನು ಆರಿಸಿ: ಪ್ರತಿಯೊಂದೂ ನೀವು ಆರಿಸುವ ಪಾತ್‌ನಲ್ಲಿ image/gif ರೆಸ್ಪಾನ್ಸ್ ನೀಡುತ್ತದೆ. ನೀವು ಮೇಲೆ ಗಾತ್ರ ಅಥವಾ ಬಣ್ಣವನ್ನು ಬದಲಿಸಿದ್ದರೆ, ಸ್ನಿಪೆಟ್‌ಗಳು ಆ GIF ಅನ್ನೇ ಬಳಸುತ್ತವೆ.

Elixir, Erlang & Gleam

Express JavaScript

ಇನ್‌ಸ್ಟಾಲ್
npm i express
ಫೈಲ್
server.mjs
ರನ್
node server.mjs
import express from 'express';

const GIF = Buffer.from('R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==', 'base64');

const app = express();

app.get('/pixel.gif', (req, res) => {
  res.set('Cache-Control', 'no-store');
  res.type('gif').send(GIF);
});

app.listen(8080);

ನಾವು ಈ ಸ್ನಿಪೆಟ್ ಅನ್ನು ರನ್ ಮಾಡಿ, ಅದು ಹಿಂತಿರುಗಿಸಿದ ಬೈಟ್‌ಗಳನ್ನು ಹೋಲಿಸಿದ್ದೇವೆ. ಪುಟ ತೆರೆಯಿರಿ

ಇದನ್ನು ಯಾವುದಕ್ಕೆ ಬಳಸಲಾಗುತ್ತದೆ

  • ಟ್ರ್ಯಾಕಿಂಗ್ ಪಿಕ್ಸೆಲ್‌ಗಳು ಮತ್ತು ಬೀಕನ್‌ಗಳು: ಸರ್ವರ್ ವಿನಂತಿಯನ್ನು ಲಾಗ್ ಮಾಡಿ, ಅತಿ ಚಿಕ್ಕ ಮಾನ್ಯ ಚಿತ್ರದೊಂದಿಗೆ ಉತ್ತರಿಸುತ್ತದೆ.
  • lazy-load ಆಗುವ ಚಿತ್ರಗಳಿಗೆ ಪ್ಲೇಸ್‌ಹೋಲ್ಡರ್‌ಗಳು, ಆದ್ದರಿಂದ ನಿಜವಾದ ಮೂಲ ಬರುವ ಮೊದಲೇ img ಟ್ಯಾಗ್ ಮಾನ್ಯವಾಗಿರುತ್ತದೆ.
  • CSS ಬೆಂಬಲ ಅಸಮರ್ಪಕವಾಗಿರುವ HTML ಇಮೇಲ್‌ಗಳಲ್ಲಿ ನಿಗದಿತ ಗಾತ್ರದ ಸ್ಪೇಸರ್‌ಗಳು.
  • ಚಿತ್ರ ಫೈಲ್ ಅನ್ನು ಜೊತೆಗಿಟ್ಟುಕೊಳ್ಳದೆ ನಿಜವಾದ ಚಿತ್ರ ಬೇಕಾಗುವ ಟೆಸ್ಟ್‌ಗಳು ಮತ್ತು mock ಗಳು.

ಟ್ರ್ಯಾಕಿಂಗ್ ಪಿಕ್ಸೆಲ್‌ಗಳು ಕಾಣುವಷ್ಟು ವಿಶ್ವಾಸಾರ್ಹವಲ್ಲ

Mail Privacy Protection ಆನ್ ಆಗಿದ್ದಾಗ Apple Mail ರಿಮೋಟ್ ಚಿತ್ರಗಳನ್ನು ಪ್ರಾಕ್ಸಿ ಮೂಲಕ ಮೊದಲೇ ಲೋಡ್ ಮಾಡುತ್ತದೆ, ಆದ್ದರಿಂದ ಒಂದು “ಓಪನ್” ಯಾವುದೇ ವ್ಯಕ್ತಿಯಿಂದ ಆಗಿರದೇ ಇರಬಹುದು. Gmail ಕೂಡ ಚಿತ್ರಗಳನ್ನು ತನ್ನದೇ ಪ್ರಾಕ್ಸಿ ಮೂಲಕ ತಂದು ಕ್ಯಾಶ್ ಮಾಡುತ್ತದೆ. ಅನೇಕ ಕ್ಲೈಂಟ್‌ಗಳು ಡೀಫಾಲ್ಟ್ ಆಗಿ ರಿಮೋಟ್ ಚಿತ್ರಗಳನ್ನು ನಿರ್ಬಂಧಿಸುತ್ತವೆ. ಪುಟದ ಅನಾಲಿಟಿಕ್ಸ್‌ಗೆ, ಚಿತ್ರಕ್ಕಿಂತ navigator.sendBeacon() ಅಥವಾ 204 No Content ರೆಸ್ಪಾನ್ಸ್ ಹೆಚ್ಚಾಗಿ ಸೂಕ್ತ.

ಪ್ರಶ್ನೆಗಳು

ಇದರಲ್ಲಿ ಪಿಕ್ಸೆಲ್ ಇದ್ದರೂ ಇದನ್ನು ಖಾಲಿ ಎಂದು ಏಕೆ ಕರೆಯುತ್ತಾರೆ?
GIF ನಲ್ಲಿ ಕನಿಷ್ಠ ಒಂದು ಪಿಕ್ಸೆಲ್ ಇರಲೇಬೇಕು. ಇದು 1×1 ಆಗಿದ್ದು, ಇದರ ಏಕೈಕ ಬಣ್ಣವನ್ನು ಪಾರದರ್ಶಕ ಎಂದು ಗುರುತಿಸಲಾಗಿದೆ, ಆದ್ದರಿಂದ ಏನೂ ಕಾಣುವುದಿಲ್ಲ.
43 ಬೈಟ್‌ನ ಫೈಲ್ ಮಾನ್ಯವೇ?
ಹೌದು. ಇದು GIF89a ಸ್ಪೆಸಿಫಿಕೇಶನ್ ಅನ್ನು ನಿಖರವಾಗಿ ಅನುಸರಿಸುತ್ತದೆ, ಮತ್ತು ಮೇಲಿನ ಟೇಬಲ್‌ನ ಪ್ರತಿ ಎಂಜಿನ್ ಇದನ್ನು ಪಾರದರ್ಶಕವಾಗಿ ಚಿತ್ರಿಸುತ್ತದೆ.
PNG ಅಥವಾ WebP ಬದಲು GIF ಏಕೆ?
ಇದು ಅತಿ ಚಿಕ್ಕ ಪಾರದರ್ಶಕ PNG ಗಿಂತಲೂ ಚಿಕ್ಕದು, ಮತ್ತು ಕಳೆದ 35 ವರ್ಷಗಳ ಪ್ರತಿ ಬ್ರೌಸರ್, ಇಮೇಲ್ ಕ್ಲೈಂಟ್ ಮತ್ತು ಇಮೇಜ್ ಲೈಬ್ರರಿ ಇದನ್ನು ಓದಬಲ್ಲವು.
ನಾನು data URI ಬಳಸಲೇ ಅಥವಾ ಫೈಲ್?
data URI ಒಂದು ವಿನಂತಿಯನ್ನು ಉಳಿಸುತ್ತದೆ ಮತ್ತು ಪ್ಲೇಸ್‌ಹೋಲ್ಡರ್‌ಗಳು ಹಾಗೂ CSS ಗೆ ಸೂಕ್ತ. ಟ್ರ್ಯಾಕಿಂಗ್ ಪಿಕ್ಸೆಲ್‌ಗಳಂತೆ ವಿನಂತಿಯೇ ಉದ್ದೇಶವಾಗಿದ್ದಾಗ ಫೈಲ್ ಅಥವಾ ಎಂಡ್‌ಪಾಯಿಂಟ್ ಬೇಕು.
ಯಾವ Content-Type ಕಳುಹಿಸಬೇಕು?
image/gif. ಪ್ರತಿ ವಿನಂತಿಯೂ ನಿಮ್ಮ ಸರ್ವರ್ ತಲುಪಲೇಬೇಕಾದರೆ Cache-Control: no-store ಸೇರಿಸಿ.