مواد پر جائیں

APNG کو GIF میں تبدیل کریں

اینیمیٹڈ PNG بہتر رنگوں والی GIF ہے جسے آدھا انٹرنیٹ ساکن تصویر سمجھتا ہے۔ اسے ایسی GIF بنائیں جو واقعی وہاں چلے جہاں آپ پوسٹ کریں، ہر فریم برقرار۔ کچھ بھی محفوظ نہیں کیا جاتا۔

  • کبھی محفوظ نہیں کی جاتی
  • نہ قطار، نہ انتظار
  • نہ سائن اپ، نہ واٹر مارک

یہ کیسے کام کرتا ہے

1

اپنی اینیمیٹڈ PNGs شامل کریں

ان کا نام عموماً .png ہوتا ہے، کبھی .apng؛ دونوں قبول ہیں۔ سادہ PNG بھی چلتی ہے اور ایک فریم کی GIF بن کر نکلتی ہے۔

2

تبدیل کریں

ہر فریم اپنی ٹائمنگ کے ساتھ پڑھا جاتا ہے اور تصویر سے بنے پیلیٹ کے ساتھ GIF میں لکھا جاتا ہے — 256 رنگ، یا چھوٹی فائل کے لیے کم۔

3

ڈاؤن لوڈ کریں

ایک ایک کر کے یا ZIP کے طور پر۔ قطار بتاتی ہے کتنے فریم آئے۔

APNG کیا ہے

APNG ایک عام PNG ہے جس میں تین اضافی چنک ٹائپس ہیں — acTL جو اینیمیشن کا اعلان کرتا ہے، ہر فریم سے پہلے fcTL جس میں اس کا سائز، جگہ، تاخیر اور پچھلے فریم کو ہٹانے کا طریقہ ہوتا ہے، اور fdAT جس میں فریم کے پکسلز ہوتے ہیں — جو ایسے ڈالے گئے ہیں کہ جو ویور انہیں نہ جانے وہ عام ساکن PNG دیکھے۔ یہ بیک ورڈ کمپیٹیبلٹی 2004 میں مقصد تھی اور آج مسئلہ ہے: جو سافٹ ویئر صرف ہیڈر دیکھتا ہے وہ اسے “تصویر” کے خانے میں ڈال دیتا ہے اور آگے کبھی نہیں دیکھتا۔

ہر فریم فائل کی ہدایت کے مطابق کمپوز ہوتا ہے — فریم کینوس کا صرف ایک حصہ ڈھانپ سکتے ہیں اور پہلے والے پر بلینڈ ہو سکتے ہیں یا اس کی جگہ لے سکتے ہیں — ایک پوری تصویر میں، پھر پیلیٹ تک کوانٹائز ہو کر اسی تاخیر کے ساتھ GIF میں لکھا جاتا ہے۔ کوانٹائزر اپنے 256 رنگ فریم ہی سے بناتا ہے اور ڈیدر کرتا ہے؛ فلیٹ آرٹ ورک اور پکسل آرٹ اسٹیکرز، جو APNGs کا بڑا حصہ ہیں، تقریباً جیسے کے تیسے نکلتے ہیں۔ 20 ms سے کم تاخیر 100 ms کر دی جاتی ہے، جیسے براؤزرز GIFs کے ساتھ ویسے بھی کرتے ہیں۔

ٹرانسپیرنسی ایک بٹ والی قسم کی ہو جاتی ہے: پکسل یا دکھتا ہے یا نہیں۔ نرم سائے والے APNG اسٹیکر کو اس کے بجائے کرارا کنارہ ملتا ہے، آدھی اوپیسٹی پر کٹا ہوا۔ یہ GIF کی حد ہے، تبدیلی کی نہیں، اور اس سے بچنے کا اکلوتا راستہ اصل الفا والا فارمیٹ ہے — WebP، جہاں منزل اسے چلائے۔

جب آپ کو کچھ اور چاہیے

