emptygif
زبان: اردو

سب سے چھوٹی شفاف GIF صرف 43 بائٹ کی ہے۔

پوری فائل یہی ہے۔ کسی بھی بائٹ کو منتخب کر کے دیکھیں کہ وہ کیا کرتی ہے، پھر فائل کاپی کریں، ڈاؤن لوڈ کریں، ہاٹ لنک کریں یا اپنے کوڈ سے سرو کریں۔

43 بائٹ کی GIF، بڑی کر کے: ایک شفاف پکسل
0000
0010
0020
1×1.gif ڈاؤن لوڈ کریں

R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==

اپنی GIF کی جانچ کریں

ہر بائٹ کیا کرتی ہے

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محفوظ (reserved)
000ڈسپوزل طریقہ
0یوزر اِن پٹ کا انتظار
1شفافیت آن
امیج ڈسکرپٹر 0x00
0لوکل کلر ٹیبل موجود ہے
0انٹرلیسڈ
0پیلیٹ اہمیت کے لحاظ سے ترتیب شدہ
00محفوظ (reserved)
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 فائل جو ہم بنا سکے، انہی چار انجنوں کو دی گئی۔ کوئی بھی قطار کھولیں اور اس کے بائٹس دیکھیں، جو انہی GIF بلاکس کے رنگوں میں ہیں جو یہی کام کرتے ہیں۔

سائزفائلData URIChromiumFirefoxWebKitPillow
28
WebP یہی فائل، دو پیڈنگ بائٹس کے بغیر۔ WebKit 30 بائٹس سے چھوٹی WebP فائلیں مسترد کر دیتا ہے۔
52 49 46 46 14 00 00 00 57 45 42 50 56 50 38 4c 08 00 00 00 2f 00 00 00 10 88 88 08
  • RIFF … WEBP کنٹینر 12
  • VP8L chunk کنٹینر 8
  • 0x2F دستخط 1
  • width, height, alpha سائز 4
  • prefix codes پکسلز 3
63شفافشفافخرابیشفاف
30
WebP لاس لیس VP8L۔ ہر پریفکس کوڈ میں صرف ایک سمبل ہے، اس لیے پکسلز کوئی بٹ نہیں لیتے اور فائل 16384×16384 تک اسی سائز کی رہتی ہے۔
52 49 46 46 16 00 00 00 57 45 42 50 56 50 38 4c 0a 00 00 00 2f 00 00 00 10 88 88 08 00 00
  • RIFF … WEBP کنٹینر 12
  • VP8L chunk کنٹینر 8
  • 0x2F دستخط 1
  • width, height, alpha سائز 4
  • prefix codes پکسلز 3
  • padding پیڈنگ 2
63شفافشفافشفافشفاف
43
GIF اسی صفحے کے اوپر والی 43 بائٹ کی GIF۔
47 49 46 38 39 61 01 00 01 00 80 00 00 ff ff ff 00 00 00 21 f9 04 01 00 00 00 00 2c 00 00 00 00 01 00 01 00 00 02 02 44 01 00 3b
  • ہیڈر 6
  • لاجیکل اسکرین ڈسکرپٹر 7
  • گلوبل کلر ٹیبل 6
  • گرافک کنٹرول ایکسٹینشن 8
  • امیج ڈسکرپٹر 10
  • امیج ڈیٹا 5
  • ٹریلر 1
82شفافشفافشفافشفاف
58
BMP کلاسک 40 بائٹ کے ہیڈر میں الفا ماسک نہیں ہوتا، اس لیے چوتھا بائٹ نظرانداز ہو جاتا ہے اور پکسل ہر جگہ کالا دکھتا ہے۔
42 4d 3a 00 00 00 00 00 00 00 36 00 00 00 28 00 00 00 01 00 00 00 01 00 00 00 01 00 20 00 00 00 00 00 04 00 00 00 13 0b 00 00 13 0b 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  • BITMAPFILEHEADER دستخط 14
  • BITMAPINFOHEADER سائز 40
  • BGRA پکسلز 4
