පරිමාණය කළ හැකි දෛශික ග්‍රැෆික්

පරිමාණය කළ හැකි දෛශික ග්‍රැෆික් (SVG) යනු ද්විමාන චිත්‍රක නිර්වචනය කිරීම සඳහා වන XML මත පදනම් වූ දෛශික රූප ආකෘතියකි, අන්තර්ක්‍රියාකාරීත්වය සහ සජීවිකරණය සඳහා සහාය ඇත. SVG පිරිවිතරය 1999 සිට ලෝක ව්‍යාප්ත වෙබ් සමුහය විසින් සංවර්ධනය කරන ලද විවෘත ප්‍රමිතියකි.

SVG රූප දෛශික ග්‍රැෆික් ආකෘතියකින් නිර්වචනය කර XML පෙළ ගොනු වල ගබඩා කර ඇත. SVG රූපවල ගුණාත්මකභාවය නැති නොවී ප්‍රමාණයෙන් පරිමාණය කළ හැකි අතර, SVG ගොනු සෙවීමට, සුචිගත කිරීමට, ස්ක්‍රිප්ට් කිරීමට සහ සම්පීඩනය කිරීමට හැකිය. XML පෙළ ගොනු පෙළ සංස්කාරක හෝ දෛශික ග්‍රැෆික් සංස්කාරක සමඟින් නිර්මාණය කර සංස්කරණය කළ හැකි අතර, බොහෝ වෙබ් බ්‍රව්සර් මඟින් ඒවා විදැහුම්කරණය කළ හැක. රූප සඳහා භාවිතා කරන්නේ නම්, SVG හට ස්ක්‍රිප්ට් හෝ CSS සත්කාරකත්වය දැක්විය හැක, එය හරස්-අඩවි ස්ක්‍රිප්ටින් ප්‍රහාර හෝ වෙනත් ආරක්ෂක දුර්වලතා වලට තුඩු දිය හැක.

 ඉතිහාසය 
1998 දී දෛශික ග්‍රැෆික් භාෂා සඳහා තරඟකාරී යෝජනා හයක් සමුහයට ඉදිරිපත් කිරීමෙන් පසු 1999 සිට ලෝක ව්‍යාප්ත වෙබ් සමුහය (W3C) තුළ SVG සංවර්ධනය වෙමින් පවතී (පහත බලන්න).

මුල්කාලීන SVG ක්‍රියාකාරී කණ්ඩායම තීරණය කළේ වාණිජ ඉදිරිපත් කිරීම් කිසිවක් සංවර්ධනය නොකිරීමට, නමුත් ඒවායින් කිසිවක් විසින් දැනුම් දෙන ලද නමුත් ඇත්ත වශයෙන්ම පදනම් නොවූ නව සලකුණු භාෂාවක් නිර්මාණය කිරීමට ය.

SVG 1998 දී W3C SVG ක්‍රියාකාරී කණ්ඩායම විසින් සංවර්ධනය කරන ලදී, එම වසරේ තරඟකාරී දෛශික ග්‍රැෆික් ඉදිරිපත් කිරීම් හයක් ලැබීමෙන් පසුව:

 වෙබ් ක්‍රමලේඛන, CCLRC වෙතින්
 PGML, Adobe Systems, IBM, Netscape සහ Sun Microsystems වෙතින්
 VML, Autodesk, Hewlett-Packard, Macromedia, Microsoft, සහ Vision මගින්
 Hyper Graphics Markup Language (HGML), Orange UK සහ PRP විසින්
 WebCGM, Boeing, PTC, InterCAP Graphics Systems, Inso Corporation, CCLRC, සහ Xerox වෙතින්
 DrawML, Excosoft AB වෙතින්

W3C හි ක්‍රිස් ලිලී විසින් එවකට ක්‍රියාකාරී කණ්ඩායමේ මුලසුන දැරීය.

