دوبارہ انکوڈ کرنے سے کیا بچتا ہے اور کیا ضائع ہوتا ہے
تصویری فائل پکسلز کے ساتھ ان کے بارے میں کچھ دعووں پر مشتمل ہوتی ہے: یہ نمبر کس کلر اسپیس میں ناپے گئے، الفا چینل ہے یا نہیں، کیمرے نے EXIF میں کیا ریکارڈ کیا — ماڈل، ایکسپوژر، تاریخ، اکثر GPS کوآرڈینیٹس — اور GIF، WebP اور AVIF میں یہ کہ ایک سے زیادہ فریم ہیں یا نہیں۔ یہاں تقریباً ہر عمل فائل کو ڈیکوڈ کر کے نئی فائل لکھتا ہے، اور ان میں سے ہر دعوے کا انجام الگ ہوتا ہے۔
پہلا دوراہا لاسی اور لاس لیس کا ہے۔ PNG اور BMP بالکل درست پکسلز محفوظ کرتے ہیں، اس لیے انہیں سو بار دوبارہ محفوظ کرنے سے بھی کچھ نہیں بدلتا۔ JPG، AVIF اور عام WebP وہ تفصیل ضائع کر دیتے ہیں جسے آنکھ مشکل سے محسوس کرتی ہے، اور ضائع شدہ حصہ ہمیشہ کے لیے چلا جاتا ہے — JPG کو PNG میں تبدیل کرنا اسے بحال نہیں کر سکتا، بس مزید نقصان روکتا ہے۔ اسی لیے JPEG کو دو بار محفوظ کرنا ایک بار سے بدتر ہے: دوسری انکوڈنگ پہلے سے کوانٹائز شدہ پکسلز کو پھر کوانٹائز کرتی ہے، اور اگر درمیان میں تصویر کراپ یا ری سائز ہوئی ہو تو نیا 8×8 بلاک گرڈ پرانے سے میل نہیں کھاتا، اس لیے غلطیاں دہرانے کی بجائے جمع ہوتی جاتی ہیں۔ جب تک اصل فائل موجود ہو، اسی سے کام کریں۔
کروما سب سیمپلنگ وہ خاص وجہ ہے جس سے JPG اسکرین شاٹ غلط دکھتا ہے۔ JPEG عام طور پر روشنی کو پوری ریزولوشن پر اور رنگ کو آدھی پر رکھتا ہے، جو تصویر پر نظر نہیں آتا اور سرخ ٹیکسٹ یا پتلی رنگین لکیر پر صاف دکھائی دیتا ہے۔ اگر آپ کی تصویر اسکرین شاٹ، لوگو یا ڈایاگرام ہے تو PNG یا WebP درست انتخاب ہے، JPG نہیں۔
ٹرانسپیرنسی کو کہیں تو جانا ہے۔ JPG میں الفا چینل ہوتا ہی نہیں، اس لیے PNG سے JPG اور AVIF سے JPG آپ سے پوچھتے ہیں کہ ٹرانسپیرنٹ پکسلز کی جگہ کون سا رنگ آئے، بجائے اس کے کہ آپ کو بتائے بغیر انہیں سفید — یا سیاہ — کر دیں۔ PNG، WebP اور AVIF سب مکمل الفا رکھتے ہیں، اس لیے PNG سے WEBP اور تصویر کا بیک گراؤنڈ ہٹائیں کے کٹ آؤٹس اپنے نرم کنارے برقرار رکھتے ہیں۔
EXIF باقی نہیں رہتا۔ دوبارہ انکوڈ کرنے والا ہر ٹول — تبدیل، کمپریس، سائز، گھمانا، کراپ — EXIF بلاک کے بغیر صاف فائل لکھتا ہے، اس لیے کیمرے کا ماڈل، ٹائم اسٹیمپ اور GPS لوکیشن ہٹ جاتے ہیں۔ تصویر شائع کرنے سے پہلے آپ ٹھیک یہی چاہتے ہیں۔ اورینٹیشن EXIF کا وہ واحد حصہ ہے جو دیکھنے میں فرق ڈالتا ہے، اور تصویر گھمائیں اس سے بچنے کے لیے اصل پکسلز کو ہی گھما دیتا ہے، تاکہ نتیجہ ان ویورز میں بھی سیدھا ہو جو اس فلیگ کو نظر انداز کرتے ہیں اور ان میں بھی جو اس پر عمل کرتے ہیں۔
کلر پروفائلز ساتھ نہیں جاتے بلکہ تبدیل ہوتے ہیں۔ آپ کا براؤزر Display P3 یا Adobe RGB فائل کو دکھانے کے لیے sRGB میں ڈیکوڈ کرتا ہے، اور واپس لکھی گئی فائل میں کوئی پروفائل ایمبیڈ نہیں ہوتا۔ عام اسکرین پر کچھ نہیں بدلتا؛ وائیڈ گیمٹ اسکرین پر سب سے گہرے رنگ کٹ چکے ہوتے ہیں۔ TIFF سے JPG بھی اسی راستے سے گزرتا ہے، اسی لیے اسٹوڈیو کی CMYK TIFF، RGB بن کر نکلتی ہے، اور اگر رنگوں کی پروفنگ ہو رہی ہو تو اسے پری پریس سافٹ ویئر میں ہی رہنا چاہیے۔
اینیمیشن ساکن تصویر بن جاتی ہے۔ اینیمیٹڈ GIF، WebP اور AVIF فائلیں اپنے پہلے فریم کی صورت میں تبدیل ہوتی ہیں۔ GIF سے PNG سے عموماً یہی چاہیے ہوتا ہے، اور بارہ سیکنڈ کا لوپ اس پر ڈالنے سے پہلے یہ جاننا مفید ہے۔
جہاں براؤزر واقعی غلط ٹول ہے
یہ ٹولز آپ کی فائل کو نجی رکھنے کے لیے بنائے گئے ہیں، اور اس کی کچھ قیمت ہے۔ ہم یہ یہاں بتانا بہتر سمجھتے ہیں بجائے اس کے کہ آپ کو کام کے درمیان پتا چلے۔
بہت بڑی تصاویر۔ ہر پکسل آپ کے ڈیوائس کی میموری میں غیر کمپریسڈ صورت میں رکھا جاتا ہے — 100 میگا پکسل کی تصویر کچھ اور ہونے سے پہلے ہی خام RGBA کے طور پر تقریباً 400 MB کی ہوتی ہے۔ اس سے کچھ آگے ٹیب کی جگہ ختم ہو جاتی ہے، اور 4× اپ اسکیل اس حد تک اور بھی جلدی پہنچتا ہے، عام لیپ ٹاپ پر تقریباً 6000×6000 آؤٹ پٹ پر۔ ڈسک سے ٹائلز اسٹریم کرنے والے ڈیسک ٹاپ ٹول کی ایسی کوئی حد نہیں۔
کیمرا RAW۔ CR2، NEF، ARW اور DNG فائلیں مکمل تصاویر نہیں بلکہ سینسر ڈیٹا اور ڈیولپمنٹ کی ترکیب ہوتی ہیں، اور یہاں کی کوئی چیز انہیں نہیں کھولتی۔ پہلے اپنے کیمرا سافٹ ویئر سے JPEG یا TIFF ایکسپورٹ کریں، یا darktable یا RawTherapee استعمال کریں — دونوں مفت ہیں، اور دونوں یہ کام کسی بھی ویب پیج سے کہیں بہتر کرتے ہیں۔
پرنٹ کے رنگ۔ اسپاٹ کلرز، CMYK سیپریشنز، ICC رینڈرنگ انٹینٹس اور سافٹ پروفنگ پری پریس سافٹ ویئر کا کام ہیں۔ ہم رنگ کو sRGB میں تبدیل کرتے ہیں تاکہ براؤزر اسے دکھا سکے؛ ہم اسے مینج نہیں کرتے۔
بیچ اور آٹومیشن۔ یہ ٹولز تب چلتے ہیں جب کوئی انسان کلک کرے۔ طے شدہ وقت پر چالیس ہزار پروڈکٹ تصاویر کا سائز بدلنا سرور پر کمانڈ لائن ٹول کا کام ہے، اور مفت ٹولز بہترین ہیں: تقریباً ہر چیز کے لیے ImageMagick، رفتار اور بڑی فائلوں پر کم میموری کے لیے libvips، آخری بائٹس تک نچوڑنے کے لیے mozjpeg اور oxipng، اور فریمز والی ہر چیز کے لیے ffmpeg۔
بیک گراؤنڈ ہٹانے کی ایک حقیقی حد ہے۔ یہ ایک بار ڈاؤن لوڈ ہوتا ہے، 40–85 MB، اور واضح سبجیکٹ پر، بالوں اور فر سمیت، واقعی اچھا کام کرتا ہے، اور بغیر کسی واضح سبجیکٹ کے بھرے ہوئے منظر پر واقعی الجھ جاتا ہے۔ کوئی بھی مقامی کمپیوٹنگ اسے ٹھیک نہیں کرتی؛ یہ اس طریقے کی حد ہے، اور پیڈ سروسز کی بھی یہی حد ہے۔
ملتے جلتے ناموں والے ٹولز میں انتخاب
تصویر کمپریس کریں بمقابلہ تصویر کا سائز تبدیل کریں۔ کمپریس ڈائمینشنز وہی رکھتا ہے اور فی پکسل کم بائٹس خرچ کرتا ہے۔ سائز تبدیل کرنا ڈائمینشنز بدلتا ہے، جس سے پکسلز ہی کم ہو جاتے ہیں۔ 4000px کی تصویر جسے 200 KB کا ہونا ہو، اس کے لیے پہلے سائز بدلنا اور پھر کمپریس کرنا ہر بار صرف کمپریس کرنے سے بہتر ہے — اور سائز بدلنا اس لحاظ سے بغیر نقصان کے ہے جو اہم ہے، کیونکہ جو پکسلز آپ رکھتے ہیں وہ خراب ہونے کی بجائے ٹھیک سے ری سیمپل ہوتے ہیں۔
تصویر کا سائز تبدیل کریں بمقابلہ تصویر بڑی کریں۔ دونوں ڈائمینشنز بدلتے ہیں، اور الٹی سمتوں کے لیے بنائے گئے ہیں۔ سائز تبدیل کرنا چیزوں کو چھوٹا کرنے کے لیے ہے، Lanczos فلٹر کے ساتھ تاکہ چھوٹا کرنے میں تفصیل بچی رہے۔ بڑا کرنا 2× اور 4× بڑھانے کے لیے ہے، جس کے بعد کناروں کو پہچاننے والا شارپننگ مرحلہ شامل ہوتا ہے کیونکہ بڑا کرنے سے تصویر ہمیشہ نرم پڑ جاتی ہے۔ دونوں میں سے کوئی بھی نئی تفصیل ایجاد نہیں کرتا — جو نکلتا ہے وہ آپ کی تصویر میں موجود تھا۔
ICO میں تبدیل کریں بمقابلہ فیو آئیکن جنریٹر۔ ICO میں تبدیل کریں ایک .ico فائل بناتا ہے جس میں 16، 32، 48 اور 256px ورژنز ہوتے ہیں، جو Windows ایپلیکیشن یا شارٹ کٹ کو چاہیے۔ فیو آئیکن جنریٹر پورا جدید سیٹ بناتا ہے — .ico، الگ الگ PNG فائلیں، Apple touch icon، ویب مینی فیسٹ اور HTML ٹیگز — ZIP میں، جو ویب سائٹ کو چاہیے۔
PNG سے WEBP بمقابلہ JPG سے AVIF۔ دونوں ویب تصاویر کو اصل سے چھوٹا کرتے ہیں، اور مختلف ذرائع کے لیے موزوں ہیں۔ WebP ٹرانسپیرنسی برقرار رکھتا ہے اور لمحوں میں انکوڈ ہوتا ہے، اس لیے اسکرین شاٹس، لوگوز اور UI گرافکس کے لیے درست انتخاب ہے۔ AVIF تصاویر کو زیادہ کمپریس کرتا ہے — عموماً اسی طرح کی JPG سے 40–60 فیصد چھوٹا — لیکن AV1 انکوڈنگ بھاری ہے، اس لیے ہر بڑی تصویر پر چند سیکنڈ کی توقع رکھیں۔
تصویر دھندلی کریں بمقابلہ تصویر کا بیک گراؤنڈ ہٹائیں۔ دھندلا کرنا اس حصے کی معلومات مٹا دیتا ہے جو آپ نشان زد کریں: چہرے، نمبر پلیٹیں، اکاؤنٹ نمبرز۔ بیک گراؤنڈ ہٹانا سبجیکٹ کو بیک گراؤنڈ سے الگ کر کے بیک گراؤنڈ کو مکمل طور پر حذف کر دیتا ہے۔ اگر مقصد کٹ آؤٹ کی بجائے معلومات چھپانا ہے تو دھندلا کریں — اور ٹیکسٹ پر موٹی پکسلیشن استعمال کریں، کیونکہ شائع شدہ تحقیق میں ہلکی پکسلیشن کو الٹا جا چکا ہے۔