Badilisha vielelezo vya SVG vinavyoweza kupanuliwa kuwa picha za PNG zilizo tayari kutumika
Faili ya SVG ni seti ya maelekezo, si picha kamili. Fungua moja kwenye kihariri cha maandishi na utapata XML inayoeleza njia (paths), maumbo, ujazaji na mikondo — mapishi ambayo kivinjari hufuata kuchora sanaa upya kwa ukubwa wowote unaoomba. PNG ni kinyume: gridi ya pikseli zenye rangi zilizogandishwa kwenye upana na urefu fulani. Kubadilisha moja kuwa nyingine huitwa uwekaji-raster (rasterization), na chombo hiki hufanya hivyo kabisa ndani ya kivinjari chako. Unachagua ukubwa wa matokeo, SVG hupakwa rangi kwenye canvas ya HTML, na PNG hurudi — hakuna faili inayoondoka kwenye kifaa chako.

Vekta dhidi ya raster, kwa maneno rahisi
Tofauti kuu ni jinsi azimio (resolution) linavyoshughulikiwa. Kwa sababu SVG huhifadhi hisabati badala ya pikseli, haitegemei azimio: kuza nembo kutoka aikoni ndogo hadi bango kubwa na kila kingo hukokotolewa upya ili kubaki kali kihisabati. PNG haina uhuru huo. Pikseli zake zimewekwa ndani, hivyo kuikuza zaidi ya ukubwa wake wa asili hulazimisha mtazamaji kubana nukta zilizopo, na unaanza kuona ukungu na hatua za ngazi zinazoifichua picha ya raster.
Mzani huo huenda pande zote mbili. Vekta hazishindwi kwa nembo, aikoni na michoro tambarare iliyoundwa kwa maumbo safi, na faili kwa kawaida ni ndogo sana. Miundo ya raster kama PNG hushughulikia mabadiliko ya rangi, vivuli laini na maelezo ya picha za kawaida kwa asili zaidi, na — muhimu zaidi — hueleweka na karibu kila kitu. Unapoweka-raster, unabadilishana uwezo wa SVG wa kuongezeka bila kikomo na upatanifu wa ulimwenguni wa PNG kwa ukubwa mmoja uliochaguliwa.
Kwa nini kuweka-raster SVG kabisa?
Kama SVG inaongezeka kwa uzuri hivyo, kwa nini kuibadilisha? Upatanifu ndio jibu la kawaida. Sehemu nyingi hazikubali SVG kabisa: wateja wengi wa barua pepe huondoa au kukataa kuionyesha, wahariri wa hati na programu za maonyesho mara nyingi zinataka picha tambarare, maduka ya mtandaoni na mitandao ya matangazo yanadai PNG au JPG, na majukwaa mengi ya mitandao ya kijamii yanapuuza upakiaji wa vekta kabisa. Baadhi ya mifumo ya maudhui pia huzuia SVG kabisa kwa sababu za usalama, kwa kuwa muundo huo unaweza kuficha hati za amri (scripts).
Sababu ya pili ni kwamba wakati mwingine unataka mali (asset) ya ukubwa uliowekwa. Aikoni za programu, picha ndogo, picha za hakikisho za Open Graph na vifaa vilivyochapishwa vyote vinatarajia vipimo halisi vya pikseli. PNG hufunga sanaa kwenye lengo hilo ili ionekane sawa kila mahali, bila mshangao kutoka kwa mtazamaji anayefasiri vekta tofauti. Kubadilisha SVG yako ya chanzo kuwa vipimo halisi ambavyo jukwaa linahitaji mara nyingi ndiyo njia safi zaidi ya kupata matokeo thabiti.
Kuchagua azimio sahihi la kuhamisha
Kwa sababu PNG haiwezi kukuza vizuri, ukubwa unaohamisha ni muhimu zaidi kuliko na vekta yoyote. Hamisha kidogo mno na picha itaonekana laini kwenye skrini za kisasa; hamisha kubwa bila sababu na utapoteza kipimo data. Kanuni rahisi: amua ukubwa mkubwa zaidi ambao picha itaonyeshwa, kisha hamisha angalau hicho, na kwa hakika zaidi kwa maonyesho ya msongamano wa juu.
Skrini za kawaida ziko sawa kwa 1x — ukubwa wa kawaida wa sanaa. Maonyesho ya Retina na msongamano wa juu wa pikseli (high-DPI) hubeba karibu pikseli mara mbili katika nafasi ile ile, hivyo kuhamisha kwa 2x huweka aikoni na grafiki kali badala ya laini. Kwa uchapishaji, mabango au maonyesho makubwa sana, 3x au 4x hukupa nafasi ya ziada. Kwa kuwa chanzo ni vekta, kuhamisha kubwa hakukugharimu chochote katika ubora — mikondo hukokotolewa upya kwa idadi kubwa zaidi ya pikseli kabla ya kufanywa tambarare. Kama huna uhakika, hamisha ukubwa mkubwa; unaweza daima kupunguza PNG kubwa, lakini huwezi kamwe kurejesha maelezo kwa kukuza ndogo.