ඉන්ටර්නෙට් එක්ස්ප්ලෝරර් හි පැරණි අනුවාදවල සහය නොමැතිකම හේතුවෙන් මුල් දරුකමට හදා ගැනීම සීමා විය. කෙසේ වෙතත්, 2011 වන විට, සියලුම ප්‍රධාන ඩෙස්ක්ටොප් බ්‍රව්සර් SVG සඳහා සහය දැක්වීමට පටන් ගත්තේය. දේශීය බ්‍රවුසර සහාය ප්ලගීන අවශ්‍ය නොවීම, SVG වෙනත් අන්තර්ගතයන් සමඟ මිශ්‍ර කිරීමට ඉඩ දීම සහ විදැහුම්කරණය සහ ස්ක්‍රිප්ට් කිරීමේ විශ්වසනීයත්වය වැඩි දියුණු කිරීම වැනි විවිධ වාසි ලබා දෙයි. SVG Tiny 1.1 හෝ 1.2 සඳහා සහය දක්වන විවිධ උපාංග සහ බ්‍රව්සර් සමඟ SVG සඳහා ජංගම සහාය විවිධ ආකාරවලින් පවතී. SVG දෛශික ග්‍රැෆික් සංස්කාරක භාවිතයෙන් නිෂ්පාදනය කළ හැකි අතර raster ආකෘතිවලට ප්‍රතිවර්තනය කළ හැක. වෙබ් පාදක යෙදුම්වල, HTML ලේඛන තුළ SVG අන්තර්ගතය කාවැද්දීමට Inline SVG ඉඩ දෙයි.

SVG පිරිවිතර 2011 දී 1.1 අනුවාදයට යාවත්කාලීන කරන ලදී. Scalable Vector Graphics 2 2016 සැප්තැම්බර් 15 දින W3C අපේක්ෂක නිර්දේශයක් බවට පත් විය. SVG 2 හි SVG 1.1 සහ SVG Tiny 1.2 ට අමතරව නව විශේෂාංග කිහිපයක් ඇතුළත් වේ.

 අනුවාදය 1.x 

 SVG 1.0 2001 සැප්තැම්බර් 4 වන දින W3C නිර්දේශයක් බවට පත් විය
 SVG 1.1 2003 ජනවාරි 14 වන දින W3C නිර්දේශයක් බවට පත් විය. SVG 1.1 පිරිවිතර උප කුලක පැතිකඩ ලෙස අර්ථ දැක්වීමට ඉඩ දීම සඳහා මොඩියුලීකරණය කර ඇත. මේ හැර, SVG 1.1 සහ SVG 1.0 අතර ඉතා සුළු වෙනසක් ඇත.
 SVG Tiny සහ SVG Basic (ජංගම SVG පැතිකඩ) 2003 ජනවාරි 14 දින W3C නිර්දේශ බවට පත් විය. මේවා SVG 1.1 හි පැතිකඩ ලෙස විස්තර කෙරේ.
 SVG Tiny 1.2 2008 දෙසැම්බර් 22 දින W3C නිර්දේශයක් බවට පත් විය. එය මුලින් සැලසුම් කරන ලද SVG Full 1.2 හි පැතිකඩක් ලෙස කෙටුම්පත් කරන ලදී (එතැන් සිට SVG 2 සඳහා එය අතහැර දමා ඇත), නමුත් පසුව එය ස්වාධීන පිරිවිතරයක් ලෙස නැවත සකස් කරන ලදී. එය සාමාන්යයෙන් දුර්වල ලෙස සහාය දක්වයි.
 සියලුම දෝෂ සහ පැහැදිලි කිරීම් ඇතුළත් SVG 1.1 දෙවන සංස්කරණය, නමුත් මුල් SVG 1.1 හි නව විශේෂාංග කිසිවක් 2011 අගෝස්තු 16 දින නිකුත් කරන ලදී.
 SVG Tiny 1.2 Portable/Secure, 2020 ජූලි 29 වන දින IETF කෙටුම්පත් ප්‍රමිතියක් ලෙස හඳුන්වා දුන් SVG Tiny 1.2 පැතිකඩෙහි වඩාත් ආරක්ෂිත උප කුලකයකි. SVG Tiny P/S ලෙසද හැඳින්වේ. SVG Tiny 1.2 Portable/Secure යනු BIMI කෙටුම්පත් ප්‍රමිතියේ අවශ්‍යතාවයකි.

 අනුවාදය 2 
SVG 2 SVG 1.1 හි සමහර විශේෂාංග ඉවත් කරයි හෝ අවලංගු කරයි සහ HTML5 සහ Web Open Font Format වෙතින් නව විශේෂාංග ඇතුළත් කරයි:

 උදාහරණයක් ලෙස, SVG 2 glyph සහ altGlyph වැනි අකුරු මූලද්‍රව්‍ය කිහිපයක් ඉවත් කරයි (WOFF අකුරු ආකෘතියෙන් ප්‍රතිස්ථාපනය වේ).
 xml:space ගුණාංගය CSS සඳහා අනුග්‍රහය දක්වයි.
 translate සහ data-* ගුණාංග වැනි HTML5 විශේෂාංග එකතු කර ඇත.
 SVG Tiny 1.2 වෙතින් පෙළ හැසිරවීමේ විශේෂාංග ඇතුළත් වන ලෙස සටහන් කර ඇත, නමුත් තවමත් පෙළෙහි විධිමත් කර නොමැත.  තවත් සමහර 1.2 විශේෂාංග චෙරි තෝරාගෙන ඇත,  නමුත් SVG 2 සාමාන්යයෙන් SVG කුඩා 1.2 හි සුපිරි කට්ටලයක් නොවේ.