102سیاہسیاہسیاہسیاہ
62
SVG چوڑائی اور اونچائی والا ایک خالی svg عنصر۔ Pillow SVG نہیں پڑھتا۔
<svg xmlns="http://www.w3.org/2000/svg" width="1" height="1"/>
  • <svg xmlns> دستخط 39
  • width, height سائز 21
  • /> اختتام 2
85شفافشفافشفافخرابی
67
PNG الفا کے ساتھ ٹرُو کلر۔ صفروں کی واحد اسکین لائن ہاتھ سے کمپریس کی گئی ہے، جو zlib کی بہترین سیٹنگ سے ایک بائٹ چھوٹی ہے۔
89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 00 00 00 01 00 00 00 01 08 06 00 00 00 1f 15 c4 89 00 00 00 0a 49 44 41 54 78 01 63 00 01 00 00 05 00 01 36 d0 88 dd 00 00 00 00 49 45 4e 44 ae 42 60 82
  • PNG signature دستخط 8
  • IHDR سائز 25
  • IDAT پکسلز 22
  • IEND اختتام 12
114شفافشفافشفافشفاف
70
ICO ایک favicon جس میں 32 بٹ بٹ میپ اور اس کا 1 بٹ AND ماسک ہے۔
00 00 01 00 01 00 01 01 00 00 01 00 20 00 30 00 00 00 16 00 00 00 28 00 00 00 01 00 00 00 02 00 00 00 01 00 20 00 00 00 00 00 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 00 00 00
  • ICONDIR دستخط 6
  • ICONDIRENTRY سائز 16
  • BITMAPINFOHEADER سائز 40
  • BGRA پکسلز 4
  • AND mask شفافیت 4
121شفافشفافشفافشفاف
74
BMP الفا ماسک والا 56 بائٹ کا ہیڈر۔ WebKit اسے لوڈ نہیں کرتا۔
42 4d 4a 00 00 00 00 00 00 00 46 00 00 00 38 00 00 00 01 00 00 00 01 00 00 00 01 00 20 00 03 00 00 00 04 00 00 00 13 0b 00 00 13 0b 00 00 00 00 00 00 00 00 00 00 00 00 ff 00 00 ff 00 00 ff 00 00 00 00 00 00 ff 00 00 00 00
  • BITMAPFILEHEADER دستخط 14
  • BITMAPV3INFOHEADER سائز 56
  • BGRA پکسلز 4
122شفافشفافخرابیشفاف
89
ICO ایک favicon جس میں 67 بائٹ کی PNG ہے۔
00 00 01 00 01 00 01 01 00 00 01 00 20 00 43 00 00 00 16 00 00 00 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 00 00 00 01 00 00 00 01 08 06 00 00 00 1f 15 c4 89 00 00 00 0a 49 44 41 54 78 01 63 00 01 00 00 05 00 01 36 d0 88 dd 00 00 00 00 49 45 4e 44 ae 42 60 82
  • ICONDIR دستخط 6
  • ICONDIRENTRY سائز 16
  • PNG signature دستخط 8
  • IHDR سائز 25
  • IDAT پکسلز 22
  • IEND اختتام 12
145شفافشفافشفافشفاف
126
BMP V4 ہیڈر۔ WebKit اس کا الفا ماسک نظرانداز کر کے کالا بناتا ہے۔
42 4d 7e 00 00 00 00 00 00 00 7a 00 00 00 6c 00 00 00 01 00 00 00 01 00 00 00 01 00 20 00 03 00 00 00 04 00 00 00 13 0b 00 00 13 0b 00 00 00 00 00 00 00 00 00 00 00 00 ff 00 00 ff 00 00 ff 00 00 00 00 00 00 ff 42 47 52 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  • BITMAPFILEHEADER دستخط 14
  • BITMAPV4INFOHEADER سائز 108
  • BGRA پکسلز 4
