ஒரு நல்ல முடிவுக்குப் பின்னால் உள்ள வேலைப்பாடு, வடிவங்கள் மற்றும் சிறிய தேர்வுகள் குறித்த எங்கள் குழுவின் குறிப்புகள்.
Desktop app-களில் WebP ஏன் எல்லா இடத்திலும் ஆதரிக்கப்படவில்லை
Google 2010-இல் WebP-ஐ வெளியிட்டது, ஆனால் desktop software-இன் ஏற்பு browser ஆதரவுக்கு வெகு பின்தங்கியது. Browser-கள் தங்கள் சொந்த rendering engine-களை கட்டுப்படுத்துவதால் WebP-ஐ ஆரம்பத்திலேயே ஏற்றுக்கொண்டன, மேலும் Google ஒரு போட்டி நன்மையாக Chrome-இன் WebP ஆதரவைச் செயலாக optimize செய்தது. Desktop app-கள் ஒரு புதிய image format-ஐ ஏற்க அதிக நேரம் எடுக்கின்றன, ஏனெனில் ஒவ்வொரு app-உம் தனது சொந்த image decoding stack-ஐப் பராமரிக்கிறது, ஒரு புதிய format-ஐ ஆதரிப்பது நீண்ட வரிசை edge case-களுக்கு எதிராக சோதனை தேவைப்படுகிறது. பெரும்பாலான தொழில்முறை photographer-கள் மற்றும் designer-கள் பயன்படுத்தும் Adobe Photoshop, 2022 இறுதியில் version 23.2 வரை native WebP ஆதரவை வழங்கவில்லை. Microsoft Office app-கள் 2026 வரை platform-களுக்கு இடையே WebP-ஐ இன்னும் சீரற்ற முறையில் கையாளுகின்றன. Print RIP software மற்றும் பெரும்பாலான பழைய archiving tool-கள் WebP-ஐ ஒருபோதும் ஏற்கவில்லை. நடைமுறை விளைவு என்னவென்றால், ஒரு browser-இல் சரியாகக் காட்டப்படும் ஒரு கோப்பை, பயனருக்குத் தேவையான software முழுவதுமாக மறுக்கலாம், PNG ஆக மாற்றுவது நம்பகமான தீர்வாகும்.
PNG-ஐ விட WebP எப்படி compression நன்மையை அடைகிறது
PNG, 1996-இன் ஒரு பொது-நோக்க lossless algorithm-ஆன DEFLATE compression-ஐப் பயன்படுத்துகிறது. அது compression-க்கு முன் ஒரு தொகுப்பு reversible scanline filter-களைப் பயன்படுத்தி, முடிவை ஒரு zlib stream-ஆக encode செய்கிறது. இது திறமையானது, ஆனால் machine learning மற்றும் video codec ஆராய்ச்சி சிறந்த நுட்பங்களை உருவாக்குவதற்கு முன் வடிவமைக்கப்பட்டது. WebP-இன் lossy முறை, VP8 video compression-இலிருந்து பெறப்பட்ட ஒரு block-based transform-ஐப் பயன்படுத்துகிறது, 16x16 macroblock அலகுகளுக்கு intra-frame prediction மற்றும் ஒரு discrete cosine transform-ஐப் பயன்படுத்துகிறது. WebP-இன் lossless முறை, spatial prediction, color transform, மற்றும் வழக்கமான image உள்ளடக்கத்திற்கு DEFLATE-ஐ விட கட்டமைப்பு ரீதியாக திறமையான ஒரு LZ77 coding stage-ஐப் பயன்படுத்துகிறது. Google-இன் வெளியிடப்பட்ட baseline-கள், standard test image-களின் தொகுப்பில் lossless WebP-ஐ PNG-ஐ விட சுமார் 26 சதவீதம் சிறியதாகவும், ஒத்த காட்சித் தரத்தில் alpha-வுடன் கூடிய lossy WebP-ஐ PNG-ஐ விட சுமார் மூன்று மடங்கு சிறியதாகவும் காட்டுகின்றன. PNG-இலிருந்து WebP திசை இந்த ஆதாயங்களைப் பயன்படுத்துகிறது, WebP-இலிருந்து PNG திசை அவற்றைத் திருப்புகிறது, எனவே பெரிய வெளியீடு.
அளவிடப்பட்ட கோப்பு அளவு வளர்ச்சி உதாரணங்கள்
Chrome 148, Linux desktop-இல், decode செய்யப்பட்ட WebP input-களுக்குப் பயன்படுத்தப்பட்ட platform-இன் PNG encode path-ஐப் பயன்படுத்தி அளவிடப்பட்டது. quality 80-இல் WebP ஆகச் சேமிக்கப்பட்ட 400x300 pixel ஒரு சிறிய vector-style graphic, சுமார் 15 முதல் 25 ms-இல் decode ஆகி PNG ஆக மீண்டும் எழுதப்படுகிறது, பொதுவான கோப்பு அளவு வளர்ச்சி 20 முதல் 30 சதவீதம். 1024x768 ஒரு photographic WebP, சுமார் சிறிய அளவு, 100 ms-க்குள் decode ஆகி PNG ஆக மீண்டும் எழுதப்படுகிறது, பொதுவான வளர்ச்சி 3 முதல் 5 மடங்கு. 3840x2160 ஒரு பெரிய photographic WebP, சுமார் பெரிய அளவு, காட்சி சிக்கலைப் பொறுத்து 5 முதல் 10 மடங்கு வளர்ச்சியுடன் சுமார் 1.2 நொடிகளில் PNG ஆக encode ஆகிறது. நடைமுறை மேல் வரம்பு சுமார் ஒரு பெரிய WebP புகைப்படம் ஒரு பல மடங்கு பெரிய PNG ஆவதாகும். இந்த எண்கள் இரு format-களுக்கு இடையே உள்ள compression திறன் வேறுபாட்டைப் பிரதிபலிக்கின்றன, pixel எண்ணிக்கையுடன் நேரியல்படியாக அளவிடுகின்றன.
இந்தப் பயணத்தில் alpha transparency
WebP மற்றும் PNG-இல் உள்ள 8-bit வெளிப்படைத்தன்மை சேனல் அதே மதிப்பு வரம்பைப் பயன்படுத்துகிறது, அங்கே 0 முழுமையாக transparent, 255 முழுமையாக opaque. browser, alpha-வுடன் கூடிய ஒரு WebP-ஐ decode செய்யும்போது, A component அசல் alpha data-வைப் பிரதிபலிக்கும் RGBA மதிப்புகளுடன் ஒரு pixel buffer-ஐ உருவாக்குகிறது. அந்த buffer PNG ஆக மீண்டும் எழுதப்படும்போது, PNG, A மதிப்புகளை நேரடியாக PNG-இன் வெளிப்படைத்தன்மை சேனல்-இல் எழுதுகிறது. எந்த compositing-உம் நடக்காது, எந்த பின்னணி நிறமும் பயன்படுத்தப்படாது, எந்த pre-multiplication பக்கவிளைவுகளும் pixel மதிப்புகளை மாற்றாது. முடிவு வெளிப்படைத்தன்மை சேனல்-இன் ஒரு lossless பரிமாற்றம், அங்கே PNG-இல் உள்ள ஒவ்வொரு pixel-இன் opacity மதிப்பும் WebP சேமித்ததைப் பொருந்துகிறது. விளிம்புகளில் நுட்பமான anti-aliasing உள்ள படங்களுக்கு, ஒவ்வொரு இடைநிலை alpha மதிப்பும், உதாரணமாக ஒரு எழுத்து விளிம்பில் 40 சதவீத opacity உள்ள ஒரு pixel, இந்தப் பயணத்தை சேதமின்றி தாண்டும். பெறும் app, படத்தைப் பல பின்னணிகளுக்கு எதிராகக் காட்ட வேண்டியிருக்கும்போது JPG-ஐ விட PNG-ஐ சரியான தேர்வாக ஆக்குவது இந்த நம்பகத்தன்மைதான்.
EXIF மற்றும் metadata நடத்தை
மாற்ற pipeline, PNG வெளியீட்டிலிருந்து EXIF, IPTC, XMP metadata-வை நீக்குகிறது. WebP கோப்புகள் தங்கள் metadata chunk-இல் உட்பொதிக்கப்பட்ட EXIF data-வைச் சுமக்க முடியும், browser படத்தை decode செய்து மீண்டும் எழுதும்போது அந்த data இழக்கப்படுகிறது. ICC color profile-கள் வேறு path-ஐப் பின்பற்றுகின்றன, அங்கே WebP-ஐ decode செய்த பிறகு Chrome மற்றும் Safari, PNG வெளியீட்டில் sRGB ICC profile tag-ஐத் தக்கவைக்கின்றன, Firefox, ICC profile உட்பட எல்லா metadata-வையும் நீக்குகிறது. நடைமுறை விளைவு எல்லா browser-களிலும் sRGB-safe வெளியீடு, ஆனால் மூல WebP-இல் உட்பொதிக்கப்பட்ட எந்த wide-gamut profile-உம் Firefox-இல் தாண்டாது. ICC-tagged round trip-களை நம்பியிருக்கும் தொழில்முறை photographic workflow-களுக்கு, metadata-வை கவனிக்கும் ஒரு converter-ஐப் பயன்படுத்துங்கள். வழக்கமான web image கையாளுதலுக்கு, metadata நீக்கம் பொதுவாக ஏற்கத்தக்கது, வெளியீட்டு கோப்பு அளவைச் சிறிது குறைக்கும் நன்மையும் உண்டு.
நடைமுறையில் privacy சரிபார்ப்பு
கோப்பு data எதுவும் browser-ஐ விட்டு வெளியேறாது என்ற கூற்றை எந்த சிறப்பு tool இல்லாமல் சரிபார்க்கலாம். உங்கள் browser-ஐத் திறந்து, webp-to-png பக்கத்திற்குச் சென்று, பிறகு F12 அல்லது right-click menu-வுடன் browser டெவலப்பர் கருவிகள்-ஐத் திறங்கள். Network tab-க்கு மாறி, ஏற்கனவே உள்ள request-களை அழித்து, ஒரு WebP கோப்பை விட்டு ஒரு மாற்றத்தை இயக்குங்கள். Request பட்டியலை Fetch, XHR, அல்லது All மூலம் filter செய்யுங்கள். encode-இன்போது image data கொண்ட வெளிச்செல்லும் request-கள் பூஜ்ஜியம் என பட்டியல் காட்டுகிறது. பக்கத்தில் இருக்கும் ஒரே network request-கள், ஆரம்ப பக்க load asset-கள் மற்றும் standard analytics ping-கள், அவை page view-கள் மற்றும் Core Web Vitals செயல்திறன் data-வை மட்டுமே பதிவு செய்கின்றன, எந்த image உள்ளடக்கமும் இல்லாமல். ஒவ்வொரு பெரிய remote WebP முதல் PNG converter-உம், ஒரு மாற்றத்திற்கு குறைந்தபட்சம் ஒரு upload POST மற்றும் ஒரு download GET-ஐ உருவாக்குகிறது, இரண்டும் server-இல் log ஆகின்றன. On-device கட்டமைப்பு என்பது அந்த log entry-கள் இல்லை என்பதைக் குறிக்கிறது, இது முக்கியமான உள்ளடக்கம் கொண்ட கோப்புகளை மாற்றும் பயனர்களுக்கு உள்ள அர்த்தமுள்ள வேறுபாடாகும்.