SVG 2 2016 සැප්තැම්බර් 15 දින අපේක්ෂක නිර්දේශ කිරීමේ අදියරට ළඟා විය, සහ සංශෝධිත අනුවාද 2018 අගෝස්තු 7 සහ 2018 ඔක්තෝබර් 4 දින ප්‍රකාශයට පත් කරන  නවතම කෙටුම්පත 2023 මාර්තු 08 දින නිකුත් කරන ලදී.

 විශේෂාංග 
SVG අන්තර්ක්‍රියාකාරීත්වය, සජීවිකරණය සහ පොහොසත් චිත්‍රක හැකියාවන් සඳහා සහය දක්වයි, එය වෙබ් සහ මුද්‍රණ යෙදුම් දෙකටම සුදුසු වේ. SVG පින්තූර gzip ඇල්ගොරිතම සමඟ සම්පීඩනය කළ හැක, එහි ප්‍රතිඵලයක් ලෙස SVGZ ගොනු සාමාන්‍යයෙන් මුල් එකට වඩා 20-50% කුඩා වේ. SVG පාර-දත්ත සඳහා සහය දක්වයි, SVG අන්තර්ගතය වඩා හොඳ සුචිගත කිරීම, සෙවීම සහ ලබා ගැනීම සක්‍රීය කරයි.

SVG ග්‍රැෆික් වස්තු වර්ග තුනකට ඉඩ දෙයි: දෛශික ග්‍රැෆික් හැඩතල (සරල රේඛා සහ වක්‍ර වලින් සමන්විත මාර්ග වැනි), බිට්මැප් රූප සහ පෙළ. චිත්‍රක වස්තු කාණ්ඩගත කිරීමට, මෝස්තර කිරීමට, පරිවර්තනය කිරීමට සහ කලින් විදැහුම් කළ වස්තු බවට සංයුක්ත කිරීමට හැකිය. විශේෂාංග කට්ටලයට කැදලි පරිවර්තන, ක්ලිපින් පාත්, ඇල්ෆා වෙස් මුහුණු, පෙරහන් බලපෑම් සහ අච්චු වස්තු ඇතුළත් වේ. SVG ඇඳීම් අන්තර්ක්‍රියාකාරී විය හැකි අතර SVG XML මූලද්‍රව්‍යවල හෝ SVG Document Object Model (DOM) වෙත ප්‍රවේශ වන ස්ක්‍රිප්ටින් හරහා අර්ථ දක්වා ඇති සජීවිකරණය ඇතුළත් කළ හැක.

SVG හැඩගැන්වීම සඳහා CSS සහ ස්ක්‍රිප්ට් කිරීම සඳහා JavaScript භාවිතා කරයි. ජාත්‍යන්තරකරණය සහ ප්‍රාදේශීයකරණය ඇතුළු පෙළ, SVG DOM තුළ සරල පෙළෙහි දිස් වීම, SVG ග්‍රැෆික්ස් ප්‍රවේශ්‍යතාව වැඩි දියුණු කරයි.

 මුද්‍රණය කිරීම 
SVG පිරිවිතර මූලික වශයෙන් දෛශික ග්‍රැෆික් සලකුණු භාෂාව කෙරෙහි අවධානය යොමු කළද, එහි සැලසුමට Adobe's PDF වැනි පිටු විස්තර භාෂාවක මූලික හැකියාවන් ඇතුළත් වේ. එහි පොහොසත් ග්‍රැෆික්ස් සඳහා ප්‍රතිපාදන අඩංගු වන අතර, මෝස්තර කිරීමේ අරමුණු සඳහා CSS සමඟ අනුකූල වේ. මුද්‍රිත පිටුවක තෝරාගත් ස්ථානයක එක් එක් ග්ලයිෆ් සහ රූපය තැබීමට අවශ්‍ය තොරතුරු SVG සතුව ඇත.

 තිර රචනය සහ සජීවිකරණය 