190شفافشفافسیاہشفاف
142
BMP V5 ہیڈر، WebKit میں وہی نتیجہ۔
42 4d 8e 00 00 00 00 00 00 00 8a 00 00 00 7c 00 00 00 01 00 00 00 01 00 00 00 01 00 20 00 03 00 00 00 04 00 00 00 13 0b 00 00 13 0b 00 00 00 00 00 00 00 00 00 00 00 00 ff 00 00 ff 00 00 ff 00 00 00 00 00 00 ff 42 47 52 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
  • BITMAPFILEHEADER دستخط 14
  • BITMAPV5INFOHEADER سائز 124
  • BGRA پکسلز 4
214شفافشفافسیاہشفاف
437
AVIF یہی فائل 4:0:0 سب سیمپلنگ کے ساتھ، جو رنگ کی پلینز ہٹا دیتی ہے۔
00 00 00 1c 66 74 79 70 61 76 69 66 00 00 00 00 61 76 69 66 6d 69 66 31 6d 69 61 66 00 00 01 6a 6d 65 74 61 00 00 00 00 00 00 00 21 68 64 6c 72 00 00 00 00 00 00 00 00 70 69 63 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0e 70 69 74 6d 00 00 00 00 00 01 00 00 00 2c 69 6c 6f 63 00 00 00 00 44 00 00 02 00 01 00 00 00 01 00 00 01 a0 00 00 00 15 00 02 00 00 00 01 00 00 01 8e 00 00 00 12 00 00 00 42 69 69 6e 66 00 00 00 00 00 02 00 00 00 1a 69 6e 66 65 02 00 00 00 00 01 00 00 61 76 30 31 43 6f 6c 6f 72 00 00 00 00 1a 69 6e 66 65 02 00 00 00 00 02 00 00 61 76 30 31 41 6c 70 68 61 00 00 00 00 1a 69 72 65 66 00 00 00 00 00 00 00 0e 61 75 78 6c 00 02 00 01 00 01 00 00 00 a7 69 70 72 70 00 00 00 81 69 70 63 6f 00 00 00 14 69 73 70 65 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 0e 70 69 78 69 00 00 00 00 01 08 00 00 00 0c 61 76 31 43 81 00 1c 00 00 00 00 13 63 6f 6c 72 6e 63 6c 78 00 01 00 0d 00 06 80 00 00 00 38 61 75 78 43 00 00 00 00 75 72 6e 3a 6d 70 65 67 3a 6d 70 65 67 42 3a 63 69 63 70 3a 73 79 73 74 65 6d 73 3a 61 75 78 69 6c 69 61 72 79 3a 61 6c 70 68 61 00 00 00 00 1e 69 70 6d 61 00 00 00 00 00 00 00 02 00 01 04 01 02 83 04 00 02 04 01 02 83 05 00 00 00 2f 6d 64 61 74 12 00 0a 04 18 00 06 15 32 08 10 00 00 18 e1 42 72 10 12 00 0a 07 18 00 06 18 08 68 35 32 08 10 00 00 18 e1 42 72 10
  • ftyp دستخط 28
  • meta میٹا ڈیٹا 362
  • mdat پکسلز 47