ffmpeg APNG پڑھتا ہے اور دو مرحلوں کے پیلیٹ کے ساتھ GIF لکھتا ہے: ffmpeg -i in.png -vf "split[a][b];[a]palettegen[p];[b][p]paletteuse" out.gif۔ یہ ڈیدرنگ کے ایسے آپشنز بھی دیتا ہے جو یہ صفحہ نہیں دیتا، اور گریڈیئنٹس پر ان کی اہمیت ہے۔

اگر منزل APNG چلاتی ہے — ہر موجودہ براؤزر چلاتا ہے، اور iMessage اور زیادہ تر اسٹیکر پلیٹ فارمز بھی — تو APNG ہی رکھیں۔ اس میں اصل ٹرانسپیرنسی اور پورا رنگ ہے، اور GIF مطابقت کے لیے ایک نقل ہے جو بڑی اور بدتر ہے۔

اکثر پوچھے جانے والے سوالات

مجھے کیسے پتا چلے کہ میری PNG اینیمیٹڈ ہے؟

اسے Chrome، Firefox یا Safari میں کھولیں: تینوں APNG چلاتے ہیں، تو اگر وہ وہاں چلے اور جہاں آپ نے پوسٹ کی وہاں نہ چلے، تو وہ APNG ہے اور یہی صفحہ ہے۔ یہاں کی قطار بھی بتاتی ہے کہ کتنے فریم ملے۔

کیا GIF ٹائمنگ برقرار رکھتی ہے؟

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

GIF زیادہ دانے دار کیوں دکھتی ہے؟

APNG فریم میں ایک کروڑ ساٹھ لاکھ رنگ اور نرم ٹرانسپیرنسی ہوتی ہے؛ GIF فریم میں 256 رنگ اور کوئی نرم ٹرانسپیرنسی نہیں۔ پیلیٹ تصویر سے بنتا ہے اور ڈیدر ہوتا ہے، دانے یہیں سے آتے ہیں۔ فلیٹ آرٹ ورک — جو APNG کا معمول کا مواد ہے — اسے بمشکل دکھاتا ہے۔

ایسی PNG کا کیا جو اینیمیٹڈ نہیں؟

وہ ایک فریم کی GIF میں تبدیل ہوتی ہے اور قطار یہ بتا دیتی ہے۔ ساکن تصویر کے لیے آپ یقیناً PNG ہی رکھنا چاہیں گے، یا چھوٹی فائل کے لیے PNG سے WebP استعمال کریں۔

کیا میری فائلیں کہیں محفوظ کی جاتی ہیں؟

نہیں — کسی بھی مرحلے پر کچھ بھی محفوظ نہیں کیا جاتا۔

Discord یا Slack میرا اسٹیکر ساکن کیوں دکھاتا ہے؟

بہت سے اپ لوڈ فارمز PNG ہیڈر پہچان کر فائل کو ساکن تصویر سمجھتے ہیں اور صرف پہلا فریم رکھتے ہیں۔ یہی سروسز GIFs پوری چلاتی ہیں۔ تبدیل کرنا یقینی حل ہے؛ متبادل WebP ہے، جہاں سپورٹ ہو۔

جاننا مفید ہے: GIF ہر فریم میں 256 رنگ رکھتی ہے اور جزوی ٹرانسپیرنسی نہیں، اس لیے نرم کنارے سخت ہو جاتے ہیں اور گریڈیئنٹس میں ہلکی پٹیاں بنتی ہیں۔ APNG کے فریم پڑھنے کے لیے حالیہ Chrome، Edge یا Opera چاہیے؛ دوسری جگہ پہلا فریم ساکن تصویر کے طور پر لکھا جاتا ہے اور قطار یہ بتا دیتی ہے۔

یہ ٹول اپنی ویب سائٹ پر لگائیں

کسی بھی بلاگ، کلاس پیج یا ہیلپ آرٹیکل کے لیے مفت۔ ایک اسنیپٹ پیسٹ کریں اور آپ کے وزیٹرز اسے سیدھا آپ کے صفحے پر استعمال کر سکیں گے۔