SVG ඇඳීම් ගතික සහ අන්තර්ක්‍රියාකාරී විය හැකිය. මූලද්‍රව්‍ය සඳහා කාලය මත පදනම් වූ වෙනස් කිරීම් SMIL හි විස්තර කළ හැකිය, නැතහොත් ස්ක්‍රිප්ටින් භාෂාවකින් වැඩසටහන්ගත කළ හැක (උදා: JavaScript). W3C SVG හි සජීවිකරණය සඳහා ප්‍රමිතිය ලෙස SMIL පැහැදිලිවම නිර්දේශ කරයි.

"onmouseover" සහ "onclick" වැනි සිදුවීම් හසුරුවන්නන්ගේ පොහොසත් කට්ටලයක් ක්‍රියා සහ සිදුවීම් යෙදීම සඳහා ඕනෑම SVG චිත්‍රක වස්තුවකට පැවරිය හැක.

 ජංගම පැතිකඩ 
කර්මාන්තයේ ඉල්ලුම නිසා, SVG 1.1 සමඟ ජංගම පැතිකඩ දෙකක් හඳුන්වා දෙන ලදී: SVG Tiny (SVGT) සහ SVG Basic (SVGB).

මේවා සම්පූර්ණ SVG ප්‍රමිතියේ උප කුලක වේ, ප්‍රධාන වශයෙන් සීමිත හැකියාවන් සහිත පරිශීලක නියෝජිතයන් සඳහා අදහස් කෙරේ. විශේෂයෙන්ම, SVG Tiny ජංගම දුරකථන වැනි ඉතා සීමා සහිත ජංගම උපාංග සඳහා අර්ථ දක්වා ඇත; එය හැඩගැන්වීම් හෝ ස්ක්‍රිප්ටින් සඳහා සහය නොදක්වයි. SVG Basic යනු ස්මාර්ට්ෆෝන් වැනි ඉහළ මට්ටමේ ජංගම උපාංග සඳහා අර්ථ දක්වා ඇත.

2003 දී, ජාත්‍යන්තර විදුලි සංදේශ ප්‍රමිති සමූහයක් වන 3GPP, මීළඟ පරම්පරාවේ දුරකථන සඳහා අනිවාර්ය දෛශික ග්‍රැෆික් මාධ්‍ය ආකෘතිය ලෙස SVG Tiny අනුගමනය කළේය. SVGT යනු අවශ්‍ය දෛශික ග්‍රැෆික් ආකෘතිය වන අතර SVGB හි සහාය බහුමාධ්‍ය පණිවුඩකරණ සේවාව (MMS) සහ පැකට් මාරු කළ ප්‍රවාහ සේවාව සඳහා විකල්ප වේ. එය පසුව වි. 3GPP IP බහුමාධ්‍ය උපපද්ධතියේ (IMS) දෛශික ග්‍රැෆික්ස් සඳහා අවශ්‍ය ආකෘතිය ලෙස එකතු කරන ලදී. 

කිසිදු ජංගම පැතිකඩක සම්පූර්ණ ලේඛන වස්තු ආකෘතිය (DOM) සඳහා සහය ඇතුළත් නොවේ, නමුත් SVG Basic පමණක් ස්ක්‍රිප්ට් කිරීම සඳහා විකල්ප සහය දක්වයි, නමුත් ඒවා සම්පූර්ණ ප්‍රමිතියට සම්පූර්ණයෙන්ම අනුකූල උප කුලක වන බැවින්, බොහෝ SVG ග්‍රැෆික්ස් තවමත් විදැහුම් කළ හැක්කේ ඒවාට පමණක් සහාය දක්වන උපාංගවලට පමණි. ජංගම පැතිකඩ.

SVGT 1.2 microDOM (μDOM), හැඩගැන්වීම් සහ ස්ක්‍රිප්ටින් එකතු කරයි. ඔපෙරා, ෆයර්ෆොක්ස් සහ වෙබ්කිට් වැනි සමහර SVG 1.1 ක්‍රියාත්මක කිරීම් මගින් සහය දක්වන පරිමාණ නොවන පහරවල් ඇතුළුව SVG 1.1 හි දක්නට නොලැබෙන සමහර විශේෂාංග SVGT 1.2 ද ඇතුළත් වේ. ඩෙස්ක්ටොප් සහ ජංගම බ්‍රව්සර් අතර බෙදාගත් කේත පදනම් වැඩි වූ විට, SVGT 1.2ට වඩා SVG 1.1 භාවිතය ද වැඩි විය.

 සම්පීඩනය 