607شفافشفافشفافشفاف
471
AVIF کوالٹی 100 پر libavif جو لکھتا ہے: رنگ کے لیے ایک AV1 امیج اور الفا کے لیے ایک، ISO BMFF باکسز میں۔
00 00 00 20 66 74 79 70 61 76 69 66 00 00 00 00 61 76 69 66 6d 69 66 31 6d 69 61 66 4d 41 31 42 00 00 01 86 6d 65 74 61 00 00 00 00 00 00 00 21 68 64 6c 72 00 00 00 00 00 00 00 00 70 69 63 74 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0e 70 69 74 6d 00 00 00 00 00 01 00 00 00 2c 69 6c 6f 63 00 00 00 00 44 00 00 02 00 01 00 00 00 01 00 00 01 c0 00 00 00 17 00 02 00 00 00 01 00 00 01 ae 00 00 00 12 00 00 00 42 69 69 6e 66 00 00 00 00 00 02 00 00 00 1a 69 6e 66 65 02 00 00 00 00 01 00 00 61 76 30 31 43 6f 6c 6f 72 00 00 00 00 1a 69 6e 66 65 02 00 00 00 00 02 00 00 61 76 30 31 41 6c 70 68 61 00 00 00 00 1a 69 72 65 66 00 00 00 00 00 00 00 0e 61 75 78 6c 00 02 00 01 00 01 00 00 00 c3 69 70 72 70 00 00 00 9d 69 70 63 6f 00 00 00 14 69 73 70 65 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 10 70 69 78 69 00 00 00 00 03 08 08 08 00 00 00 0c 61 76 31 43 81 00 0c 00 00 00 00 13 63 6f 6c 72 6e 63 6c 78 00 01 00 0d 00 06 80 00 00 00 0e 70 69 78 69 00 00 00 00 01 08 00 00 00 0c 61 76 31 43 81 00 1c 00 00 00 00 38 61 75 78 43 00 00 00 00 75 72 6e 3a 6d 70 65 67 3a 6d 70 65 67 42 3a 63 69 63 70 3a 73 79 73 74 65 6d 73 3a 61 75 78 69 6c 69 61 72 79 3a 61 6c 70 68 61 00 00 00 00 1e 69 70 6d 61 00 00 00 00 00 00 00 02 00 01 04 01 02 83 04 00 02 04 01 05 86 07 00 00 00 31 6d 64 61 74 12 00 0a 04 18 00 06 15 32 08 10 00 00 18 e1 42 72 10 12 00 0a 08 18 00 06 08 08 68 34 20 32 09 10 00 00 00 07 c8 24 c6 62
  • ftyp دستخط 32
  • meta میٹا ڈیٹا 390
  • mdat پکسلز 49
651شفافشفافشفافشفاف

WebP، 30 بائٹس کے ساتھ، سب سے چھوٹی فائل ہے جو چاروں انجنوں میں شفاف نکلی: GIF سے 13 بائٹس کم۔

data URI کی لمبائی حروف میں: SVG بطور URL-encoded ٹیکسٹ، باقی base64 میں۔ 24 ستمبر، 2026 کو Chromium 153.0.8010.12, Firefox 155.0, WebKit 26.6, Pillow 12.2.0 پر جانچا گیا۔ AVIF کو libavif 1.4.1 نے لکھا۔

کسی بھی سائز کی بنائیں

شفاف یا ٹھوس رنگ، 1×1 سے 65535×65535 تک۔ یہ آپ کے براؤزر میں بنتی ہے؛ کچھ بھی اپ لوڈ نہیں ہوتا۔

فل
فارمیٹ
عام سائز

1×1 · 43 بائٹس

GIF ڈاؤن لوڈ کریں

اپنے اسٹیک سے سرو کریں

191 اسنیپٹس جو چلانے کے لیے تیار ہیں۔ اپنا چنیں: ہر ایک آپ کے منتخب کردہ پاتھ پر image/gif رسپانس دیتا ہے۔ اگر آپ نے اوپر سائز یا رنگ بدلا ہے تو اسنیپٹس وہی GIF استعمال کرتے ہیں۔

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 ٹیگ درست رہے۔
  • HTML ای میل میں مقررہ سائز کے اسپیسرز، جہاں CSS کی سپورٹ ادھوری ہے۔
  • ٹیسٹس اور mocks جنہیں تصویر کی فائل ساتھ رکھے بغیر اصلی تصویر درکار ہو۔

ٹریکنگ پکسلز اتنے قابلِ اعتماد نہیں جتنے لگتے ہیں

جب 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 شامل کریں۔