Uwazi hufuatana nayo
PNG husaidia njia kamili ya alpha, ambayo humaanisha uwazi hunusurika ubadilishaji. Kama SVG yako haina ujazaji wa mandhari, PNG inayotokana huweka maeneo hayo ya uwazi, hivyo nembo au aikoni hudondoka kwa usafi kwenye rangi yoyote bila sanduku baya jeupe kuizunguka. Kama unahitaji mandhari imara badala yake, ipe SVG moja kabla ya kubadilisha. Katika hali zote, kile unachokiona kwenye vekta ndicho ambacho PNG itahifadhi, na ndiyo hasa sababu PNG — badala ya JPG — ndio lengo la kiasili kwa aikoni, beji na tabaka za juu (overlays).
Kila kitu kinabaki kwenye kifaa chako
Kibadilishaji hiki hufanya kazi kama msimbo wa ndani kwenye kivinjari chako kwa kutumia canvas API. SVG yako husomwa, kuchorwa na kuhamishwa bila kutumwa kwenye seva kamwe, hivyo hakuna upakiaji, hakuna foleni na hakuna nakala ya sanaa yako inayokaa kwenye hifadhi ya mtu mwingine. Hilo ni haraka zaidi kwako na salama zaidi kwa chochote ambacho ungependelea kutokikabidhi kwa mtu wa tatu, kutoka chapa isiyotolewa hadi michoro ya ndani. Ukimaliza hapa, vinjari mengine ya zana zetu za picha — kama unajenga kipengele cha Windows au favicon, kibadilishaji cha PNG kuwa ICO ni hatua inayofuata kiasili.
Maswali yanayoulizwa mara kwa mara
Je, PNG itaonekana kali kama SVG?
Kwa ukubwa unaohamisha, ndiyo. Kwa sababu vekta huchorwa upya kwa azimio ulilochagua, kingo hubaki kali. Tofauti ni kwamba PNG haiwezi kukuzwa baadaye bila kulainika, huku SVG ya asili ikiweza daima.
Je, ubadilishaji huhifadhi uwazi?
Ndiyo. PNG ina njia ya alpha, hivyo maeneo yoyote ya uwazi katika SVG yako yanabaki ya uwazi katika PNG. Ongeza mandhari kwenye SVG kwanza kama unataka ujazaji imara badala yake.
Azimio gani ninapaswa kuchagua?
Linganisha au zidisha ukubwa mkubwa zaidi ambao picha itaonyeshwa. Tumia 1x kwa skrini za kawaida, 2x kwa Retina na maonyesho ya high-DPI, na 3x au 4x kwa uchapishaji au grafiki kubwa mno. Kuchora kubwa hakugharimu chochote katika ubora kwa kuwa chanzo ni vekta.
Kwa nini nisitumie SVG kila mahali?
Wateja wengi wa barua pepe, wahariri wa hati, maduka ya mtandaoni na majukwaa ya mitandao ya kijamii hayakubali au kuionyesha SVG kwa uhakika. PNG hufanya kazi karibu kila mahali na hufunga sanaa kwenye ukubwa unaotabirika, uliowekwa.
Je, faili zangu hupakiwa mahali popote?
Hapana. Kila kitu hufanyika kwa njia ya ndani kwenye kivinjari chako. SVG yako haitumwi kwenye seva kamwe, hivyo hakuna kinachopakiwa, kuhifadhiwa au kufuatiliwa.
Je, ninaweza kubadilisha PNG kurudi kuwa SVG?
Si kwa uaminifu kamili. Uwekaji-raster hutupa hisabati ya asili, hivyo kurudi nyuma humaanisha kufuatilia pikseli kwenye njia mpya za vekta, jambo ambalo mara chache hulingana na chanzo. Weka SVG yako ya asili kama faili kuu.