SVG රූප, XML වන අතර, බොහෝ පුනරාවර්තන පෙළ කොටස් අඩංගු වේ, එබැවින් ඒවා පාඩු රහිත දත්ත සම්පීඩන ඇල්ගොරිතම සඳහා හොඳින් ගැලපේ. Gzip ඇල්ගොරිතම සමඟ SVG රූපයක් සම්පීඩනය කර ඇති විට, එය "SVGZ" රූපයක් ලෙස හඳුන්වනු ලබන අතර අනුරූප .svgz ගොනු නාම දිගුව භාවිතා කරයි. SVG 1.1 නරඹන්නන්ට අනුකූල වීම සම්පීඩිත පින්තූර පෙන්වනු ඇත.See  which states, "SVG implementations must correctly support gzip-encoded [] and deflate-encoded [] data streams, for any content type (including SVG, script files, images)." SVGZ ගොනුවක් සාමාන්‍යයෙන් මුල් ප්‍රමාණයෙන් සියයට 20 සිට 50 දක්වා වේ.  W3C අනුකූලතාව පරීක්ෂා කිරීමට SVGZ ගොනු සපයයි.For example, 

 ආරක්ෂාව 
HTML ලේඛනවලට සමාන ලේඛන ආකෘතියක් ලෙස, SVG හට ස්ක්‍රිප්ට් හෝ CSS සත්කාරකත්වය දැක්විය හැක. ප්‍රහාරකයෙකුට පැතිකඩ පින්තූරයක් වැනි වෙබ් අඩවියකට SVG ගොනුවක් උඩුගත කළ හැකි විට මෙය ගැටළුවක් වන අතර ගොනුව සාමාන්‍ය පින්තූරයක් ලෙස සලකන නමුත් අනිෂ්ට අන්තර්ගතයන් අඩංගු වේ. උදාහරණයක් ලෙස, SVG ගොනුවක් CSS පසුබිම් රූපයක් ලෙස හෝ යම් වෙබ් අඩවියක ලාංඡනයක් ලෙස හෝ සමහර පින්තූර ගැලරියක යොදවා තිබේ නම්, එම රූපය බ්‍රවුසරයක පූරණය වූ විට එය ස්ක්‍රිප්ට් එකක් හෝ වෙනත් අන්තර්ගතයක් සක්‍රිය කරයි. මෙය බ්‍රවුසරය අගුලු දැමිය හැක (The Billion laughs attack ), නමුත් HTML එන්නත් කිරීම සහ හරස් අඩවි ස්ක්‍රිප්ටින් ප්‍රහාර වලට ද හේතු විය හැක. එබැවින් SVG හුදෙක් රූප සඳහා භාවිතා කරන විට W3C විසින් යම් යම් අවශ්‍යතා නියම කරයි: SVG ආරක්ෂාව.

W3C පවසන්නේ Inline SVG (වෙබ් අඩවියක ස්වදේශිකව පූරණය කරන ලද SVG ගොනුවක්) ආරක්‍ෂක අවදානමක් ලෙස අඩුවෙන් සලකන බවයි, මන්ද අන්තර්ගතය විශාල ලේඛනයක කොටසක් වන අතර, එබැවින් ස්ක්‍රිප්ට් කිරීම සහ CSS අනපේක්ෂිත නොවනු ඇත.

 සම්බන්ධ වැඩ 
MPEG-4 කොටස 20 සම්මත - සැහැල්ලු යෙදුම් දර්ශන නිරූපණය (LASeR) සහ සරල එකතු කිරීමේ ආකෘතිය (SAF) SVG Tiny මත පදනම් වේ. එය MPEG ( ISO/IEC JTC 1 /SC29/WG11) විසින් වැඩි දියුණු කරන ලද අතර ISO/IEC 14496-20:2006 ලෙස ප්‍රකාශයට පත් කරන ලදී. ගතික යාවත්කාල කිරීම්, ද්විමය කේතනය, අති නවීන අකුරු නිරූපණය වැනි ජංගම සේවා සඳහා ප්‍රධාන විශේෂාංග සමඟින් MPEG-4 20 කොටසෙහි SVG හැකියාවන් වැඩි දියුණු කර ඇත. SVG හට MPEG-4 11 වන කොටසෙහි, විස්තීරණ MPEG-4 Textual (XMT) ආකෘතියේ - XML භාවිතා කරන MPEG-4 බහුමාධ්‍ය අන්තර්ගතයේ පාඨමය නිරූපණයකි.

 මූලාශ්‍ර 

 බාහිර සබැඳි 

  පිරිවිතර, ක්‍රියාත්මක කිරීම් ලැයිස්තුව
 W3C SVG primer SVG උනන්දුව සමූහයේ අනුග්‍රහය යටතේ W3C ප්‍රයිමර් (කෙටුම්පත).
 MDN - SVG: Scalable Vector Graphics